diff --git a/aws-cloudformation-schema/aws-accessanalyzer-analyzer.json b/aws-cloudformation-schema/aws-accessanalyzer-analyzer.json index 5a68fec174..46081a40f1 100644 --- a/aws-cloudformation-schema/aws-accessanalyzer-analyzer.json +++ b/aws-cloudformation-schema/aws-accessanalyzer-analyzer.json @@ -88,7 +88,7 @@ "type" : "object", "properties" : { "UnusedAccessAge" : { - "description" : "The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days.", + "description" : "The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days.", "type" : "integer", "minimum" : 1, "maximum" : 180 diff --git a/aws-cloudformation-schema/aws-appsync-graphqlapi.json b/aws-cloudformation-schema/aws-appsync-graphqlapi.json index 3f99039dbb..e786c42895 100644 --- a/aws-cloudformation-schema/aws-appsync-graphqlapi.json +++ b/aws-cloudformation-schema/aws-appsync-graphqlapi.json @@ -65,6 +65,9 @@ "$ref" : "#/definitions/Tag" } }, + "GraphQLEndpointArn" : { + "type" : "string" + }, "AuthenticationType" : { "type" : "string" }, @@ -189,5 +192,5 @@ }, "required" : [ "Name", "AuthenticationType" ], "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/ApiId", "/properties/Id", "/properties/GraphQLDns", "/properties/GraphQLUrl", "/properties/RealtimeDns", "/properties/RealtimeUrl", "/properties/Arn" ] + "readOnlyProperties" : [ "/properties/ApiId", "/properties/GraphQLEndpointArn", "/properties/Id", "/properties/GraphQLDns", "/properties/GraphQLUrl", "/properties/RealtimeDns", "/properties/RealtimeUrl", "/properties/Arn" ] } \ 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 12b4826184..9b51078b03 100644 --- a/aws-cloudformation-schema/aws-autoscaling-autoscalinggroup.json +++ b/aws-cloudformation-schema/aws-autoscaling-autoscalinggroup.json @@ -21,11 +21,11 @@ "permissions" : [ "autoscaling:*", "managed-fleets:GetAutoScalingGroup" ] }, "create" : { - "permissions" : [ "autoscaling:*", "cloudwatch:PutMetricAlarm", "ec2:DescribeAccountAttributes", "ec2:DescribeAvailabilityZones", "ec2:DescribeImages", "ec2:DescribeInstanceAttribute", "ec2:DescribeInstances", "ec2:DescribeInstanceTypes", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeKeyPairs", "ec2:DescribeLaunchTemplateVersions", "ec2:DescribePlacementGroups", "ec2:DescribeSecurityGroups", "ec2:DescribeSpotInstanceRequests", "ec2:DescribeSubnets", "ec2:DescribeVpcClassicLink", "ec2:GetInstanceTypesFromInstanceRequirements", "ec2:RunInstances", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetGroups", "iam:CreateServiceLinkedRole", "iam:PassRole", "managed-fleets:GetAutoScalingGroup", "managed-fleets:CreateAutoScalingGroup", "ssm:GetParameters" ], + "permissions" : [ "autoscaling:*", "cloudwatch:PutMetricAlarm", "ec2:Describe*", "ec2:GetInstanceTypesFromInstanceRequirements", "ec2:RunInstances", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetGroups", "iam:CreateServiceLinkedRole", "iam:PassRole", "managed-fleets:GetAutoScalingGroup", "managed-fleets:CreateAutoScalingGroup", "ssm:GetParameters" ], "timeoutInMinutes" : 120 }, "update" : { - "permissions" : [ "autoscaling:*", "cloudwatch:PutMetricAlarm", "ec2:DescribeAccountAttributes", "ec2:DescribeAvailabilityZones", "ec2:DescribeImages", "ec2:DescribeInstanceAttribute", "ec2:DescribeInstances", "ec2:DescribeInstanceTypes", "ec2:DescribeInstanceTypeOfferings", "ec2:DescribeKeyPairs", "ec2:DescribeLaunchTemplateVersions", "ec2:DescribePlacementGroups", "ec2:DescribeSecurityGroups", "ec2:DescribeSpotInstanceRequests", "ec2:DescribeSubnets", "ec2:DescribeVpcClassicLink", "ec2:GetInstanceTypesFromInstanceRequirements", "ec2:RunInstances", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetGroups", "iam:CreateServiceLinkedRole", "iam:PassRole", "managed-fleets:GetAutoScalingGroup", "managed-fleets:RegisterAutoScalingGroup", "managed-fleets:DeregisterAutoScalingGroup", "managed-fleets:UpdateAutoScalingGroup", "ssm:GetParameters" ], + "permissions" : [ "autoscaling:*", "cloudwatch:PutMetricAlarm", "ec2:Describe*", "ec2:GetInstanceTypesFromInstanceRequirements", "ec2:RunInstances", "elasticloadbalancing:DescribeLoadBalancers", "elasticloadbalancing:DescribeTargetGroups", "iam:CreateServiceLinkedRole", "iam:PassRole", "managed-fleets:GetAutoScalingGroup", "managed-fleets:RegisterAutoScalingGroup", "managed-fleets:DeregisterAutoScalingGroup", "managed-fleets:UpdateAutoScalingGroup", "ssm:GetParameters" ], "timeoutInMinutes" : 480 }, "list" : { @@ -448,7 +448,8 @@ "TotalLocalStorageGB" : { "$ref" : "#/definitions/TotalLocalStorageGBRequest" } - } + }, + "required" : [ "MemoryMiB", "VCpuCount" ] } }, "properties" : { diff --git a/aws-cloudformation-schema/aws-b2bi-capability.json b/aws-cloudformation-schema/aws-b2bi-capability.json new file mode 100644 index 0000000000..0206f42c21 --- /dev/null +++ b/aws-cloudformation-schema/aws-b2bi-capability.json @@ -0,0 +1,188 @@ +{ + "typeName" : "AWS::B2BI::Capability", + "description" : "Definition of AWS::B2BI::Capability Resource Type", + "definitions" : { + "CapabilityConfiguration" : { + "oneOf" : [ { + "type" : "object", + "title" : "Edi", + "properties" : { + "Edi" : { + "$ref" : "#/definitions/EdiConfiguration" + } + }, + "required" : [ "Edi" ], + "additionalProperties" : false + } ] + }, + "CapabilityType" : { + "type" : "string", + "enum" : [ "edi" ] + }, + "EdiConfiguration" : { + "type" : "object", + "properties" : { + "Type" : { + "$ref" : "#/definitions/EdiType" + }, + "InputLocation" : { + "$ref" : "#/definitions/S3Location" + }, + "OutputLocation" : { + "$ref" : "#/definitions/S3Location" + }, + "TransformerId" : { + "type" : "string", + "maxLength" : 64, + "minLength" : 1, + "pattern" : "^[a-zA-Z0-9_-]+$" + } + }, + "required" : [ "InputLocation", "OutputLocation", "TransformerId", "Type" ], + "additionalProperties" : false + }, + "EdiType" : { + "oneOf" : [ { + "type" : "object", + "title" : "X12Details", + "properties" : { + "X12Details" : { + "$ref" : "#/definitions/X12Details" + } + }, + "required" : [ "X12Details" ], + "additionalProperties" : false + } ] + }, + "S3Location" : { + "type" : "object", + "properties" : { + "BucketName" : { + "type" : "string", + "maxLength" : 63, + "minLength" : 3 + }, + "Key" : { + "type" : "string", + "maxLength" : 1024, + "minLength" : 0 + } + }, + "additionalProperties" : false + }, + "Tag" : { + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "maxLength" : 128, + "minLength" : 1 + }, + "Value" : { + "type" : "string", + "maxLength" : 256, + "minLength" : 0 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + }, + "X12Details" : { + "type" : "object", + "properties" : { + "TransactionSet" : { + "$ref" : "#/definitions/X12TransactionSet" + }, + "Version" : { + "$ref" : "#/definitions/X12Version" + } + }, + "additionalProperties" : false + }, + "X12TransactionSet" : { + "type" : "string", + "enum" : [ "X12_110", "X12_180", "X12_204", "X12_210", "X12_214", "X12_215", "X12_310", "X12_315", "X12_322", "X12_404", "X12_410", "X12_820", "X12_824", "X12_830", "X12_846", "X12_850", "X12_852", "X12_855", "X12_856", "X12_860", "X12_861", "X12_864", "X12_940", "X12_990", "X12_997" ] + }, + "X12Version" : { + "type" : "string", + "enum" : [ "VERSION_4010", "VERSION_4030", "VERSION_5010" ] + } + }, + "properties" : { + "CapabilityArn" : { + "type" : "string", + "maxLength" : 255, + "minLength" : 1 + }, + "CapabilityId" : { + "type" : "string", + "maxLength" : 64, + "minLength" : 1, + "pattern" : "^[a-zA-Z0-9_-]+$" + }, + "Configuration" : { + "$ref" : "#/definitions/CapabilityConfiguration" + }, + "CreatedAt" : { + "type" : "string", + "format" : "date-time" + }, + "InstructionsDocuments" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/S3Location" + }, + "maxItems" : 5, + "minItems" : 0 + }, + "ModifiedAt" : { + "type" : "string", + "format" : "date-time" + }, + "Name" : { + "type" : "string", + "maxLength" : 254, + "minLength" : 1 + }, + "Tags" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Tag" + }, + "maxItems" : 200, + "minItems" : 0 + }, + "Type" : { + "$ref" : "#/definitions/CapabilityType" + } + }, + "required" : [ "Configuration", "Name", "Type" ], + "readOnlyProperties" : [ "/properties/CapabilityArn", "/properties/CapabilityId", "/properties/CreatedAt", "/properties/ModifiedAt" ], + "createOnlyProperties" : [ "/properties/Type" ], + "primaryIdentifier" : [ "/properties/CapabilityId" ], + "handlers" : { + "create" : { + "permissions" : [ "b2bi:CreateCapability", "b2bi:TagResource", "s3:GetObject", "s3:ListBucket", "events:DescribeRule", "events:PutRule", "events:PutTargets", "logs:CreateLogDelivery", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:DescribeResourcePolicies", "logs:ListLogDeliveries", "logs:PutLogEvents", "logs:PutResourcePolicy" ] + }, + "read" : { + "permissions" : [ "b2bi:GetCapability", "b2bi:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "b2bi:TagResource", "b2bi:UntagResource", "b2bi:UpdateCapability" ] + }, + "delete" : { + "permissions" : [ "b2bi:DeleteCapability" ] + }, + "list" : { + "permissions" : [ "b2bi:ListCapabilities" ] + } + }, + "tagging" : { + "cloudFormationSystemTags" : true, + "tagOnCreate" : true, + "tagProperty" : "/properties/Tags", + "tagUpdatable" : true, + "taggable" : true + }, + "additionalProperties" : false +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-b2bi-partnership.json b/aws-cloudformation-schema/aws-b2bi-partnership.json new file mode 100644 index 0000000000..2b207d032e --- /dev/null +++ b/aws-cloudformation-schema/aws-b2bi-partnership.json @@ -0,0 +1,119 @@ +{ + "typeName" : "AWS::B2BI::Partnership", + "description" : "Definition of AWS::B2BI::Partnership Resource Type", + "definitions" : { + "Tag" : { + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "maxLength" : 128, + "minLength" : 1 + }, + "Value" : { + "type" : "string", + "maxLength" : 256, + "minLength" : 0 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + } + }, + "properties" : { + "Capabilities" : { + "type" : "array", + "items" : { + "type" : "string", + "maxLength" : 64, + "minLength" : 1, + "pattern" : "^[a-zA-Z0-9_-]+$" + } + }, + "CreatedAt" : { + "type" : "string", + "format" : "date-time" + }, + "Email" : { + "type" : "string", + "maxLength" : 254, + "minLength" : 5, + "pattern" : "^[\\w\\.\\-]+@[\\w\\.\\-]+$" + }, + "ModifiedAt" : { + "type" : "string", + "format" : "date-time" + }, + "Name" : { + "type" : "string", + "maxLength" : 254, + "minLength" : 1 + }, + "PartnershipArn" : { + "type" : "string", + "maxLength" : 255, + "minLength" : 1 + }, + "PartnershipId" : { + "type" : "string", + "maxLength" : 64, + "minLength" : 1, + "pattern" : "^[a-zA-Z0-9_-]+$" + }, + "Phone" : { + "type" : "string", + "maxLength" : 22, + "minLength" : 7, + "pattern" : "^\\+?([0-9 \\t\\-()\\/]{7,})(?:\\s*(?:#|x\\.?|ext\\.?|extension) \\t*(\\d+))?$" + }, + "ProfileId" : { + "type" : "string", + "maxLength" : 64, + "minLength" : 1, + "pattern" : "^[a-zA-Z0-9_-]+$" + }, + "Tags" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Tag" + }, + "maxItems" : 200, + "minItems" : 0 + }, + "TradingPartnerId" : { + "type" : "string", + "maxLength" : 64, + "minLength" : 1, + "pattern" : "^[a-zA-Z0-9_-]+$" + } + }, + "required" : [ "Email", "Name", "ProfileId" ], + "readOnlyProperties" : [ "/properties/CreatedAt", "/properties/ModifiedAt", "/properties/PartnershipArn", "/properties/PartnershipId", "/properties/TradingPartnerId" ], + "createOnlyProperties" : [ "/properties/Email", "/properties/Phone", "/properties/ProfileId" ], + "primaryIdentifier" : [ "/properties/PartnershipId" ], + "handlers" : { + "create" : { + "permissions" : [ "b2bi:CreatePartnership", "b2bi:TagResource", "s3:PutObject" ] + }, + "read" : { + "permissions" : [ "b2bi:GetPartnership", "b2bi:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "b2bi:TagResource", "b2bi:UntagResource", "b2bi:UpdatePartnership" ] + }, + "delete" : { + "permissions" : [ "b2bi:DeletePartnership" ] + }, + "list" : { + "permissions" : [ "b2bi:ListPartnerships" ] + } + }, + "tagging" : { + "cloudFormationSystemTags" : true, + "tagOnCreate" : true, + "tagProperty" : "/properties/Tags", + "tagUpdatable" : true, + "taggable" : true + }, + "additionalProperties" : false +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-b2bi-profile.json b/aws-cloudformation-schema/aws-b2bi-profile.json new file mode 100644 index 0000000000..9b85c92ff0 --- /dev/null +++ b/aws-cloudformation-schema/aws-b2bi-profile.json @@ -0,0 +1,115 @@ +{ + "typeName" : "AWS::B2BI::Profile", + "description" : "Definition of AWS::B2BI::Profile Resource Type", + "definitions" : { + "Logging" : { + "type" : "string", + "enum" : [ "ENABLED", "DISABLED" ] + }, + "Tag" : { + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "maxLength" : 128, + "minLength" : 1 + }, + "Value" : { + "type" : "string", + "maxLength" : 256, + "minLength" : 0 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + } + }, + "properties" : { + "BusinessName" : { + "type" : "string", + "maxLength" : 254, + "minLength" : 1 + }, + "CreatedAt" : { + "type" : "string", + "format" : "date-time" + }, + "Email" : { + "type" : "string", + "maxLength" : 254, + "minLength" : 5, + "pattern" : "^[\\w\\.\\-]+@[\\w\\.\\-]+$" + }, + "LogGroupName" : { + "type" : "string", + "maxLength" : 512, + "minLength" : 1 + }, + "Logging" : { + "$ref" : "#/definitions/Logging" + }, + "ModifiedAt" : { + "type" : "string", + "format" : "date-time" + }, + "Name" : { + "type" : "string", + "maxLength" : 254, + "minLength" : 1 + }, + "Phone" : { + "type" : "string", + "maxLength" : 22, + "minLength" : 7, + "pattern" : "^\\+?([0-9 \\t\\-()\\/]{7,})(?:\\s*(?:#|x\\.?|ext\\.?|extension) \\t*(\\d+))?$" + }, + "ProfileArn" : { + "type" : "string", + "maxLength" : 255, + "minLength" : 1 + }, + "ProfileId" : { + "type" : "string", + "maxLength" : 64, + "minLength" : 1, + "pattern" : "^[a-zA-Z0-9_-]+$" + }, + "Tags" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Tag" + }, + "maxItems" : 200, + "minItems" : 0 + } + }, + "required" : [ "BusinessName", "Logging", "Name", "Phone" ], + "readOnlyProperties" : [ "/properties/CreatedAt", "/properties/LogGroupName", "/properties/ModifiedAt", "/properties/ProfileArn", "/properties/ProfileId" ], + "createOnlyProperties" : [ "/properties/Logging" ], + "primaryIdentifier" : [ "/properties/ProfileId" ], + "handlers" : { + "create" : { + "permissions" : [ "b2bi:CreateProfile", "b2bi:TagResource", "logs:CreateLogDelivery", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:DescribeResourcePolicies", "logs:ListLogDeliveries", "logs:PutLogEvents", "logs:PutResourcePolicy" ] + }, + "read" : { + "permissions" : [ "b2bi:GetProfile", "b2bi:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "b2bi:TagResource", "b2bi:UntagResource", "b2bi:UpdateProfile" ] + }, + "delete" : { + "permissions" : [ "b2bi:DeleteProfile", "logs:DeleteLogDelivery", "logs:ListLogDeliveries" ] + }, + "list" : { + "permissions" : [ "b2bi:ListProfiles" ] + } + }, + "tagging" : { + "cloudFormationSystemTags" : true, + "tagOnCreate" : true, + "tagProperty" : "/properties/Tags", + "tagUpdatable" : true, + "taggable" : true + }, + "additionalProperties" : false +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-b2bi-transformer.json b/aws-cloudformation-schema/aws-b2bi-transformer.json new file mode 100644 index 0000000000..1b6f611808 --- /dev/null +++ b/aws-cloudformation-schema/aws-b2bi-transformer.json @@ -0,0 +1,145 @@ +{ + "typeName" : "AWS::B2BI::Transformer", + "description" : "Definition of AWS::B2BI::Transformer Resource Type", + "definitions" : { + "EdiType" : { + "oneOf" : [ { + "type" : "object", + "title" : "X12Details", + "properties" : { + "X12Details" : { + "$ref" : "#/definitions/X12Details" + } + }, + "required" : [ "X12Details" ], + "additionalProperties" : false + } ] + }, + "FileFormat" : { + "type" : "string", + "enum" : [ "XML", "JSON" ] + }, + "Tag" : { + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "maxLength" : 128, + "minLength" : 1 + }, + "Value" : { + "type" : "string", + "maxLength" : 256, + "minLength" : 0 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + }, + "TransformerStatus" : { + "type" : "string", + "enum" : [ "active", "inactive" ] + }, + "X12Details" : { + "type" : "object", + "properties" : { + "TransactionSet" : { + "$ref" : "#/definitions/X12TransactionSet" + }, + "Version" : { + "$ref" : "#/definitions/X12Version" + } + }, + "additionalProperties" : false + }, + "X12TransactionSet" : { + "type" : "string", + "enum" : [ "X12_110", "X12_180", "X12_204", "X12_210", "X12_214", "X12_215", "X12_310", "X12_315", "X12_322", "X12_404", "X12_410", "X12_820", "X12_824", "X12_830", "X12_846", "X12_850", "X12_852", "X12_855", "X12_856", "X12_860", "X12_861", "X12_864", "X12_940", "X12_990", "X12_997" ] + }, + "X12Version" : { + "type" : "string", + "enum" : [ "VERSION_4010", "VERSION_4030", "VERSION_5010" ] + } + }, + "properties" : { + "CreatedAt" : { + "type" : "string", + "format" : "date-time" + }, + "EdiType" : { + "$ref" : "#/definitions/EdiType" + }, + "FileFormat" : { + "$ref" : "#/definitions/FileFormat" + }, + "MappingTemplate" : { + "type" : "string", + "maxLength" : 350000, + "minLength" : 0 + }, + "ModifiedAt" : { + "type" : "string", + "format" : "date-time" + }, + "Name" : { + "type" : "string", + "maxLength" : 254, + "minLength" : 1 + }, + "SampleDocument" : { + "type" : "string", + "maxLength" : 1024, + "minLength" : 0 + }, + "Status" : { + "$ref" : "#/definitions/TransformerStatus" + }, + "Tags" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/Tag" + }, + "maxItems" : 200, + "minItems" : 0 + }, + "TransformerArn" : { + "type" : "string", + "maxLength" : 255, + "minLength" : 1 + }, + "TransformerId" : { + "type" : "string", + "maxLength" : 64, + "minLength" : 1, + "pattern" : "^[a-zA-Z0-9_-]+$" + } + }, + "required" : [ "EdiType", "FileFormat", "MappingTemplate", "Name", "Status" ], + "readOnlyProperties" : [ "/properties/CreatedAt", "/properties/TransformerArn", "/properties/TransformerId" ], + "primaryIdentifier" : [ "/properties/TransformerId" ], + "handlers" : { + "create" : { + "permissions" : [ "b2bi:CreateTransformer", "b2bi:TagResource", "logs:CreateLogDelivery", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogGroups", "logs:DescribeLogStreams", "logs:DescribeResourcePolicies", "logs:ListLogDeliveries", "logs:PutLogEvents", "logs:PutResourcePolicy" ] + }, + "read" : { + "permissions" : [ "b2bi:ListTagsForResource", "b2bi:GetTransformer" ] + }, + "update" : { + "permissions" : [ "b2bi:TagResource", "b2bi:UntagResource", "b2bi:UpdateTransformer" ] + }, + "delete" : { + "permissions" : [ "b2bi:DeleteTransformer", "logs:DeleteLogDelivery", "logs:ListLogDeliveries" ] + }, + "list" : { + "permissions" : [ "b2bi:ListTransformers" ] + } + }, + "tagging" : { + "cloudFormationSystemTags" : true, + "tagOnCreate" : true, + "tagProperty" : "/properties/Tags", + "tagUpdatable" : true, + "taggable" : true + }, + "additionalProperties" : false +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-batch-jobdefinition.json b/aws-cloudformation-schema/aws-batch-jobdefinition.json index cf7abb4599..0082b6f2b4 100644 --- a/aws-cloudformation-schema/aws-batch-jobdefinition.json +++ b/aws-cloudformation-schema/aws-batch-jobdefinition.json @@ -1,705 +1,781 @@ { "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" - }, - "Id" : { - "type" : "string" - }, - "RetryStrategy" : { - "$ref" : "#/definitions/RetryStrategy" - }, - "Tags" : { - "type" : "object" - } - }, + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", "definitions" : { - "NodeRangeProperty" : { + "ContainerProperties" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Container" : { - "$ref" : "#/definitions/ContainerProperties" + "Command" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : true, + "items" : { + "type" : "string" + } }, - "TargetNodes" : { - "type" : "string" - } - }, - "required" : [ "TargetNodes" ] - }, - "Metadata" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "Labels" : { - "type" : "object" - } - } - }, - "EksContainerEnvironmentVariable" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "Value" : { - "type" : "string" + "Environment" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/Environment" + } }, - "Name" : { - "type" : "string" - } - }, - "required" : [ "Name" ] - }, - "EfsVolumeConfiguration" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "FileSystemId" : { + "Image" : { "type" : "string" }, - "TransitEncryption" : { + "JobRoleArn" : { "type" : "string" }, - "RootDirectory" : { + "Memory" : { + "type" : "integer" + }, + "MountPoints" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/MountPoint" + } + }, + "Privileged" : { + "type" : "boolean" + }, + "ReadonlyRootFilesystem" : { + "type" : "boolean" + }, + "Ulimits" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Ulimit" + } + }, + "User" : { "type" : "string" }, - "TransitEncryptionPort" : { + "Vcpus" : { "type" : "integer" }, - "AuthorizationConfig" : { - "$ref" : "#/definitions/AuthorizationConfig" - } - }, - "required" : [ "FileSystemId" ] - }, - "EksEmptyDir" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "Medium" : { + "Volumes" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Volume" + } + }, + "InstanceType" : { "type" : "string" }, - "SizeLimit" : { + "ResourceRequirements" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/ResourceRequirement" + } + }, + "LinuxParameters" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Devices" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Device" + } + }, + "InitProcessEnabled" : { + "type" : "boolean" + }, + "MaxSwap" : { + "type" : "integer" + }, + "Swappiness" : { + "type" : "integer" + }, + "SharedMemorySize" : { + "type" : "integer" + }, + "Tmpfs" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Tmpfs" + } + } + } + }, + "LogConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "LogDriver" : { + "type" : "string" + }, + "Options" : { + "type" : "object", + "additionalProperties" : false, + "patternProperties" : { + ".*" : { + "type" : "string" + } + } + }, + "SecretOptions" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Secret" + } + } + }, + "required" : [ "LogDriver" ] + }, + "ExecutionRoleArn" : { "type" : "string" - } - } - }, - "LogConfiguration" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "SecretOptions" : { + }, + "Secrets" : { "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, "items" : { "$ref" : "#/definitions/Secret" } }, - "Options" : { - "type" : "object" + "NetworkConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "AssignPublicIp" : { + "type" : "string" + } + } }, - "LogDriver" : { - "type" : "string" + "FargatePlatformConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "PlatformVersion" : { + "type" : "string" + } + } + }, + "EphemeralStorage" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "SizeInGiB" : { + "type" : "integer" + } + }, + "required" : [ "SizeInGiB" ] + }, + "RuntimePlatform" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "OperatingSystemFamily" : { + "type" : "string" + }, + "CpuArchitecture" : { + "type" : "string" + } + } } }, - "required" : [ "LogDriver" ] - }, - "VolumesHost" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "SourcePath" : { - "type" : "string" - } - } + "required" : [ "Image" ] }, - "RuntimePlatform" : { + "Environment" : { "type" : "object", "additionalProperties" : false, "properties" : { - "OperatingSystemFamily" : { + "Name" : { "type" : "string" }, - "CpuArchitecture" : { + "Value" : { "type" : "string" } } }, - "Volumes" : { + "MountPoint" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Host" : { - "$ref" : "#/definitions/VolumesHost" + "ContainerPath" : { + "type" : "string" }, - "EfsVolumeConfiguration" : { - "$ref" : "#/definitions/EfsVolumeConfiguration" + "ReadOnly" : { + "type" : "boolean" }, - "Name" : { + "SourceVolume" : { "type" : "string" } } }, - "NodeProperties" : { + "Ulimit" : { "type" : "object", "additionalProperties" : false, "properties" : { - "MainNode" : { + "HardLimit" : { "type" : "integer" }, - "NodeRangeProperties" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/NodeRangeProperty" - } + "Name" : { + "type" : "string" }, - "NumNodes" : { + "SoftLimit" : { "type" : "integer" } }, - "required" : [ "MainNode", "NodeRangeProperties", "NumNodes" ] + "required" : [ "HardLimit", "Name", "SoftLimit" ] }, - "PodProperties" : { + "Volume" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Volumes" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EksVolume" - } - }, - "DnsPolicy" : { - "type" : "string" - }, - "Containers" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EksContainer" - } + "Host" : { + "$ref" : "#/definitions/Host" }, - "Metadata" : { - "$ref" : "#/definitions/Metadata" + "EfsVolumeConfiguration" : { + "$ref" : "#/definitions/EFSVolumeConfiguration" }, - "ServiceAccountName" : { + "Name" : { "type" : "string" - }, - "HostNetwork" : { - "type" : "boolean" } } }, - "Tmpfs" : { + "Host" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ContainerPath" : { + "SourcePath" : { "type" : "string" - }, - "MountOptions" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "Size" : { - "type" : "integer" } - }, - "required" : [ "Size", "ContainerPath" ] + } }, - "ContainerProperties" : { + "EFSVolumeConfiguration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "User" : { - "type" : "string" - }, - "Secrets" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/Secret" - } - }, - "Memory" : { - "type" : "integer" - }, - "Privileged" : { - "type" : "boolean" - }, - "LinuxParameters" : { - "$ref" : "#/definitions/LinuxParameters" - }, - "FargatePlatformConfiguration" : { - "$ref" : "#/definitions/FargatePlatformConfiguration" - }, - "JobRoleArn" : { + "FileSystemId" : { "type" : "string" }, - "ReadonlyRootFilesystem" : { - "type" : "boolean" - }, - "Vcpus" : { - "type" : "integer" - }, - "Image" : { + "RootDirectory" : { "type" : "string" }, - "ResourceRequirements" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/ResourceRequirement" - } - }, - "LogConfiguration" : { - "$ref" : "#/definitions/LogConfiguration" - }, - "MountPoints" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/MountPoints" - } - }, - "ExecutionRoleArn" : { + "TransitEncryption" : { "type" : "string" }, - "RuntimePlatform" : { - "$ref" : "#/definitions/RuntimePlatform" - }, - "Volumes" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/Volumes" - } - }, - "Command" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "Environment" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/Environment" - } - }, - "Ulimits" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/Ulimit" - } - }, - "NetworkConfiguration" : { - "$ref" : "#/definitions/NetworkConfiguration" - }, - "InstanceType" : { - "type" : "string" + "TransitEncryptionPort" : { + "type" : "integer" }, - "EphemeralStorage" : { - "$ref" : "#/definitions/EphemeralStorage" + "AuthorizationConfig" : { + "$ref" : "#/definitions/EFSAuthorizationConfig" } }, - "required" : [ "Image" ] + "required" : [ "FileSystemId" ] }, - "AuthorizationConfig" : { + "EFSAuthorizationConfig" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Iam" : { + "AccessPointId" : { "type" : "string" }, - "AccessPointId" : { + "Iam" : { "type" : "string" } } }, - "EksContainerResourceRequirements" : { + "ResourceRequirement" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Requests" : { - "type" : "object" + "Type" : { + "type" : "string" }, - "Limits" : { - "type" : "object" - } - } - }, - "NetworkConfiguration" : { - "type" : "object", - "additionalProperties" : false, - "properties" : { - "AssignPublicIp" : { + "Value" : { "type" : "string" } } }, - "EksContainerSecurityContext" : { + "Device" : { "type" : "object", "additionalProperties" : false, "properties" : { - "RunAsUser" : { - "type" : "integer" - }, - "RunAsGroup" : { - "type" : "integer" - }, - "RunAsNonRoot" : { - "type" : "boolean" + "HostPath" : { + "type" : "string" }, - "Privileged" : { - "type" : "boolean" + "ContainerPath" : { + "type" : "string" }, - "ReadOnlyRootFilesystem" : { - "type" : "boolean" + "Permissions" : { + "type" : "array", + "insertionOrder" : false, + "uniqueItems" : false, + "items" : { + "type" : "string" + } } } }, - "EksSecret" : { + "Tmpfs" : { "type" : "object", "additionalProperties" : false, "properties" : { - "SecretName" : { + "ContainerPath" : { "type" : "string" }, - "Optional" : { - "type" : "boolean" + "Size" : { + "type" : "integer" + }, + "MountOptions" : { + "type" : "array", + "insertionOrder" : false, + "uniqueItems" : false, + "items" : { + "type" : "string" + } } }, - "required" : [ "SecretName" ] + "required" : [ "ContainerPath", "Size" ] }, - "EvaluateOnExit" : { + "Secret" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Action" : { - "type" : "string" - }, - "OnStatusReason" : { - "type" : "string" - }, - "OnExitCode" : { + "Name" : { "type" : "string" }, - "OnReason" : { + "ValueFrom" : { "type" : "string" } }, - "required" : [ "Action" ] + "required" : [ "Name", "ValueFrom" ] }, - "Timeout" : { + "EksProperties" : { "type" : "object", "additionalProperties" : false, "properties" : { - "AttemptDurationSeconds" : { - "type" : "integer" + "PodProperties" : { + "$ref" : "#/definitions/EksPodProperties" } } }, - "Device" : { + "EksPodProperties" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Permissions" : { + "ServiceAccountName" : { + "type" : "string" + }, + "HostNetwork" : { + "type" : "boolean" + }, + "DnsPolicy" : { + "type" : "string" + }, + "Containers" : { "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, "items" : { - "type" : "string" + "$ref" : "#/definitions/EksContainer" } }, - "HostPath" : { - "type" : "string" + "Volumes" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/EksVolume" + } }, - "ContainerPath" : { - "type" : "string" + "Metadata" : { + "$ref" : "#/definitions/EksMetadata" } } }, - "LinuxParameters" : { + "EksContainer" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Swappiness" : { - "type" : "integer" + "Name" : { + "type" : "string" + }, + "Image" : { + "type" : "string" + }, + "ImagePullPolicy" : { + "type" : "string" }, - "Tmpfs" : { + "Command" : { "type" : "array", + "insertionOrder" : true, "uniqueItems" : false, "items" : { - "$ref" : "#/definitions/Tmpfs" + "type" : "string" } }, - "SharedMemorySize" : { - "type" : "integer" + "Args" : { + "type" : "array", + "insertionOrder" : true, + "uniqueItems" : false, + "items" : { + "type" : "string" + } }, - "Devices" : { + "Env" : { "type" : "array", "uniqueItems" : false, + "insertionOrder" : false, "items" : { - "$ref" : "#/definitions/Device" + "$ref" : "#/definitions/EksContainerEnvironmentVariable" } }, - "InitProcessEnabled" : { - "type" : "boolean" + "Resources" : { + "$ref" : "#/definitions/EksContainerResourceRequirements" + }, + "VolumeMounts" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/EksContainerVolumeMount" + } + }, + "SecurityContext" : { + "$ref" : "#/definitions/EksContainerSecurityContext" + } + }, + "required" : [ "Image" ] + }, + "EksContainerEnvironmentVariable" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Name" : { + "type" : "string" }, - "MaxSwap" : { - "type" : "integer" + "Value" : { + "type" : "string" } - } + }, + "required" : [ "Name" ] }, - "FargatePlatformConfiguration" : { + "EksContainerResourceRequirements" : { "type" : "object", "additionalProperties" : false, "properties" : { - "PlatformVersion" : { - "type" : "string" + "Limits" : { + "type" : "object", + "additionalProperties" : false, + "patternProperties" : { + ".*" : { + "type" : "string" + } + } + }, + "Requests" : { + "type" : "object", + "additionalProperties" : false, + "patternProperties" : { + ".*" : { + "type" : "string" + } + } } } }, - "Ulimit" : { + "EksContainerSecurityContext" : { "type" : "object", "additionalProperties" : false, "properties" : { - "SoftLimit" : { + "RunAsUser" : { "type" : "integer" }, - "HardLimit" : { + "RunAsGroup" : { "type" : "integer" }, - "Name" : { - "type" : "string" + "Privileged" : { + "type" : "boolean" + }, + "ReadOnlyRootFilesystem" : { + "type" : "boolean" + }, + "RunAsNonRoot" : { + "type" : "boolean" } - }, - "required" : [ "SoftLimit", "HardLimit", "Name" ] + } }, "EksVolume" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Secret" : { - "$ref" : "#/definitions/EksSecret" - }, - "EmptyDir" : { - "$ref" : "#/definitions/EksEmptyDir" + "Name" : { + "type" : "string" }, "HostPath" : { "$ref" : "#/definitions/EksHostPath" }, - "Name" : { - "type" : "string" + "EmptyDir" : { + "$ref" : "#/definitions/EksEmptyDir" + }, + "Secret" : { + "$ref" : "#/definitions/EksSecret" } }, "required" : [ "Name" ] }, - "EksContainerVolumeMount" : { + "EksHostPath" : { "type" : "object", "additionalProperties" : false, "properties" : { - "MountPath" : { - "type" : "string" - }, - "ReadOnly" : { - "type" : "boolean" - }, - "Name" : { + "Path" : { "type" : "string" } } }, - "EksProperties" : { + "EksEmptyDir" : { "type" : "object", "additionalProperties" : false, "properties" : { - "PodProperties" : { - "$ref" : "#/definitions/PodProperties" + "Medium" : { + "type" : "string" + }, + "SizeLimit" : { + "type" : "string" } } }, - "Secret" : { + "EksSecret" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ValueFrom" : { + "SecretName" : { "type" : "string" }, - "Name" : { - "type" : "string" + "Optional" : { + "type" : "boolean" } }, - "required" : [ "ValueFrom", "Name" ] + "required" : [ "SecretName" ] }, - "MountPoints" : { + "EksContainerVolumeMount" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ReadOnly" : { - "type" : "boolean" - }, - "SourceVolume" : { + "Name" : { "type" : "string" }, - "ContainerPath" : { + "MountPath" : { "type" : "string" + }, + "ReadOnly" : { + "type" : "boolean" } } }, - "EksHostPath" : { + "EksMetadata" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Path" : { - "type" : "string" + "Labels" : { + "type" : "object", + "additionalProperties" : false, + "patternProperties" : { + ".*" : { + "type" : "string" + } + } } } }, - "Environment" : { + "RetryStrategy" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Value" : { - "type" : "string" + "Attempts" : { + "type" : "integer" }, - "Name" : { - "type" : "string" + "EvaluateOnExit" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/EvaluateOnExit" + } } } }, - "ResourceRequirement" : { + "EvaluateOnExit" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Value" : { + "OnExitCode" : { "type" : "string" }, - "Type" : { + "OnStatusReason" : { + "type" : "string" + }, + "OnReason" : { + "type" : "string" + }, + "Action" : { "type" : "string" } - } + }, + "required" : [ "Action" ] }, - "EphemeralStorage" : { + "NodeProperties" : { "type" : "object", "additionalProperties" : false, "properties" : { - "SizeInGiB" : { + "NumNodes" : { "type" : "integer" + }, + "MainNode" : { + "type" : "integer" + }, + "NodeRangeProperties" : { + "type" : "array", + "uniqueItems" : false, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/NodeRangeProperty" + } } }, - "required" : [ "SizeInGiB" ] + "required" : [ "NumNodes", "MainNode", "NodeRangeProperties" ] }, - "RetryStrategy" : { + "NodeRangeProperty" : { "type" : "object", "additionalProperties" : false, "properties" : { - "EvaluateOnExit" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EvaluateOnExit" - } + "TargetNodes" : { + "type" : "string" }, - "Attempts" : { + "Container" : { + "$ref" : "#/definitions/ContainerProperties" + } + }, + "required" : [ "TargetNodes" ] + }, + "JobTimeout" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "AttemptDurationSeconds" : { "type" : "integer" } } + } + }, + "properties" : { + "ContainerProperties" : { + "$ref" : "#/definitions/ContainerProperties" }, - "EksContainer" : { + "ContainerOrchestrationType" : { + "type" : "string" + }, + "NodeProperties" : { + "$ref" : "#/definitions/NodeProperties" + }, + "JobDefinitionName" : { + "type" : "string", + "maxLength" : 128 + }, + "JobDefinitionArn" : { + "type" : "string" + }, + "Revision" : { + "type" : "integer" + }, + "Status" : { + "type" : "string" + }, + "SchedulingPriority" : { + "type" : "integer" + }, + "Parameters" : { "type" : "object", "additionalProperties" : false, - "properties" : { - "Args" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "VolumeMounts" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EksContainerVolumeMount" - } - }, - "ImagePullPolicy" : { - "type" : "string" - }, - "Command" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "type" : "string" - } - }, - "SecurityContext" : { - "$ref" : "#/definitions/EksContainerSecurityContext" - }, - "Resources" : { - "$ref" : "#/definitions/EksContainerResourceRequirements" - }, - "Image" : { + "patternProperties" : { + ".*" : { "type" : "string" - }, - "Env" : { - "type" : "array", - "uniqueItems" : false, - "items" : { - "$ref" : "#/definitions/EksContainerEnvironmentVariable" - } - }, - "Name" : { + } + } + }, + "PlatformCapabilities" : { + "type" : "array", + "insertionOrder" : true, + "uniqueItems" : false, + "items" : { + "type" : "string" + } + }, + "PropagateTags" : { + "type" : "boolean" + }, + "RetryStrategy" : { + "$ref" : "#/definitions/RetryStrategy" + }, + "Timeout" : { + "$ref" : "#/definitions/JobTimeout" + }, + "Type" : { + "type" : "string" + }, + "Tags" : { + "type" : "object", + "additionalProperties" : false, + "description" : "A key-value pair to associate with a resource.", + "patternProperties" : { + ".*" : { "type" : "string" } - }, - "required" : [ "Image" ] + } + }, + "EksProperties" : { + "$ref" : "#/definitions/EksProperties" } }, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : false, + "tagProperty" : "/properties/Tags" + }, + "additionalProperties" : false, "required" : [ "Type" ], - "createOnlyProperties" : [ "/properties/Tags", "/properties/JobDefinitionName" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id" ] + "createOnlyProperties" : [ "/properties/JobDefinitionName", "/properties/ContainerProperties", "/properties/EksProperties", "/properties/NodeProperties", "/properties/Parameters", "/properties/PlatformCapabilities", "/properties/PropagateTags", "/properties/RetryStrategy", "/properties/SchedulingPriority", "/properties/Timeout", "/properties/Type" ], + "writeOnlyProperties" : [ "/properties/ContainerProperties/InstanceType", "/properties/NodeProperties/NodeRangeProperties/*/Container/FargatePlatformConfiguration/PlatformVersion", "/properties/NodeProperties/NodeRangeProperties/*/Container/NetworkConfiguration/AssignPublicIp" ], + "readOnlyProperties" : [ "/properties/ContainerOrchestrationType", "/properties/JobDefinitionArn", "/properties/Revision", "/properties/Status" ], + "primaryIdentifier" : [ "/properties/JobDefinitionArn" ], + "handlers" : { + "create" : { + "permissions" : [ "Batch:RegisterJobDefinition", "Batch:TagResource", "Batch:DescribeJobDefinitions", "Iam:PassRole" ] + }, + "read" : { + "permissions" : [ "Batch:DescribeJobDefinitions" ] + }, + "update" : { + "permissions" : [ "Batch:DescribeJobDefinitions", "Batch:TagResource", "Batch:UntagResource", "Iam:PassRole" ] + }, + "delete" : { + "permissions" : [ "Batch:DescribeJobDefinitions", "Batch:DeregisterJobDefinition", "Iam:PassRole" ] + }, + "list" : { + "permissions" : [ "Batch:DescribeJobDefinitions" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-billingconductor-customlineitem.json b/aws-cloudformation-schema/aws-billingconductor-customlineitem.json index 646877255c..b4c8bffdef 100644 --- a/aws-cloudformation-schema/aws-billingconductor-customlineitem.json +++ b/aws-cloudformation-schema/aws-billingconductor-customlineitem.json @@ -180,6 +180,11 @@ "type" : "string", "enum" : [ "USD", "CNY" ] }, + "AccountId" : { + "type" : "string", + "description" : "The account which this custom line item will be charged to", + "pattern" : "[0-9]{12}" + }, "Tags" : { "type" : "array", "uniqueItems" : true, @@ -199,7 +204,7 @@ }, "required" : [ "Name", "BillingGroupArn" ], "readOnlyProperties" : [ "/properties/Arn", "/properties/CreationTime", "/properties/LastModifiedTime", "/properties/AssociationSize", "/properties/CurrencyCode", "/properties/ProductCode" ], - "createOnlyProperties" : [ "/properties/BillingGroupArn", "/properties/BillingPeriodRange/InclusiveStartBillingPeriod", "/properties/BillingPeriodRange/ExclusiveEndBillingPeriod", "/properties/CustomLineItemChargeDetails/Type" ], + "createOnlyProperties" : [ "/properties/BillingGroupArn", "/properties/AccountId", "/properties/BillingPeriodRange/InclusiveStartBillingPeriod", "/properties/BillingPeriodRange/ExclusiveEndBillingPeriod", "/properties/CustomLineItemChargeDetails/Type" ], "primaryIdentifier" : [ "/properties/Arn" ], "handlers" : { "create" : { diff --git a/aws-cloudformation-schema/aws-cleanrooms-collaboration.json b/aws-cloudformation-schema/aws-cleanrooms-collaboration.json index f5d34ffc2c..0257ce171e 100644 --- a/aws-cloudformation-schema/aws-cleanrooms-collaboration.json +++ b/aws-cloudformation-schema/aws-cleanrooms-collaboration.json @@ -52,6 +52,9 @@ }, "DisplayName" : { "$ref" : "#/definitions/Name" + }, + "PaymentConfiguration" : { + "$ref" : "#/definitions/PaymentConfiguration" } }, "required" : [ "AccountId", "DisplayName", "MemberAbilities" ], @@ -83,6 +86,26 @@ "maxLength" : 100, "minLength" : 1, "pattern" : "^(?!\\s*$)[\\u0020-\\uD7FF\\uE000-\\uFFFD\\uD800\\uDBFF-\\uDC00\\uDFFF\\t]*$" + }, + "PaymentConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "QueryCompute" : { + "$ref" : "#/definitions/QueryComputePaymentConfig" + } + }, + "required" : [ "QueryCompute" ] + }, + "QueryComputePaymentConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "IsResponsible" : { + "type" : "boolean" + } + }, + "required" : [ "IsResponsible" ] } }, "properties" : { @@ -137,11 +160,14 @@ }, "QueryLogStatus" : { "$ref" : "#/definitions/CollaborationQueryLogStatus" + }, + "CreatorPaymentConfiguration" : { + "$ref" : "#/definitions/PaymentConfiguration" } }, "required" : [ "CreatorDisplayName", "CreatorMemberAbilities", "Members", "Name", "Description", "QueryLogStatus" ], "readOnlyProperties" : [ "/properties/Arn", "/properties/CollaborationIdentifier" ], - "createOnlyProperties" : [ "/properties/CreatorDisplayName", "/properties/CreatorMemberAbilities", "/properties/DataEncryptionMetadata", "/properties/QueryLogStatus", "/properties/Members" ], + "createOnlyProperties" : [ "/properties/CreatorDisplayName", "/properties/CreatorMemberAbilities", "/properties/DataEncryptionMetadata", "/properties/QueryLogStatus", "/properties/Members", "/properties/CreatorPaymentConfiguration" ], "primaryIdentifier" : [ "/properties/CollaborationIdentifier" ], "tagging" : { "taggable" : true, diff --git a/aws-cloudformation-schema/aws-cleanrooms-membership.json b/aws-cloudformation-schema/aws-cleanrooms-membership.json index 9d8add754e..5ec2550953 100644 --- a/aws-cloudformation-schema/aws-cleanrooms-membership.json +++ b/aws-cloudformation-schema/aws-cleanrooms-membership.json @@ -73,6 +73,26 @@ } }, "required" : [ "OutputConfiguration" ] + }, + "MembershipPaymentConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "QueryCompute" : { + "$ref" : "#/definitions/MembershipQueryComputePaymentConfig" + } + }, + "required" : [ "QueryCompute" ] + }, + "MembershipQueryComputePaymentConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "IsResponsible" : { + "type" : "boolean" + } + }, + "required" : [ "IsResponsible" ] } }, "properties" : { @@ -116,6 +136,9 @@ }, "DefaultResultConfiguration" : { "$ref" : "#/definitions/MembershipProtectedQueryResultConfiguration" + }, + "PaymentConfiguration" : { + "$ref" : "#/definitions/MembershipPaymentConfiguration" } }, "required" : [ "CollaborationIdentifier", "QueryLogStatus" ], diff --git a/aws-cloudformation-schema/aws-cloud9-environmentec2.json b/aws-cloudformation-schema/aws-cloud9-environmentec2.json index 0b3e236394..c805aac978 100644 --- a/aws-cloudformation-schema/aws-cloud9-environmentec2.json +++ b/aws-cloudformation-schema/aws-cloud9-environmentec2.json @@ -76,7 +76,7 @@ "required" : [ "Value", "Key" ] } }, - "required" : [ "InstanceType" ], + "required" : [ "ImageId", "InstanceType" ], "createOnlyProperties" : [ "/properties/AutomaticStopTimeMinutes", "/properties/OwnerArn", "/properties/ConnectionType", "/properties/InstanceType", "/properties/ImageId", "/properties/SubnetId", "/properties/Repositories" ], "primaryIdentifier" : [ "/properties/Id" ], "readOnlyProperties" : [ "/properties/Id", "/properties/Arn" ] diff --git a/aws-cloudformation-schema/aws-cloudfront-keyvaluestore.json b/aws-cloudformation-schema/aws-cloudfront-keyvaluestore.json new file mode 100644 index 0000000000..82a78d4011 --- /dev/null +++ b/aws-cloudformation-schema/aws-cloudfront-keyvaluestore.json @@ -0,0 +1,68 @@ +{ + "additionalProperties" : false, + "definitions" : { + "ImportSource" : { + "additionalProperties" : false, + "properties" : { + "SourceType" : { + "type" : "string" + }, + "SourceArn" : { + "type" : "string" + } + }, + "required" : [ "SourceType", "SourceArn" ], + "type" : "object" + } + }, + "description" : "Resource Type definition for AWS::CloudFront::KeyValueStore", + "handlers" : { + "create" : { + "permissions" : [ "cloudfront:CreateKeyValueStore", "cloudfront:DescribeKeyValueStore", "s3:GetObject", "s3:HeadObject", "s3:GetBucketLocation" ] + }, + "delete" : { + "permissions" : [ "cloudfront:DeleteKeyValueStore", "cloudfront:DescribeKeyValueStore" ] + }, + "list" : { + "permissions" : [ "cloudfront:ListKeyValueStores" ] + }, + "read" : { + "permissions" : [ "cloudfront:DescribeKeyValueStore" ] + }, + "update" : { + "permissions" : [ "cloudfront:UpdateKeyValueStore", "cloudfront:DescribeKeyValueStore" ] + } + }, + "properties" : { + "Arn" : { + "type" : "string" + }, + "Id" : { + "type" : "string" + }, + "Status" : { + "type" : "string" + }, + "Name" : { + "type" : "string" + }, + "Comment" : { + "type" : "string" + }, + "ImportSource" : { + "$ref" : "#/definitions/ImportSource" + } + }, + "primaryIdentifier" : [ "/properties/Name" ], + "createOnlyProperties" : [ "/properties/Name" ], + "readOnlyProperties" : [ "/properties/Arn", "/properties/Id", "/properties/Status" ], + "writeOnlyProperties" : [ "/properties/ImportSource" ], + "required" : [ "Name" ], + "tagging" : { + "cloudFormationSystemTags" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "taggable" : false + }, + "typeName" : "AWS::CloudFront::KeyValueStore" +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-cloudtrail-eventdatastore.json b/aws-cloudformation-schema/aws-cloudtrail-eventdatastore.json index 00f830307f..23b7dc5496 100644 --- a/aws-cloudformation-schema/aws-cloudtrail-eventdatastore.json +++ b/aws-cloudformation-schema/aws-cloudtrail-eventdatastore.json @@ -169,6 +169,14 @@ "description" : "The ARN of the event data store.", "type" : "string" }, + "FederationEnabled" : { + "description" : "Indicates whether federation is enabled on an event data store.", + "type" : "boolean" + }, + "FederationRoleArn" : { + "description" : "The ARN of the role used for event data store federation.", + "type" : "string" + }, "MultiRegionEnabled" : { "description" : "Indicates whether the event data store includes events from all regions, or only from the region in which it was created.", "type" : "boolean" @@ -232,23 +240,23 @@ } }, "required" : [ ], - "readOnlyProperties" : [ "/properties/EventDataStoreArn", "/properties/CreatedTimestamp", "/properties/UpdatedTimestamp", "/properties/Status" ], + "readOnlyProperties" : [ "/properties/EventDataStoreArn", "/properties/CreatedTimestamp", "/properties/UpdatedTimestamp", "/properties/Status", "/properties/FederationStatus" ], "primaryIdentifier" : [ "/properties/EventDataStoreArn" ], "propertyTransform" : { "/properties/KmsKeyId" : "$join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:kms:[a-z]{2}[-]{1}[a-z]{3,10}[-]{0,1}[a-z]{0,10}[-]{1}[1-3]{1}:[0-9]{12}[:]{1}key\\/\", KmsKeyId])" }, "handlers" : { "create" : { - "permissions" : [ "CloudTrail:CreateEventDataStore", "CloudTrail:AddTags", "CloudTrail:PutInsightSelectors", "iam:PassRole", "iam:GetRole", "iam:CreateServiceLinkedRole", "organizations:DescribeOrganization", "organizations:ListAWSServiceAccessForOrganization", "kms:GenerateDataKey", "kms:Decrypt" ] + "permissions" : [ "CloudTrail:CreateEventDataStore", "CloudTrail:AddTags", "CloudTrail:PutInsightSelectors", "CloudTrail:EnableFederation", "CloudTrail:GetEventDataStore", "iam:PassRole", "iam:GetRole", "iam:CreateServiceLinkedRole", "organizations:DescribeOrganization", "organizations:ListAWSServiceAccessForOrganization", "kms:GenerateDataKey", "kms:Decrypt", "glue:CreateDatabase", "glue:CreateTable", "glue:PassConnection", "lakeformation:RegisterResource" ] }, "read" : { "permissions" : [ "CloudTrail:GetEventDataStore", "CloudTrail:ListEventDataStores", "CloudTrail:GetInsightSelectors", "CloudTrail:ListTags" ] }, "update" : { - "permissions" : [ "CloudTrail:UpdateEventDataStore", "CloudTrail:RestoreEventDataStore", "CloudTrail:AddTags", "CloudTrail:RemoveTags", "CloudTrail:StartEventDataStoreIngestion", "CloudTrail:StopEventDataStoreIngestion", "CloudTrail:GetEventDataStore", "CloudTrail:PutInsightSelectors", "CloudTrail:GetInsightSelectors", "iam:PassRole", "iam:GetRole", "iam:CreateServiceLinkedRole", "organizations:DescribeOrganization", "organizations:ListAWSServiceAccessForOrganization" ] + "permissions" : [ "CloudTrail:UpdateEventDataStore", "CloudTrail:RestoreEventDataStore", "CloudTrail:AddTags", "CloudTrail:RemoveTags", "CloudTrail:StartEventDataStoreIngestion", "CloudTrail:StopEventDataStoreIngestion", "CloudTrail:GetEventDataStore", "CloudTrail:PutInsightSelectors", "CloudTrail:GetInsightSelectors", "CloudTrail:EnableFederation", "CloudTrail:DisableFederation", "iam:PassRole", "iam:GetRole", "iam:CreateServiceLinkedRole", "organizations:DescribeOrganization", "organizations:ListAWSServiceAccessForOrganization", "glue:CreateDatabase", "glue:CreateTable", "glue:PassConnection", "lakeformation:RegisterResource", "glue:DeleteTable", "lakeformation:DeregisterResource" ] }, "delete" : { - "permissions" : [ "CloudTrail:DeleteEventDataStore", "CloudTrail:GetEventDataStore" ] + "permissions" : [ "CloudTrail:DeleteEventDataStore", "CloudTrail:GetEventDataStore", "CloudTrail:DisableFederation", "glue:DeleteTable", "lakeformation:DeregisterResource" ] }, "list" : { "permissions" : [ "CloudTrail:ListEventDataStores", "CloudTrail:GetEventDataStore", "CloudTrail:GetInsightSelectors", "CloudTrail:ListTags" ] diff --git a/aws-cloudformation-schema/aws-codedeploy-deploymentconfig.json b/aws-cloudformation-schema/aws-codedeploy-deploymentconfig.json index 54943dd6f7..9b3e87bbfd 100644 --- a/aws-cloudformation-schema/aws-codedeploy-deploymentconfig.json +++ b/aws-cloudformation-schema/aws-codedeploy-deploymentconfig.json @@ -1,34 +1,11 @@ { - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-codedeploy", - "tagging" : { - "taggable" : false, - "tagOnCreate" : false, - "tagUpdatable" : false, - "cloudFormationSystemTags" : false - }, - "handlers" : { - "read" : { - "permissions" : [ "codedeploy:GetDeploymentConfig" ] - }, - "create" : { - "permissions" : [ "codedeploy:CreateDeploymentConfig" ] - }, - "list" : { - "permissions" : [ "codedeploy:ListDeploymentConfigs" ] - }, - "delete" : { - "permissions" : [ "codedeploy:GetDeploymentConfig", "codedeploy:DeleteDeploymentConfig" ] - } - }, "typeName" : "AWS::CodeDeploy::DeploymentConfig", "description" : "Resource Type definition for AWS::CodeDeploy::DeploymentConfig", - "createOnlyProperties" : [ "/properties/DeploymentConfigName", "/properties/MinimumHealthyHosts", "/properties/ComputePlatform", "/properties/TrafficRoutingConfig" ], - "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/DeploymentConfigName" ], + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-codedeploy", "definitions" : { "TimeBasedLinear" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "LinearInterval" : { "type" : "integer" @@ -40,8 +17,8 @@ "required" : [ "LinearInterval", "LinearPercentage" ] }, "TimeBasedCanary" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "CanaryPercentage" : { "type" : "integer" @@ -53,8 +30,8 @@ "required" : [ "CanaryPercentage", "CanaryInterval" ] }, "TrafficRoutingConfig" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "Type" : { "type" : "string" @@ -68,15 +45,46 @@ }, "required" : [ "Type" ] }, - "MinimumHealthyHosts" : { - "additionalProperties" : false, + "MinimumHealthyHostsPerZone" : { "type" : "object", + "additionalProperties" : false, "properties" : { + "Value" : { + "type" : "integer" + }, "Type" : { "type" : "string" + } + }, + "required" : [ "Type", "Value" ] + }, + "ZonalConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "FirstZoneMonitorDurationInSeconds" : { + "type" : "integer", + "format" : "int64" + }, + "MonitorDurationInSeconds" : { + "type" : "integer", + "format" : "int64" }, + "MinimumHealthyHostsPerZone" : { + "$ref" : "#/definitions/MinimumHealthyHostsPerZone" + } + }, + "required" : [ ] + }, + "MinimumHealthyHosts" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { "Value" : { "type" : "integer" + }, + "Type" : { + "type" : "string" } }, "required" : [ "Type", "Value" ] @@ -91,13 +99,40 @@ "description" : "A name for the deployment configuration. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the deployment configuration name. For more information, see Name Type.", "type" : "string" }, + "MinimumHealthyHosts" : { + "description" : "The minimum number of healthy instances that should be available at any time during the deployment. There are two parameters expected in the input: type and value.", + "$ref" : "#/definitions/MinimumHealthyHosts" + }, + "ZonalConfig" : { + "description" : "The zonal deployment config that specifies how the zonal deployment behaves", + "$ref" : "#/definitions/ZonalConfig" + }, "TrafficRoutingConfig" : { "description" : "The configuration that specifies how the deployment traffic is routed.", "$ref" : "#/definitions/TrafficRoutingConfig" + } + }, + "additionalProperties" : false, + "createOnlyProperties" : [ "/properties/DeploymentConfigName", "/properties/MinimumHealthyHosts", "/properties/ComputePlatform", "/properties/ZonalConfig", "/properties/TrafficRoutingConfig" ], + "primaryIdentifier" : [ "/properties/DeploymentConfigName" ], + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false + }, + "handlers" : { + "create" : { + "permissions" : [ "codedeploy:CreateDeploymentConfig" ] }, - "MinimumHealthyHosts" : { - "description" : "The minimum number of healthy instances that should be available at any time during the deployment. There are two parameters expected in the input: type and value.", - "$ref" : "#/definitions/MinimumHealthyHosts" + "read" : { + "permissions" : [ "codedeploy:GetDeploymentConfig" ] + }, + "delete" : { + "permissions" : [ "codedeploy:GetDeploymentConfig", "codedeploy:DeleteDeploymentConfig" ] + }, + "list" : { + "permissions" : [ "codedeploy:ListDeploymentConfigs" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-codedeploy-deploymentgroup.json b/aws-cloudformation-schema/aws-codedeploy-deploymentgroup.json index a1ad70f94c..5d0a94314f 100644 --- a/aws-cloudformation-schema/aws-codedeploy-deploymentgroup.json +++ b/aws-cloudformation-schema/aws-codedeploy-deploymentgroup.json @@ -54,6 +54,9 @@ "$ref" : "#/definitions/EC2TagFilter" } }, + "TerminationHookEnabled" : { + "type" : "boolean" + }, "ECSServices" : { "type" : "array", "uniqueItems" : true, diff --git a/aws-cloudformation-schema/aws-codepipeline-pipeline.json b/aws-cloudformation-schema/aws-codepipeline-pipeline.json index 43545da03f..d320bd9892 100644 --- a/aws-cloudformation-schema/aws-codepipeline-pipeline.json +++ b/aws-cloudformation-schema/aws-codepipeline-pipeline.json @@ -10,12 +10,6 @@ "$ref" : "#/definitions/ArtifactStoreMap" } }, - "Version" : { - "type" : "string" - }, - "ArtifactStore" : { - "$ref" : "#/definitions/ArtifactStore" - }, "DisableInboundStageTransitions" : { "type" : "array", "uniqueItems" : true, @@ -33,97 +27,185 @@ "RestartExecutionOnUpdate" : { "type" : "boolean" }, - "Id" : { - "type" : "string" + "Triggers" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/PipelineTriggerDeclaration" + } }, "RoleArn" : { "type" : "string" }, + "Name" : { + "type" : "string" + }, + "Variables" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/VariableDeclaration" + } + }, + "Version" : { + "type" : "string" + }, + "ArtifactStore" : { + "$ref" : "#/definitions/ArtifactStore" + }, + "PipelineType" : { + "type" : "string" + }, + "Id" : { + "type" : "string" + }, "Tags" : { "type" : "array", "uniqueItems" : false, "items" : { "$ref" : "#/definitions/Tag" } - }, - "Name" : { - "type" : "string" } }, "definitions" : { - "ActionDeclaration" : { + "BlockerDeclaration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ActionTypeId" : { - "$ref" : "#/definitions/ActionTypeId" - }, - "Configuration" : { - "type" : "object" + "Type" : { + "type" : "string" }, - "InputArtifacts" : { + "Name" : { + "type" : "string" + } + }, + "required" : [ "Type", "Name" ] + }, + "GitConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Push" : { "type" : "array", "uniqueItems" : true, "items" : { - "$ref" : "#/definitions/InputArtifact" + "$ref" : "#/definitions/GitPushFilter" } }, - "OutputArtifacts" : { - "type" : "array", - "uniqueItems" : true, - "items" : { - "$ref" : "#/definitions/OutputArtifact" - } + "SourceActionName" : { + "type" : "string" + } + }, + "required" : [ "SourceActionName" ] + }, + "ActionTypeId" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Owner" : { + "type" : "string" }, - "Region" : { + "Category" : { "type" : "string" }, - "Namespace" : { + "Version" : { "type" : "string" }, - "RoleArn" : { + "Provider" : { "type" : "string" + } + }, + "required" : [ "Owner", "Category", "Version", "Provider" ] + }, + "ArtifactStoreMap" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ArtifactStore" : { + "$ref" : "#/definitions/ArtifactStore" }, - "RunOrder" : { - "type" : "integer" + "Region" : { + "type" : "string" + } + }, + "required" : [ "ArtifactStore", "Region" ] + }, + "PipelineTriggerDeclaration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "GitConfiguration" : { + "$ref" : "#/definitions/GitConfiguration" }, - "Name" : { + "ProviderType" : { "type" : "string" } }, - "required" : [ "ActionTypeId", "Name" ] + "required" : [ "ProviderType" ] }, - "BlockerDeclaration" : { + "EncryptionKey" : { "type" : "object", "additionalProperties" : false, "properties" : { "Type" : { "type" : "string" }, - "Name" : { + "Id" : { "type" : "string" } }, - "required" : [ "Type", "Name" ] + "required" : [ "Type", "Id" ] }, - "ActionTypeId" : { + "GitPushFilter" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Owner" : { + "Tags" : { + "$ref" : "#/definitions/GitTagFilterCriteria" + } + } + }, + "ActionDeclaration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ActionTypeId" : { + "$ref" : "#/definitions/ActionTypeId" + }, + "Configuration" : { + "type" : "object" + }, + "InputArtifacts" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/InputArtifact" + } + }, + "OutputArtifacts" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/OutputArtifact" + } + }, + "Region" : { "type" : "string" }, - "Category" : { + "Namespace" : { "type" : "string" }, - "Version" : { + "RoleArn" : { "type" : "string" }, - "Provider" : { + "RunOrder" : { + "type" : "integer" + }, + "Name" : { "type" : "string" } }, - "required" : [ "Owner", "Category", "Version", "Provider" ] + "required" : [ "ActionTypeId", "Name" ] }, "StageDeclaration" : { "type" : "object", @@ -175,18 +257,21 @@ }, "required" : [ "Type", "Location" ] }, - "ArtifactStoreMap" : { + "VariableDeclaration" : { "type" : "object", "additionalProperties" : false, "properties" : { - "ArtifactStore" : { - "$ref" : "#/definitions/ArtifactStore" + "DefaultValue" : { + "type" : "string" }, - "Region" : { + "Description" : { + "type" : "string" + }, + "Name" : { "type" : "string" } }, - "required" : [ "ArtifactStore", "Region" ] + "required" : [ "Name" ] }, "StageTransition" : { "type" : "object", @@ -201,18 +286,25 @@ }, "required" : [ "StageName", "Reason" ] }, - "EncryptionKey" : { + "GitTagFilterCriteria" : { "type" : "object", "additionalProperties" : false, "properties" : { - "Type" : { - "type" : "string" + "Includes" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "type" : "string" + } }, - "Id" : { - "type" : "string" + "Excludes" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "type" : "string" + } } - }, - "required" : [ "Type", "Id" ] + } }, "Tag" : { "type" : "object", diff --git a/aws-cloudformation-schema/aws-config-configurationrecorder.json b/aws-cloudformation-schema/aws-config-configurationrecorder.json index 826ecb5fe7..225555ead8 100644 --- a/aws-cloudformation-schema/aws-config-configurationrecorder.json +++ b/aws-cloudformation-schema/aws-config-configurationrecorder.json @@ -9,6 +9,9 @@ "RecordingGroup" : { "$ref" : "#/definitions/RecordingGroup" }, + "RecordingMode" : { + "$ref" : "#/definitions/RecordingMode" + }, "RoleARN" : { "type" : "string" }, @@ -41,6 +44,26 @@ }, "required" : [ "ResourceTypes" ] }, + "RecordingModeOverride" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ResourceTypes" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "type" : "string" + } + }, + "RecordingFrequency" : { + "type" : "string" + }, + "Description" : { + "type" : "string" + } + }, + "required" : [ "ResourceTypes", "RecordingFrequency" ] + }, "RecordingGroup" : { "type" : "object", "additionalProperties" : false, @@ -65,6 +88,23 @@ "type" : "boolean" } } + }, + "RecordingMode" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "RecordingModeOverrides" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/RecordingModeOverride" + } + }, + "RecordingFrequency" : { + "type" : "string" + } + }, + "required" : [ "RecordingFrequency" ] } }, "required" : [ "RoleARN" ], diff --git a/aws-cloudformation-schema/aws-connect-instance.json b/aws-cloudformation-schema/aws-connect-instance.json index b3f2db3ff1..3213bdbb7c 100644 --- a/aws-cloudformation-schema/aws-connect-instance.json +++ b/aws-cloudformation-schema/aws-connect-instance.json @@ -58,6 +58,26 @@ } }, "required" : [ "InboundCalls", "OutboundCalls" ] + }, + "Tag" : { + "description" : "A key-value pair to associate with a resource.", + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 1, + "maxLength" : 128 + }, + "Value" : { + "type" : "string", + "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 0, + "maxLength" : 256 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false } }, "properties" : { @@ -106,32 +126,42 @@ "Attributes" : { "description" : "The attributes for the instance.", "$ref" : "#/definitions/Attributes" + }, + "Tags" : { + "description" : "An array of key-value pairs to apply to this resource.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Tag" + } } }, - "tagging" : { - "taggable" : false, - "tagOnCreate" : false, - "tagUpdatable" : false, - "cloudFormationSystemTags" : false - }, "additionalProperties" : false, "required" : [ "IdentityManagementType", "Attributes" ], "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/ServiceRole", "/properties/CreatedTime", "/properties/InstanceStatus" ], "createOnlyProperties" : [ "/properties/DirectoryId", "/properties/InstanceAlias", "/properties/IdentityManagementType" ], "writeOnlyProperties" : [ "/properties/DirectoryId" ], "primaryIdentifier" : [ "/properties/Arn" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + }, "handlers" : { "create" : { - "permissions" : [ "connect:CreateInstance", "connect:DescribeInstance", "connect:UpdateInstanceAttribute", "ds:CheckAlias", "ds:CreateAlias", "ds:AuthorizeApplication", "ds:UnauthorizeApplication", "ds:CreateIdentityPoolDirectory", "ds:CreateDirectory", "ds:DescribeDirectories", "iam:CreateServiceLinkedRole", "iam:PutRolePolicy", "logs:CreateLogGroup" ] + "permissions" : [ "connect:CreateInstance", "connect:DescribeInstance", "connect:UpdateInstanceAttribute", "connect:TagResource", "ds:CheckAlias", "ds:CreateAlias", "ds:AuthorizeApplication", "ds:UnauthorizeApplication", "ds:CreateIdentityPoolDirectory", "ds:CreateDirectory", "ds:DescribeDirectories", "iam:CreateServiceLinkedRole", "iam:PutRolePolicy", "logs:CreateLogGroup" ] }, "read" : { "permissions" : [ "connect:DescribeInstance", "connect:ListInstanceAttributes", "ds:DescribeDirectories" ] }, "update" : { - "permissions" : [ "connect:ListInstanceAttributes", "connect:UpdateInstanceAttribute", "iam:CreateServiceLinkedRole", "iam:PutRolePolicy" ] + "permissions" : [ "connect:ListInstanceAttributes", "connect:UpdateInstanceAttribute", "iam:CreateServiceLinkedRole", "iam:PutRolePolicy", "connect:TagResource", "connect:UntagResource" ] }, "delete" : { - "permissions" : [ "connect:DeleteInstance", "connect:DescribeInstance", "ds:DeleteDirectory", "ds:UnauthorizeApplication", "ds:DescribeDirectories" ] + "permissions" : [ "connect:DeleteInstance", "connect:DescribeInstance", "connect:UntagResource", "ds:DeleteDirectory", "ds:UnauthorizeApplication", "ds:DescribeDirectories" ] }, "list" : { "permissions" : [ "connect:ListInstances", "connect:ListInstanceAttributes", "ds:DescribeDirectories" ] diff --git a/aws-cloudformation-schema/aws-connect-instancestorageconfig.json b/aws-cloudformation-schema/aws-connect-instancestorageconfig.json index 4106a6a2e3..d62bf14236 100644 --- a/aws-cloudformation-schema/aws-connect-instancestorageconfig.json +++ b/aws-cloudformation-schema/aws-connect-instancestorageconfig.json @@ -100,7 +100,7 @@ "$ref" : "#/definitions/EncryptionConfig" } }, - "required" : [ "Prefix", "RetentionPeriodHours" ] + "required" : [ "Prefix", "RetentionPeriodHours", "EncryptionConfig" ] }, "KinesisStreamConfig" : { "type" : "object", diff --git a/aws-cloudformation-schema/aws-connect-integrationassociation.json b/aws-cloudformation-schema/aws-connect-integrationassociation.json index 9ff22d58a9..6ae28592e1 100644 --- a/aws-cloudformation-schema/aws-connect-integrationassociation.json +++ b/aws-cloudformation-schema/aws-connect-integrationassociation.json @@ -12,7 +12,7 @@ "IntegrationType" : { "description" : "Specifies the integration type to be associated with the instance", "type" : "string", - "enum" : [ "LEX_BOT", "LAMBDA_FUNCTION" ] + "enum" : [ "LEX_BOT", "LAMBDA_FUNCTION", "APPLICATION" ] }, "InstanceId" : { "description" : "Amazon Connect instance identifier", @@ -54,19 +54,19 @@ "primaryIdentifier" : [ "/properties/InstanceId", "/properties/IntegrationType", "/properties/IntegrationArn" ], "handlers" : { "create" : { - "permissions" : [ "connect:AssociateBot", "connect:AssociateLambdaFunction", "connect:ListBots", "connect:ListLambdaFunctions", "lambda:addPermission", "lex:GetBot", "lex:DescribeBotAlias", "lex:CreateResourcePolicy", "lex:UpdateResourcePolicy", "lex:CreateResourcePolicyStatement", "lambda:AddPermission", "iam:PutRolePolicy" ] + "permissions" : [ "connect:DescribeInstance", "ds:DescribeDirectories", "app-integrations:CreateEventIntegrationAssociation", "mobiletargeting:GetApp", "cases:GetDomain", "wisdom:GetAssistant", "wisdom:GetKnowledgeBase", "wisdom:TagResource", "voiceid:DescribeDomain", "events:PutTargets", "events:PutRule", "connect:AssociateBot", "connect:AssociateLambdaFunction", "connect:CreateIntegrationAssociation", "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations", "lambda:addPermission", "lex:GetBot", "lex:DescribeBotAlias", "lex:CreateResourcePolicy", "lex:UpdateResourcePolicy", "lex:CreateResourcePolicyStatement", "lambda:AddPermission", "app-integrations:GetApplication", "iam:AttachRolePolicy", "iam:CreateServiceLinkedRole", "iam:GetRolePolicy", "iam:PutRolePolicy" ] }, "read" : { - "permissions" : [ "connect:ListBots", "connect:ListLambdaFunctions" ] + "permissions" : [ "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations" ] }, "update" : { "permissions" : [ ] }, "delete" : { - "permissions" : [ "connect:DisassociateBot", "connect:DisassociateLambdaFunction", "connect:ListBots", "connect:ListLambdaFunctions", "lex:DeleteResourcePolicy", "lex:DeleteResourcePolicyStatement", "lambda:RemovePermission", "iam:PutRolePolicy" ] + "permissions" : [ "connect:DescribeInstance", "ds:DescribeDirectories", "app-integrations:DeleteEventIntegrationAssociation", "events:ListTargetsByRule", "events:RemoveTargets", "events:DeleteRule", "connect:DisassociateBot", "connect:DisassociateLambdaFunction", "connect:DeleteIntegrationAssociation", "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations", "lex:DeleteResourcePolicy", "lex:DeleteResourcePolicyStatement", "lambda:RemovePermission", "iam:GetRolePolicy", "iam:DeleteRolePolicy", "iam:PutRolePolicy" ] }, "list" : { - "permissions" : [ "connect:ListBots", "connect:ListLambdaFunctions" ] + "permissions" : [ "connect:ListBots", "connect:ListLambdaFunctions", "connect:ListIntegrationAssociations" ] } } } \ 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 f0e59d3339..11560ae0ee 100644 --- a/aws-cloudformation-schema/aws-connect-rule.json +++ b/aws-cloudformation-schema/aws-connect-rule.json @@ -3,6 +3,53 @@ "description" : "Resource Type definition for AWS:Connect::Rule", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", "definitions" : { + "FieldValue" : { + "description" : "The value of the field.", + "type" : "object", + "properties" : { + "StringValue" : { + "type" : "string" + }, + "BooleanValue" : { + "type" : "boolean" + }, + "DoubleValue" : { + "type" : "number" + }, + "EmptyValue" : { + "type" : "object" + } + }, + "additionalProperties" : false + }, + "Field" : { + "description" : "The field of the case.", + "type" : "object", + "properties" : { + "Id" : { + "description" : "The Id of the field", + "type" : "string", + "minLength" : 1, + "maxLength" : 500 + }, + "Value" : { + "$ref" : "#/definitions/FieldValue" + } + }, + "required" : [ "Id", "Value" ], + "additionalProperties" : false + }, + "Fields" : { + "description" : "An array of case fields", + "type" : "array", + "insertionOrder" : true, + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/Field" + }, + "minItems" : 1, + "maxItems" : 100 + }, "UserArn" : { "description" : "The Amazon Resource Name (ARN) of the user.", "type" : "string", @@ -135,6 +182,38 @@ "required" : [ "DeliveryMethod", "Content", "Recipient", "ContentType" ], "additionalProperties" : false }, + "CreateCaseAction" : { + "description" : "The definition for create case action.", + "type" : "object", + "properties" : { + "Fields" : { + "$ref" : "#/definitions/Fields" + }, + "TemplateId" : { + "description" : "The Id of template.", + "type" : "string", + "minLength" : 1, + "maxLength" : 500 + } + }, + "required" : [ "Fields", "TemplateId" ], + "additionalProperties" : false + }, + "UpdateCaseAction" : { + "description" : "The definition for update case action.", + "type" : "object", + "properties" : { + "Fields" : { + "$ref" : "#/definitions/Fields" + } + }, + "required" : [ "Fields" ], + "additionalProperties" : false + }, + "EndAssociatedTasksAction" : { + "description" : "The definition for ending associated task action.", + "type" : "object" + }, "AssignContactCategoryActions" : { "description" : "This action will assign contact category when a rule is triggered.", "type" : "array", @@ -164,7 +243,7 @@ "EventSourceName" : { "description" : "The name of event source.", "type" : "string", - "enum" : [ "OnContactEvaluationSubmit", "OnPostCallAnalysisAvailable", "OnRealTimeCallAnalysisAvailable", "OnRealTimeChatAnalysisAvailable", "OnPostChatAnalysisAvailable", "OnZendeskTicketCreate", "OnZendeskTicketStatusUpdate", "OnSalesforceCaseCreate", "OnMetricDataUpdate" ] + "enum" : [ "OnContactEvaluationSubmit", "OnPostCallAnalysisAvailable", "OnRealTimeCallAnalysisAvailable", "OnRealTimeChatAnalysisAvailable", "OnPostChatAnalysisAvailable", "OnZendeskTicketCreate", "OnZendeskTicketStatusUpdate", "OnSalesforceCaseCreate", "OnMetricDataUpdate", "OnCaseCreate", "OnCasesUpdate" ] }, "IntegrationAssociationArn" : { "description" : "The Amazon Resource Name (ARN) for the AppIntegration association.", @@ -197,6 +276,39 @@ "minItems" : 1, "maxItems" : 1 }, + "CreateCaseActions" : { + "description" : "This action will create a case when a rule is triggered.", + "type" : "array", + "insertionOrder" : false, + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/CreateCaseAction" + }, + "minItems" : 1, + "maxItems" : 1 + }, + "UpdateCaseActions" : { + "description" : "This action will update a case when a rule is triggered.", + "type" : "array", + "insertionOrder" : false, + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/UpdateCaseAction" + }, + "minItems" : 1, + "maxItems" : 1 + }, + "EndAssociatedTasksActions" : { + "description" : "This action will end associated tasks when a rule is triggered.", + "type" : "array", + "insertionOrder" : false, + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/EndAssociatedTasksAction" + }, + "minItems" : 1, + "maxItems" : 1 + }, "Actions" : { "description" : "The list of actions that will be executed when a rule is triggered.", "type" : "object", @@ -212,6 +324,15 @@ }, "SendNotificationActions" : { "$ref" : "#/definitions/SendNotificationActions" + }, + "CreateCaseActions" : { + "$ref" : "#/definitions/CreateCaseActions" + }, + "UpdateCaseActions" : { + "$ref" : "#/definitions/UpdateCaseActions" + }, + "EndAssociatedTaskActions" : { + "$ref" : "#/definitions/EndAssociatedTasksActions" } }, "additionalProperties" : false diff --git a/aws-cloudformation-schema/aws-connect-user.json b/aws-cloudformation-schema/aws-connect-user.json index b067144787..154d4ff712 100644 --- a/aws-cloudformation-schema/aws-connect-user.json +++ b/aws-cloudformation-schema/aws-connect-user.json @@ -1,43 +1,47 @@ { + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", + "handlers" : { + "read" : { + "permissions" : [ "connect:DescribeUser", "connect:ListUserProficiencies" ] + }, + "create" : { + "permissions" : [ "connect:CreateUser", "connect:TagResource", "connect:AssociateUserProficiencies" ] + }, + "update" : { + "permissions" : [ "connect:UpdateUserIdentityInfo", "connect:UpdateUserPhoneConfig", "connect:UpdateUserRoutingProfile", "connect:UpdateUserSecurityProfiles", "connect:UpdateUserHierarchy", "connect:TagResource", "connect:UntagResource", "connect:AssociateUserProficiencies", "connect:DisassociateUserProficiencies", "connect:UpdateUserProficiencies" ] + }, + "delete" : { + "permissions" : [ "connect:DeleteUser", "connect:UntagResource" ] + } + }, "typeName" : "AWS::Connect::User", + "readOnlyProperties" : [ "/properties/UserArn" ], "description" : "Resource Type definition for AWS::Connect::User", - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-connect", + "writeOnlyProperties" : [ "/properties/Password" ], + "additionalProperties" : false, + "primaryIdentifier" : [ "/properties/UserArn" ], "definitions" : { - "FirstName" : { - "description" : "The first name. This is required if you are using Amazon Connect or SAML for identity management.", - "type" : "string" - }, - "LastName" : { - "description" : "The last name. This is required if you are using Amazon Connect or SAML for identity management.", - "type" : "string" + "AutoAccept" : { + "description" : "The Auto accept setting.", + "type" : "boolean" }, "Email" : { "description" : "The email address. If you are using SAML for identity management and include this parameter, an error is returned.", "type" : "string" }, - "SecondaryEmail" : { - "description" : "The 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.", - "type" : "string", - "pattern" : "(?=^.{0,265}$)[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,63}" - }, - "Mobile" : { - "description" : "The mobile phone number.", - "type" : "string", - "pattern" : "^\\+[1-9]\\d{1,14}$" + "FirstName" : { + "description" : "The first name. This is required if you are using Amazon Connect or SAML for identity management.", + "type" : "string" }, "SecurityProfileArn" : { + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/security-profile/[-a-zA-Z0-9]*$", "description" : "The identifier of the security profile for the user.", - "type" : "string", - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/security-profile/[-a-zA-Z0-9]*$" - }, - "AfterContactWorkTimeLimit" : { - "description" : "The After Call Work (ACW) timeout setting, in seconds.", - "type" : "integer", - "minimum" : 0 + "type" : "string" }, - "AutoAccept" : { - "description" : "The Auto accept setting.", - "type" : "boolean" + "Mobile" : { + "pattern" : "^\\+[1-9]\\d{1,14}$", + "description" : "The mobile phone number.", + "type" : "string" }, "DeskPhoneNumber" : { "description" : "The phone number for the user's desk phone.", @@ -48,23 +52,32 @@ "type" : "string", "enum" : [ "SOFT_PHONE", "DESK_PHONE" ] }, + "SecondaryEmail" : { + "pattern" : "(?=^.{0,265}$)[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,63}", + "description" : "The 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.", + "type" : "string" + }, + "LastName" : { + "description" : "The last name. This is required if you are using Amazon Connect or SAML for identity management.", + "type" : "string" + }, "UserIdentityInfo" : { "description" : "Contains information about the identity of a user.", - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { - "FirstName" : { - "$ref" : "#/definitions/FirstName" - }, - "LastName" : { - "$ref" : "#/definitions/LastName" - }, "Email" : { "$ref" : "#/definitions/Email" }, + "FirstName" : { + "$ref" : "#/definitions/FirstName" + }, "SecondaryEmail" : { "$ref" : "#/definitions/SecondaryEmail" }, + "LastName" : { + "$ref" : "#/definitions/LastName" + }, "Mobile" : { "$ref" : "#/definitions/Mobile" } @@ -72,129 +85,116 @@ }, "UserPhoneConfig" : { "description" : "Contains information about the phone configuration settings for a user.", - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { - "AfterContactWorkTimeLimit" : { - "$ref" : "#/definitions/AfterContactWorkTimeLimit" - }, "AutoAccept" : { "$ref" : "#/definitions/AutoAccept" }, + "PhoneType" : { + "$ref" : "#/definitions/PhoneType" + }, "DeskPhoneNumber" : { "$ref" : "#/definitions/DeskPhoneNumber" }, - "PhoneType" : { - "$ref" : "#/definitions/PhoneType" + "AfterContactWorkTimeLimit" : { + "$ref" : "#/definitions/AfterContactWorkTimeLimit" } }, "required" : [ "PhoneType" ] }, "Tag" : { "description" : "A key-value pair to associate with a resource.", - "type" : "object", "additionalProperties" : false, + "type" : "object", "properties" : { - "Key" : { - "type" : "string", - "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -. ", - "minLength" : 1, - "maxLength" : 128, - "pattern" : "^(?!aws:)[a-zA-Z+-=._:/]+$" - }, "Value" : { - "type" : "string", "description" : "The value for the tag. You can specify a value that is maximum of 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", "maxLength" : 256 + }, + "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 -. ", + "type" : "string", + "maxLength" : 128 } }, "required" : [ "Key", "Value" ] + }, + "AfterContactWorkTimeLimit" : { + "description" : "The After Call Work (ACW) timeout setting, in seconds.", + "type" : "integer", + "minimum" : 0 } }, + "required" : [ "InstanceArn", "PhoneConfig", "RoutingProfileArn", "SecurityProfileArns", "Username" ], "properties" : { - "InstanceArn" : { - "description" : "The identifier of the Amazon Connect instance.", - "type" : "string", - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*$" - }, - "DirectoryUserId" : { - "description" : "The identifier of the user account in the directory used for identity management.", + "UserArn" : { + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent/[-a-zA-Z0-9]*$", + "description" : "The Amazon Resource Name (ARN) for the user.", "type" : "string" }, - "HierarchyGroupArn" : { - "description" : "The identifier of the hierarchy group for the user.", - "type" : "string", - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent-group/[-a-zA-Z0-9]*$" + "RoutingProfileArn" : { + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/routing-profile/[-a-zA-Z0-9]*$", + "description" : "The identifier of the routing profile for the user.", + "type" : "string" }, "Username" : { + "minLength" : 1, + "pattern" : "[a-zA-Z0-9\\_\\-\\.\\@]+", "description" : "The user name for the account.", "type" : "string", - "minLength" : 1, - "maxLength" : 64, - "pattern" : "[a-zA-Z0-9\\_\\-\\.\\@]+" + "maxLength" : 64 }, - "Password" : { - "description" : "The password for the user account. A password is required if you are using Amazon Connect for identity management. Otherwise, it is an error to include a password.", - "type" : "string", - "pattern" : "^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)[a-zA-Z\\d\\S]{8,64}$" + "PhoneConfig" : { + "description" : "The phone settings for the user.", + "$ref" : "#/definitions/UserPhoneConfig" }, - "RoutingProfileArn" : { - "description" : "The identifier of the routing profile for the user.", - "type" : "string", - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/routing-profile/[-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" + }, + "DirectoryUserId" : { + "description" : "The identifier of the user account in the directory used for identity management.", + "type" : "string" }, "IdentityInfo" : { "description" : "The information about the identity of the user.", "$ref" : "#/definitions/UserIdentityInfo" }, - "PhoneConfig" : { - "description" : "The phone settings for the user.", - "$ref" : "#/definitions/UserPhoneConfig" + "HierarchyGroupArn" : { + "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent-group/[-a-zA-Z0-9]*$", + "description" : "The identifier of the hierarchy group for the user.", + "type" : "string" }, "SecurityProfileArns" : { - "type" : "array", "minItems" : 1, "maxItems" : 10, "uniqueItems" : true, - "insertionOrder" : false, "description" : "One or more security profile arns for the user", + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/SecurityProfileArn" } }, - "UserArn" : { - "description" : "The Amazon Resource Name (ARN) for the user.", - "type" : "string", - "pattern" : "^arn:aws[-a-z0-9]*:connect:[-a-z0-9]*:[0-9]{12}:instance/[-a-zA-Z0-9]*/agent/[-a-zA-Z0-9]*$" - }, "Tags" : { - "type" : "array", "maxItems" : 50, "uniqueItems" : true, - "insertionOrder" : false, "description" : "One or more tags.", + "insertionOrder" : false, + "type" : "array", "items" : { "$ref" : "#/definitions/Tag" } - } - }, - "required" : [ "InstanceArn", "PhoneConfig", "RoutingProfileArn", "SecurityProfileArns", "Username" ], - "handlers" : { - "create" : { - "permissions" : [ "connect:CreateUser", "connect:TagResource" ] }, - "read" : { - "permissions" : [ "connect:DescribeUser" ] - }, - "delete" : { - "permissions" : [ "connect:DeleteUser", "connect:UntagResource" ] - }, - "update" : { - "permissions" : [ "connect:UpdateUserIdentityInfo", "connect:UpdateUserPhoneConfig", "connect:UpdateUserRoutingProfile", "connect:UpdateUserSecurityProfiles", "connect:UpdateUserHierarchy", "connect:TagResource", "connect:UntagResource" ] + "Password" : { + "pattern" : "^(?=.*[a-z])(?=.*[A-Z])(?=.*\\d)[a-zA-Z\\d\\S]{8,64}$", + "description" : "The password for the user account. A password is required if you are using Amazon Connect for identity management. Otherwise, it is an error to include a password.", + "type" : "string" } - }, - "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/UserArn" ], - "readOnlyProperties" : [ "/properties/UserArn" ], - "writeOnlyProperties" : [ "/properties/Password" ] + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-devicefarm-devicepool.json b/aws-cloudformation-schema/aws-devicefarm-devicepool.json index 885e8806f7..984696c3cb 100644 --- a/aws-cloudformation-schema/aws-devicefarm-devicepool.json +++ b/aws-cloudformation-schema/aws-devicefarm-devicepool.json @@ -96,16 +96,16 @@ }, "handlers" : { "create" : { - "permissions" : [ "devicefarm:CreateDevicePool", "devicefarm:TagResource" ] + "permissions" : [ "devicefarm:CreateDevicePool", "devicefarm:TagResource", "devicefarm:GetDevicePool", "devicefarm:ListTagsForResource" ] }, "read" : { "permissions" : [ "devicefarm:GetDevicePool", "devicefarm:ListTagsForResource" ] }, "update" : { - "permissions" : [ "devicefarm:UpdateDevicePool", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource" ] + "permissions" : [ "devicefarm:UpdateDevicePool", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource", "devicefarm:GetDevicePool" ] }, "delete" : { - "permissions" : [ "devicefarm:DeleteDevicePool" ] + "permissions" : [ "devicefarm:DeleteDevicePool", "devicefarm:GetDevicePool", "devicefarm:UntagResource", "devicefarm:ListTagsForResource" ] }, "list" : { "permissions" : [ "devicefarm:ListDevicePools" ], diff --git a/aws-cloudformation-schema/aws-devicefarm-instanceprofile.json b/aws-cloudformation-schema/aws-devicefarm-instanceprofile.json index 29cc15a942..90ee0f4c60 100644 --- a/aws-cloudformation-schema/aws-devicefarm-instanceprofile.json +++ b/aws-cloudformation-schema/aws-devicefarm-instanceprofile.json @@ -71,16 +71,16 @@ }, "handlers" : { "create" : { - "permissions" : [ "devicefarm:CreateInstanceProfile", "devicefarm:TagResource" ] + "permissions" : [ "devicefarm:CreateInstanceProfile", "devicefarm:TagResource", "devicefarm:GetInstanceProfile", "devicefarm:ListTagsForResource" ] }, "read" : { "permissions" : [ "devicefarm:GetInstanceProfile", "devicefarm:ListTagsForResource" ] }, "update" : { - "permissions" : [ "devicefarm:UpdateInstanceProfile", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource" ] + "permissions" : [ "devicefarm:UpdateInstanceProfile", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource", "devicefarm:GetInstanceProfile" ] }, "delete" : { - "permissions" : [ "devicefarm:DeleteInstanceProfile" ] + "permissions" : [ "devicefarm:DeleteInstanceProfile", "devicefarm:UntagResource", "devicefarm:GetInstanceProfile", "devicefarm:ListTagsForResource" ] }, "list" : { "permissions" : [ "devicefarm:ListInstanceProfiles" ] diff --git a/aws-cloudformation-schema/aws-devicefarm-networkprofile.json b/aws-cloudformation-schema/aws-devicefarm-networkprofile.json index 2066215b71..e5648f8fbc 100644 --- a/aws-cloudformation-schema/aws-devicefarm-networkprofile.json +++ b/aws-cloudformation-schema/aws-devicefarm-networkprofile.json @@ -104,16 +104,16 @@ }, "handlers" : { "create" : { - "permissions" : [ "devicefarm:CreateNetworkProfile", "devicefarm:TagResource" ] + "permissions" : [ "devicefarm:CreateNetworkProfile", "devicefarm:TagResource", "devicefarm:GetNetworkProfile", "devicefarm:ListTagsForResource" ] }, "read" : { "permissions" : [ "devicefarm:GetNetworkProfile", "devicefarm:ListTagsForResource" ] }, "update" : { - "permissions" : [ "devicefarm:UpdateNetworkProfile", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource" ] + "permissions" : [ "devicefarm:UpdateNetworkProfile", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource", "devicefarm:GetNetworkProfile" ] }, "delete" : { - "permissions" : [ "devicefarm:DeleteNetworkProfile", "devicefarm:UntagResource" ] + "permissions" : [ "devicefarm:DeleteNetworkProfile", "devicefarm:UntagResource", "devicefarm:GetNetworkProfile", "devicefarm:ListTagsForResource" ] }, "list" : { "permissions" : [ "devicefarm:ListNetworkProfiles" ], diff --git a/aws-cloudformation-schema/aws-devicefarm-project.json b/aws-cloudformation-schema/aws-devicefarm-project.json index 5a6baa749a..320d8abd50 100644 --- a/aws-cloudformation-schema/aws-devicefarm-project.json +++ b/aws-cloudformation-schema/aws-devicefarm-project.json @@ -100,16 +100,16 @@ }, "handlers" : { "create" : { - "permissions" : [ "devicefarm:CreateProject", "devicefarm:TagResource" ] + "permissions" : [ "devicefarm:CreateProject", "devicefarm:TagResource", "devicefarm:GetProject", "devicefarm:ListTagsForResource", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:CreateNetworkInterface", "iam:CreateServiceLinkedRole" ] }, "read" : { "permissions" : [ "devicefarm:GetProject", "devicefarm:ListTagsForResource" ] }, "update" : { - "permissions" : [ "devicefarm:UpdateProject", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource" ] + "permissions" : [ "devicefarm:UpdateProject", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource", "devicefarm:GetProject", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:CreateNetworkInterface", "iam:CreateServiceLinkedRole" ] }, "delete" : { - "permissions" : [ "devicefarm:DeleteProject" ] + "permissions" : [ "devicefarm:DeleteProject", "devicefarm:UntagResource", "devicefarm:GetProject", "devicefarm:ListTagsForResource" ] }, "list" : { "permissions" : [ "devicefarm:ListProjects" ] diff --git a/aws-cloudformation-schema/aws-devicefarm-testgridproject.json b/aws-cloudformation-schema/aws-devicefarm-testgridproject.json index 9ed1aeba8e..5449bb6d49 100644 --- a/aws-cloudformation-schema/aws-devicefarm-testgridproject.json +++ b/aws-cloudformation-schema/aws-devicefarm-testgridproject.json @@ -102,16 +102,16 @@ }, "handlers" : { "create" : { - "permissions" : [ "devicefarm:CreateTestGridProject", "devicefarm:TagResource", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:CreateNetworkInterface", "iam:CreateServiceLinkedRole" ] + "permissions" : [ "devicefarm:CreateTestGridProject", "devicefarm:TagResource", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:CreateNetworkInterface", "iam:CreateServiceLinkedRole", "devicefarm:GetTestGridProject", "devicefarm:ListTagsForResource" ] }, "read" : { "permissions" : [ "devicefarm:GetTestGridProject", "devicefarm:ListTagsForResource" ] }, "update" : { - "permissions" : [ "devicefarm:UpdateTestGridProject", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:CreateNetworkInterface", "iam:CreateServiceLinkedRole" ] + "permissions" : [ "devicefarm:UpdateTestGridProject", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:CreateNetworkInterface", "iam:CreateServiceLinkedRole", "devicefarm:GetTestGridProject" ] }, "delete" : { - "permissions" : [ "devicefarm:DeleteTestGridProject" ] + "permissions" : [ "devicefarm:DeleteTestGridProject", "devicefarm:UntagResource", "devicefarm:GetTestGridProject", "devicefarm:ListTagsForResource" ] }, "list" : { "permissions" : [ "devicefarm:ListTestGridProjects" ] diff --git a/aws-cloudformation-schema/aws-devicefarm-vpceconfiguration.json b/aws-cloudformation-schema/aws-devicefarm-vpceconfiguration.json index 440c886f14..c74bf09d42 100644 --- a/aws-cloudformation-schema/aws-devicefarm-vpceconfiguration.json +++ b/aws-cloudformation-schema/aws-devicefarm-vpceconfiguration.json @@ -66,16 +66,16 @@ }, "handlers" : { "create" : { - "permissions" : [ "devicefarm:CreateVPCEConfiguration", "devicefarm:TagResource" ] + "permissions" : [ "devicefarm:CreateVPCEConfiguration", "devicefarm:TagResource", "devicefarm:GetVPCEConfiguration", "devicefarm:ListTagsForResource" ] }, "read" : { "permissions" : [ "devicefarm:GetVPCEConfiguration", "devicefarm:ListTagsForResource" ] }, "update" : { - "permissions" : [ "devicefarm:UpdateVPCEConfiguration", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource" ] + "permissions" : [ "devicefarm:UpdateVPCEConfiguration", "devicefarm:GetVPCEConfiguration", "devicefarm:TagResource", "devicefarm:UntagResource", "devicefarm:ListTagsForResource" ] }, "delete" : { - "permissions" : [ "devicefarm:DeleteVPCEConfiguration", "devicefarm:UntagResource" ] + "permissions" : [ "devicefarm:DeleteVPCEConfiguration", "devicefarm:UntagResource", "devicefarm:ListTagsForResource", "devicefarm:GetVPCEConfiguration" ] }, "list" : { "permissions" : [ "devicefarm:ListVPCEConfigurations" ] diff --git a/aws-cloudformation-schema/aws-dms-dataprovider.json b/aws-cloudformation-schema/aws-dms-dataprovider.json new file mode 100644 index 0000000000..ef5b92fda6 --- /dev/null +++ b/aws-cloudformation-schema/aws-dms-dataprovider.json @@ -0,0 +1,237 @@ +{ + "typeName" : "AWS::DMS::DataProvider", + "description" : "Resource schema for AWS::DMS::DataProvider", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-dms.git", + "tagging" : { + "taggable" : true + }, + "definitions" : { + "Tag" : { + "description" : "A key-value pair to associate with a resource.", + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 1, + "maxLength" : 128 + }, + "Value" : { + "type" : "string", + "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 0, + "maxLength" : 256 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + }, + "DmsSslModeValue" : { + "type" : "string", + "enum" : [ "none", "require", "verify_ca", "verify_full" ] + } + }, + "properties" : { + "DataProviderName" : { + "description" : "The property describes a name to identify the data provider.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "DataProviderIdentifier" : { + "description" : "The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "DataProviderArn" : { + "description" : "The data provider ARN.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "DataProviderCreationTime" : { + "description" : "The data provider creation time.", + "type" : "string", + "minLength" : 1, + "maxLength" : 40 + }, + "Description" : { + "description" : "The optional description of the data provider.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "Engine" : { + "description" : "The property describes a data engine for the data provider.", + "type" : "string", + "enum" : [ "postgresql", "mysql", "oracle", "sqlserver", "aurora", "aurora_postgresql" ] + }, + "ExactSettings" : { + "description" : "The property describes the exact settings which can be modified", + "type" : "boolean", + "default" : false + }, + "Settings" : { + "description" : "The property identifies the exact type of settings for the data provider.", + "type" : "object", + "oneOf" : [ { + "description" : "PostgreSqlSettings property identifier.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "PostgreSqlSettings" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ServerName" : { + "type" : "string" + }, + "Port" : { + "type" : "integer" + }, + "DatabaseName" : { + "type" : "string" + }, + "SslMode" : { + "type" : "object", + "$ref" : "#/definitions/DmsSslModeValue" + }, + "CertificateArn" : { + "type" : "string" + } + } + } + } + }, { + "description" : "MySqlSettings property identifier.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "MySqlSettings" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ServerName" : { + "type" : "string" + }, + "Port" : { + "type" : "integer" + }, + "SslMode" : { + "type" : "object", + "$ref" : "#/definitions/DmsSslModeValue" + }, + "CertificateArn" : { + "type" : "string" + } + } + } + } + }, { + "description" : "OracleSettings property identifier.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "OracleSettings" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ServerName" : { + "type" : "string" + }, + "Port" : { + "type" : "integer" + }, + "DatabaseName" : { + "type" : "string" + }, + "SslMode" : { + "type" : "object", + "$ref" : "#/definitions/DmsSslModeValue" + }, + "CertificateArn" : { + "type" : "string" + }, + "AsmServer" : { + "type" : "string" + }, + "SecretsManagerOracleAsmSecretId" : { + "type" : "string" + }, + "SecretsManagerOracleAsmAccessRoleArn" : { + "type" : "string" + }, + "SecretsManagerSecurityDbEncryptionSecretId" : { + "type" : "string" + }, + "SecretsManagerSecurityDbEncryptionAccessRoleArn" : { + "type" : "string" + } + } + } + } + }, { + "description" : "MicrosoftSqlServerSettings property identifier.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "MicrosoftSqlServerSettings" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ServerName" : { + "type" : "string" + }, + "Port" : { + "type" : "integer" + }, + "DatabaseName" : { + "type" : "string" + }, + "SslMode" : { + "type" : "object", + "$ref" : "#/definitions/DmsSslModeValue" + }, + "CertificateArn" : { + "type" : "string" + } + } + } + } + } ] + }, + "Tags" : { + "description" : "An array of key-value pairs to apply to this resource.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Tag" + } + } + }, + "additionalProperties" : false, + "required" : [ "Engine" ], + "primaryIdentifier" : [ "/properties/DataProviderArn" ], + "additionalIdentifiers" : [ [ "/properties/DataProviderName" ] ], + "readOnlyProperties" : [ "/properties/DataProviderArn", "/properties/DataProviderCreationTime" ], + "writeOnlyProperties" : [ "/properties/DataProviderIdentifier", "/properties/ExactSettings" ], + "handlers" : { + "create" : { + "permissions" : [ "dms:CreateDataProvider", "dms:ListDataProviders", "dms:DescribeDataProviders", "dms:AddTagsToResource", "dms:ListTagsForResource" ] + }, + "read" : { + "permissions" : [ "dms:ListDataProviders", "dms:DescribeDataProviders", "dms:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "dms:UpdateDataProvider", "dms:ModifyDataProvider", "dms:AddTagsToResource", "dms:RemoveTagsToResource", "dms:ListTagsForResource" ] + }, + "delete" : { + "permissions" : [ "dms:DeleteDataProvider" ] + }, + "list" : { + "permissions" : [ "dms:ListDataProviders", "dms:DescribeDataProviders", "dms:ListTagsForResource" ] + } + } +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-dms-endpoint.json b/aws-cloudformation-schema/aws-dms-endpoint.json index fd1857d1bf..8c05658c64 100644 --- a/aws-cloudformation-schema/aws-dms-endpoint.json +++ b/aws-cloudformation-schema/aws-dms-endpoint.json @@ -151,20 +151,32 @@ "type" : "object", "additionalProperties" : false, "properties" : { - "SecretsManagerSecretId" : { - "type" : "string" + "LoadTimeout" : { + "type" : "integer" }, "SetDataCaptureChanges" : { "type" : "boolean" }, - "SecretsManagerAccessRoleArn" : { - "type" : "string" + "MaxFileSize" : { + "type" : "integer" + }, + "KeepCsvFiles" : { + "type" : "boolean" }, "CurrentLsn" : { "type" : "string" }, "MaxKBytesPerRead" : { "type" : "integer" + }, + "SecretsManagerSecretId" : { + "type" : "string" + }, + "WriteBufferSize" : { + "type" : "integer" + }, + "SecretsManagerAccessRoleArn" : { + "type" : "string" } } }, diff --git a/aws-cloudformation-schema/aws-dms-instanceprofile.json b/aws-cloudformation-schema/aws-dms-instanceprofile.json new file mode 100644 index 0000000000..54bf5868e6 --- /dev/null +++ b/aws-cloudformation-schema/aws-dms-instanceprofile.json @@ -0,0 +1,130 @@ +{ + "typeName" : "AWS::DMS::InstanceProfile", + "description" : "Resource schema for AWS::DMS::InstanceProfile.", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-csf.git", + "tagging" : { + "taggable" : true + }, + "definitions" : { + "Tag" : { + "description" : "A key-value pair to associate with a resource.", + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 1, + "maxLength" : 128 + }, + "Value" : { + "type" : "string", + "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 0, + "maxLength" : 256 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + } + }, + "additionalProperties" : false, + "properties" : { + "InstanceProfileArn" : { + "description" : "The property describes an ARN of the instance profile.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "InstanceProfileIdentifier" : { + "description" : "The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "AvailabilityZone" : { + "description" : "The property describes an availability zone of the instance profile.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "Description" : { + "description" : "The optional description of the instance profile.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "KmsKeyArn" : { + "description" : "The property describes kms key arn for the instance profile.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "PubliclyAccessible" : { + "description" : "The property describes the publicly accessible of the instance profile", + "type" : "boolean", + "default" : false + }, + "NetworkType" : { + "description" : "The property describes a network type for the instance profile.", + "type" : "string", + "enum" : [ "IPV4", "IPV6", "DUAL" ] + }, + "InstanceProfileName" : { + "description" : "The property describes a name for the instance profile.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "InstanceProfileCreationTime" : { + "description" : "The property describes a creating time of the instance profile.", + "type" : "string", + "minLength" : 1, + "maxLength" : 40 + }, + "SubnetGroupIdentifier" : { + "description" : "The property describes a subnet group identifier for the instance profile.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "VpcSecurityGroups" : { + "description" : "The property describes vps security groups for the instance profile.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "type" : "string" + } + }, + "Tags" : { + "description" : "An array of key-value pairs to apply to this resource.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Tag" + } + } + }, + "readOnlyProperties" : [ "/properties/InstanceProfileArn", "/properties/InstanceProfileCreationTime" ], + "primaryIdentifier" : [ "/properties/InstanceProfileArn" ], + "additionalIdentifiers" : [ [ "/properties/InstanceProfileName" ] ], + "writeOnlyProperties" : [ "/properties/InstanceProfileIdentifier" ], + "handlers" : { + "create" : { + "permissions" : [ "dms:CreateInstanceProfile", "dms:ListInstanceProfiles", "dms:DescribeInstanceProfiles", "dms:AddTagsToResource", "dms:ListTagsForResource" ] + }, + "read" : { + "permissions" : [ "dms:ListInstanceProfiles", "dms:DescribeInstanceProfiles", "dms:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "dms:UpdateInstanceProfile", "dms:ModifyInstanceProfile", "dms:AddTagsToResource", "dms:RemoveTagsToResource", "dms:ListTagsForResource" ] + }, + "delete" : { + "permissions" : [ "dms:DeleteInstanceProfile" ] + }, + "list" : { + "permissions" : [ "dms:ListInstanceProfiles", "dms:DescribeInstanceProfiles", "dms:ListTagsForResource" ] + } + } +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-dms-migrationproject.json b/aws-cloudformation-schema/aws-dms-migrationproject.json new file mode 100644 index 0000000000..df28916952 --- /dev/null +++ b/aws-cloudformation-schema/aws-dms-migrationproject.json @@ -0,0 +1,169 @@ +{ + "typeName" : "AWS::DMS::MigrationProject", + "description" : "Resource schema for AWS::DMS::MigrationProject", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-csf.git", + "tagging" : { + "taggable" : true + }, + "definitions" : { + "Tag" : { + "description" : "A key-value pair to associate with a resource.", + "type" : "object", + "properties" : { + "Key" : { + "type" : "string", + "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, , and -.", + "minLength" : 1, + "maxLength" : 128 + }, + "Value" : { + "type" : "string", + "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, , and -.", + "minLength" : 0, + "maxLength" : 256 + } + }, + "required" : [ "Key", "Value" ], + "additionalProperties" : false + }, + "DataProviderDescriptor" : { + "type" : "object", + "description" : "It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject", + "additionalProperties" : false, + "properties" : { + "DataProviderIdentifier" : { + "type" : "string" + }, + "DataProviderName" : { + "type" : "string" + }, + "DataProviderArn" : { + "type" : "string" + }, + "SecretsManagerSecretId" : { + "type" : "string" + }, + "SecretsManagerAccessRoleArn" : { + "type" : "string" + } + } + } + }, + "additionalProperties" : false, + "properties" : { + "MigrationProjectName" : { + "description" : "The property describes a name to identify the migration project.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "MigrationProjectIdentifier" : { + "description" : "The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "MigrationProjectArn" : { + "description" : "The property describes an ARN of the migration project.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "MigrationProjectCreationTime" : { + "description" : "The property describes a creating time of the migration project.", + "type" : "string", + "minLength" : 1, + "maxLength" : 40 + }, + "InstanceProfileIdentifier" : { + "description" : "The property describes an instance profile identifier for the migration project. For create", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "InstanceProfileName" : { + "description" : "The property describes an instance profile name for the migration project. For read", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "InstanceProfileArn" : { + "description" : "The property describes an instance profile arn for the migration project. For read", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "TransformationRules" : { + "description" : "The property describes transformation rules for the migration project.", + "type" : "string" + }, + "Description" : { + "description" : "The optional description of the migration project.", + "type" : "string", + "minLength" : 1, + "maxLength" : 255 + }, + "SchemaConversionApplicationAttributes" : { + "description" : "The property describes schema conversion application attributes for the migration project.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "S3BucketPath" : { + "type" : "string" + }, + "S3BucketRoleArn" : { + "type" : "string" + } + } + }, + "SourceDataProviderDescriptors" : { + "description" : "The property describes source data provider descriptors for the migration project.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/DataProviderDescriptor" + } + }, + "TargetDataProviderDescriptors" : { + "description" : "The property describes target data provider descriptors for the migration project.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/DataProviderDescriptor" + } + }, + "Tags" : { + "description" : "An array of key-value pairs to apply to this resource.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Tag" + } + } + }, + "primaryIdentifier" : [ "/properties/MigrationProjectArn" ], + "additionalIdentifiers" : [ [ "/properties/MigrationProjectName" ] ], + "readOnlyProperties" : [ "/properties/MigrationProjectArn" ], + "deprecatedProperties" : [ "/properties/MigrationProjectCreationTime" ], + "writeOnlyProperties" : [ "/properties/MigrationProjectIdentifier", "/properties/InstanceProfileIdentifier", "/properties/SourceDataProviderDescriptors/*/DataProviderIdentifier", "/properties/TargetDataProviderDescriptors/*/DataProviderIdentifier" ], + "handlers" : { + "create" : { + "permissions" : [ "dms:CreateMigrationProject", "dms:ListMigrationProjects", "dms:DescribeMigrationProjects", "dms:AddTagsToResource", "dms:ListTagsForResource", "iam:PassRole" ] + }, + "read" : { + "permissions" : [ "dms:DescribeMigrationProjects", "dms:ListMigrationProjects", "dms:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "dms:UpdateMigrationProject", "dms:ModifyMigrationProject", "dms:AddTagsToResource", "dms:RemoveTagsToResource", "dms:ListTagsForResource", "iam:PassRole" ] + }, + "delete" : { + "permissions" : [ "dms:DeleteMigrationProject" ] + }, + "list" : { + "permissions" : [ "dms:ListMigrationProjects", "dms:DescribeMigrationProjects", "dms:ListTagsForResource" ] + } + } +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-dms-replicationconfig.json b/aws-cloudformation-schema/aws-dms-replicationconfig.json index 6c1b9ebb2e..f0824245e3 100644 --- a/aws-cloudformation-schema/aws-dms-replicationconfig.json +++ b/aws-cloudformation-schema/aws-dms-replicationconfig.json @@ -114,8 +114,10 @@ "description" : "

Contains a map of the key-value pairs for the resource tag or tags assigned to the dataset.

" } }, + "createOnlyProperties" : [ "/properties/ResourceIdentifier" ], "readOnlyProperties" : [ "/Properties/ReplicationConfigArn" ], "primaryIdentifier" : [ "/properties/ReplicationConfigArn" ], + "additionalIdentifiers" : [ [ "/properties/ReplicationConfigIdentifier" ] ], "tagging" : { "taggable" : true, "tagOnCreate" : true, @@ -126,19 +128,19 @@ "additionalProperties" : false, "handlers" : { "create" : { - "permissions" : [ "dms:CreateReplicationConfig", "dms:AddTagsToResource", "dms:ListTagsForResource" ] + "permissions" : [ "dms:CreateReplicationConfig", "dms:AddTagsToResource", "dms:ListTagsForResource", "iam:CreateServiceLinkedRole", "iam:AttachRolePolicy", "iam:PutRolePolicy", "iam:UpdateRoleDescription" ] }, "read" : { "permissions" : [ "dms:DescribeReplicationConfigs", "dms:ListTagsForResource" ] }, "update" : { - "permissions" : [ "dms:ModifyReplicationConfig", "dms:AddTagsToResource", "dms:RemoveTagsToResource", "dms:ListTagsForResource" ] + "permissions" : [ "dms:ModifyReplicationConfig", "dms:AddTagsToResource", "dms:RemoveTagsToResource", "dms:ListTagsForResource", "iam:CreateServiceLinkedRole", "iam:AttachRolePolicy", "iam:PutRolePolicy", "iam:UpdateRoleDescription" ] }, "list" : { "permissions" : [ "dms:DescribeReplicationConfigs", "dms:ListTagsForResource" ] }, "delete" : { - "permissions" : [ "dms:DescribeReplicationConfigs", "dms:DeleteReplicationConfig", "dms:ListTagsForResource" ] + "permissions" : [ "dms:DescribeReplicationConfigs", "dms:DeleteReplicationConfig", "dms:ListTagsForResource", "iam:DeleteServiceLinkedRole", "iam:GetServiceLinkedRoleDeletionStatus" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-ec2-instance.json b/aws-cloudformation-schema/aws-ec2-instance.json index e89eed789a..d37ac6eac7 100644 --- a/aws-cloudformation-schema/aws-ec2-instance.json +++ b/aws-cloudformation-schema/aws-ec2-instance.json @@ -53,14 +53,14 @@ }, "ElasticGpuSpecifications" : { "type" : "array", - "uniqueItems" : true, + "uniqueItems" : false, "items" : { "$ref" : "#/definitions/ElasticGpuSpecification" } }, "ElasticInferenceAccelerators" : { "type" : "array", - "uniqueItems" : true, + "uniqueItems" : false, "items" : { "$ref" : "#/definitions/ElasticInferenceAccelerator" } @@ -115,11 +115,14 @@ }, "LicenseSpecifications" : { "type" : "array", - "uniqueItems" : true, + "uniqueItems" : false, "items" : { "$ref" : "#/definitions/LicenseSpecification" } }, + "InstanceId" : { + "type" : "string" + }, "PublicIp" : { "type" : "string" }, @@ -176,9 +179,6 @@ "Affinity" : { "type" : "string" }, - "Id" : { - "type" : "string" - }, "CreditSpecification" : { "$ref" : "#/definitions/CreditSpecification" } @@ -231,10 +231,6 @@ } } }, - "NoDevice" : { - "type" : "object", - "additionalProperties" : false - }, "InstanceIpv6Address" : { "type" : "object", "additionalProperties" : false, @@ -442,7 +438,7 @@ "additionalProperties" : false, "properties" : { "NoDevice" : { - "$ref" : "#/definitions/NoDevice" + "type" : "object" }, "VirtualName" : { "type" : "string" @@ -479,7 +475,7 @@ } } }, - "createOnlyProperties" : [ "/properties/ElasticGpuSpecifications", "/properties/Ipv6Addresses", "/properties/PlacementGroupName", "/properties/HostResourceGroupArn", "/properties/ImageId", "/properties/CpuOptions", "/properties/PrivateIpAddress", "/properties/ElasticInferenceAccelerators", "/properties/EnclaveOptions", "/properties/HibernationOptions", "/properties/KeyName", "/properties/LicenseSpecifications", "/properties/NetworkInterfaces", "/properties/AvailabilityZone", "/properties/SubnetId", "/properties/LaunchTemplate", "/properties/SecurityGroups", "/properties/Ipv6AddressCount" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/PublicIp", "/properties/Id", "/properties/PublicDnsName", "/properties/PrivateDnsName", "/properties/PrivateIp" ] + "createOnlyProperties" : [ "/properties/Ipv6Addresses", "/properties/ElasticGpuSpecifications", "/properties/PlacementGroupName", "/properties/HostResourceGroupArn", "/properties/ImageId", "/properties/CpuOptions", "/properties/PrivateIpAddress", "/properties/ElasticInferenceAccelerators", "/properties/EnclaveOptions", "/properties/HibernationOptions", "/properties/LicenseSpecifications", "/properties/KeyName", "/properties/NetworkInterfaces", "/properties/SubnetId", "/properties/AvailabilityZone", "/properties/LaunchTemplate", "/properties/SecurityGroups", "/properties/Ipv6AddressCount" ], + "primaryIdentifier" : [ "/properties/InstanceId" ], + "readOnlyProperties" : [ "/properties/InstanceId", "/properties/PublicIp", "/properties/PublicDnsName", "/properties/PrivateDnsName", "/properties/PrivateIp" ] } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-ec2-ipamallocation.json b/aws-cloudformation-schema/aws-ec2-ipamallocation.json index 312b230868..1e09acc6a2 100644 --- a/aws-cloudformation-schema/aws-ec2-ipamallocation.json +++ b/aws-cloudformation-schema/aws-ec2-ipamallocation.json @@ -4,7 +4,7 @@ "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", "definitions" : { "Cidr" : { - "description" : "Represents a single IPv4 or IPv6 CIDR", + "description" : "Represents an IPAM custom allocation of a single IPv4 or IPv6 CIDR", "type" : "string" } }, diff --git a/aws-cloudformation-schema/aws-ec2-route.json b/aws-cloudformation-schema/aws-ec2-route.json index c5caa1bdb6..4ef85c02de 100644 --- a/aws-cloudformation-schema/aws-ec2-route.json +++ b/aws-cloudformation-schema/aws-ec2-route.json @@ -12,6 +12,10 @@ "type" : "string", "description" : "The primary identifier of the resource generated by the service." }, + "CoreNetworkArn" : { + "type" : "string", + "description" : "The Amazon Resource Name (ARN) of the core network." + }, "DestinationCidrBlock" : { "type" : "string", "description" : "The IPv4 CIDR block used for the destination match." diff --git a/aws-cloudformation-schema/aws-ec2-securitygroupegress.json b/aws-cloudformation-schema/aws-ec2-securitygroupegress.json index 7b2dcb64d2..4197067630 100644 --- a/aws-cloudformation-schema/aws-ec2-securitygroupegress.json +++ b/aws-cloudformation-schema/aws-ec2-securitygroupegress.json @@ -1,41 +1,75 @@ { + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ec2.git", + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false + }, + "handlers" : { + "read" : { + "permissions" : [ "ec2:DescribeSecurityGroupRules" ] + }, + "create" : { + "permissions" : [ "ec2:AuthorizeSecurityGroupEgress", "ec2:RevokeSecurityGroupEgress", "ec2:DescribeSecurityGroupRules" ] + }, + "update" : { + "permissions" : [ "ec2:UpdateSecurityGroupRuleDescriptionsEgress" ] + }, + "list" : { + "permissions" : [ "ec2:DescribeSecurityGroupRules" ] + }, + "delete" : { + "permissions" : [ "ec2:RevokeSecurityGroupEgress", "ec2:DescribeSecurityGroupRules" ] + } + }, "typeName" : "AWS::EC2::SecurityGroupEgress", + "readOnlyProperties" : [ "/properties/Id" ], "description" : "Resource Type definition for AWS::EC2::SecurityGroupEgress", + "createOnlyProperties" : [ "/properties/IpProtocol", "/properties/DestinationSecurityGroupId", "/properties/ToPort", "/properties/CidrIp", "/properties/FromPort", "/properties/GroupId", "/properties/CidrIpv6", "/properties/DestinationPrefixListId" ], "additionalProperties" : false, + "primaryIdentifier" : [ "/properties/Id" ], + "required" : [ "IpProtocol", "GroupId" ], "properties" : { - "Id" : { - "type" : "string" - }, "CidrIp" : { + "description" : "The IPv4 ranges", "type" : "string" }, "CidrIpv6" : { + "description" : "[VPC only] The IPv6 ranges", "type" : "string" }, "Description" : { + "description" : "Resource Type definition for an egress (outbound) security group rule.", "type" : "string" }, - "DestinationPrefixListId" : { + "FromPort" : { + "description" : "The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.", + "type" : "integer" + }, + "ToPort" : { + "description" : "The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.", + "type" : "integer" + }, + "IpProtocol" : { + "description" : "[VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed.", "type" : "string" }, "DestinationSecurityGroupId" : { + "description" : "You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6).", "type" : "string" }, - "FromPort" : { - "type" : "integer" - }, - "GroupId" : { + "Id" : { + "description" : "The Security Group Rule Id", "type" : "string" }, - "IpProtocol" : { + "DestinationPrefixListId" : { + "description" : "[EC2-VPC only] The ID of a prefix list.", "type" : "string" }, - "ToPort" : { - "type" : "integer" + "GroupId" : { + "description" : "The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.", + "type" : "string" } - }, - "required" : [ "IpProtocol", "GroupId" ], - "createOnlyProperties" : [ "/properties/IpProtocol", "/properties/DestinationSecurityGroupId", "/properties/ToPort", "/properties/CidrIp", "/properties/FromPort", "/properties/GroupId", "/properties/CidrIpv6", "/properties/DestinationPrefixListId" ], - "readOnlyProperties" : [ "/properties/Id" ], - "primaryIdentifier" : [ "/properties/Id" ] + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-ec2-snapshotblockpublicaccess.json b/aws-cloudformation-schema/aws-ec2-snapshotblockpublicaccess.json new file mode 100644 index 0000000000..7e78b5d74d --- /dev/null +++ b/aws-cloudformation-schema/aws-ec2-snapshotblockpublicaccess.json @@ -0,0 +1,40 @@ +{ + "typeName" : "AWS::EC2::SnapshotBlockPublicAccess", + "description" : "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-ec2.git", + "additionalProperties" : false, + "properties" : { + "State" : { + "type" : "string", + "description" : "The state of EBS Snapshot Block Public Access.", + "enum" : [ "block-all-sharing", "block-new-sharing" ] + }, + "AccountId" : { + "type" : "string", + "description" : "The identifier for the specified AWS account." + } + }, + "primaryIdentifier" : [ "/properties/AccountId" ], + "readOnlyProperties" : [ "/properties/AccountId" ], + "required" : [ "State" ], + "tagging" : { + "taggable" : false + }, + "handlers" : { + "create" : { + "permissions" : [ "ec2:EnableSnapshotBlockPublicAccess", "ec2:GetSnapshotBlockPublicAccessState" ] + }, + "read" : { + "permissions" : [ "ec2:GetSnapshotBlockPublicAccessState" ] + }, + "update" : { + "permissions" : [ "ec2:EnableSnapshotBlockPublicAccess", "ec2:GetSnapshotBlockPublicAccessState" ] + }, + "delete" : { + "permissions" : [ "ec2:DisableSnapshotBlockPublicAccess", "ec2:GetSnapshotBlockPublicAccessState" ] + }, + "list" : { + "permissions" : [ "ec2:GetSnapshotBlockPublicAccessState" ] + } + } +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-ec2-verifiedaccesstrustprovider.json b/aws-cloudformation-schema/aws-ec2-verifiedaccesstrustprovider.json index 478d950c28..df66aa0ef3 100644 --- a/aws-cloudformation-schema/aws-ec2-verifiedaccesstrustprovider.json +++ b/aws-cloudformation-schema/aws-ec2-verifiedaccesstrustprovider.json @@ -45,6 +45,10 @@ "TenantId" : { "type" : "string", "description" : "The ID of the tenant application with the device-identity provider." + }, + "PublicSigningKeyUrl" : { + "type" : "string", + "description" : "URL Verified Access will use to verify authenticity of the device tokens." } }, "additionalProperties" : false diff --git a/aws-cloudformation-schema/aws-ecs-capacityprovider.json b/aws-cloudformation-schema/aws-ecs-capacityprovider.json index 46a996e276..1df3e93899 100644 --- a/aws-cloudformation-schema/aws-ecs-capacityprovider.json +++ b/aws-cloudformation-schema/aws-ecs-capacityprovider.json @@ -1,97 +1,104 @@ { + "propertyTransform" : { + "/properties/AutoScalingGroupProvider/AutoScalingGroupArn" : "$split(AutoScalingGroupProvider.AutoScalingGroupArn, \"autoScalingGroupName/\")[-1] $OR $split(AutoScalingGroupArn, \"autoScalingGroupName/\")[-1]" + }, + "tagging" : { + "taggable" : true + }, + "handlers" : { + "read" : { + "permissions" : [ "ecs:DescribeCapacityProviders" ] + }, + "create" : { + "permissions" : [ "autoscaling:CreateOrUpdateTags", "ecs:CreateCapacityProvider", "ecs:DescribeCapacityProviders", "ecs:TagResource" ] + }, + "update" : { + "permissions" : [ "ecs:UpdateCapacityProvider", "ecs:DescribeCapacityProviders", "ecs:ListTagsForResource", "ecs:TagResource", "ecs:UntagResource" ] + }, + "list" : { + "permissions" : [ "ecs:DescribeCapacityProviders" ] + }, + "delete" : { + "permissions" : [ "ecs:DescribeCapacityProviders", "ecs:DeleteCapacityProvider" ] + } + }, "typeName" : "AWS::ECS::CapacityProvider", "description" : "Resource Type definition for AWS::ECS::CapacityProvider.", + "createOnlyProperties" : [ "/properties/AutoScalingGroupProvider/AutoScalingGroupArn", "/properties/Name" ], + "additionalProperties" : false, + "primaryIdentifier" : [ "/properties/Name" ], "definitions" : { "ManagedScaling" : { "description" : "The managed scaling settings for the Auto Scaling group capacity provider.", + "additionalProperties" : false, "type" : "object", "properties" : { + "Status" : { + "type" : "string", + "enum" : [ "DISABLED", "ENABLED" ] + }, "MinimumScalingStepSize" : { "type" : "integer" }, - "MaximumScalingStepSize" : { + "InstanceWarmupPeriod" : { "type" : "integer" }, - "Status" : { - "type" : "string", - "enum" : [ "DISABLED", "ENABLED" ] - }, "TargetCapacity" : { "type" : "integer" }, - "InstanceWarmupPeriod" : { + "MaximumScalingStepSize" : { "type" : "integer" } - }, - "additionalProperties" : false + } }, "AutoScalingGroupProvider" : { + "additionalProperties" : false, "type" : "object", "properties" : { - "AutoScalingGroupArn" : { - "type" : "string" - }, "ManagedScaling" : { "$ref" : "#/definitions/ManagedScaling" }, + "AutoScalingGroupArn" : { + "type" : "string" + }, "ManagedTerminationProtection" : { "type" : "string", "enum" : [ "DISABLED", "ENABLED" ] + }, + "ManagedDraining" : { + "type" : "string", + "enum" : [ "DISABLED", "ENABLED" ] } }, - "required" : [ "AutoScalingGroupArn" ], - "additionalProperties" : false + "required" : [ "AutoScalingGroupArn" ] }, "Tag" : { + "additionalProperties" : false, "type" : "object", "properties" : { - "Key" : { - "type" : "string", - "minLength" : 1 - }, "Value" : { - "type" : "string", - "minLength" : 1 + "minLength" : 1, + "type" : "string" + }, + "Key" : { + "minLength" : 1, + "type" : "string" } - }, - "additionalProperties" : false + } } }, "properties" : { "AutoScalingGroupProvider" : { "$ref" : "#/definitions/AutoScalingGroupProvider" }, - "Name" : { - "type" : "string" - }, "Tags" : { "type" : "array", "items" : { "$ref" : "#/definitions/Tag" } - } - }, - "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/Name" ], - "createOnlyProperties" : [ "/properties/AutoScalingGroupProvider/AutoScalingGroupArn", "/properties/Name" ], - "propertyTransform" : { - "/properties/AutoScalingGroupProvider/AutoScalingGroupArn" : "$split(AutoScalingGroupProvider.AutoScalingGroupArn, \"autoScalingGroupName/\")[-1] $OR $split(AutoScalingGroupArn, \"autoScalingGroupName/\")[-1]" - }, - "handlers" : { - "create" : { - "permissions" : [ "autoscaling:CreateOrUpdateTags", "ecs:CreateCapacityProvider", "ecs:DescribeCapacityProviders", "ecs:TagResource" ] - }, - "delete" : { - "permissions" : [ "ecs:DescribeCapacityProviders", "ecs:DeleteCapacityProvider" ] }, - "read" : { - "permissions" : [ "ecs:DescribeCapacityProviders" ] - }, - "update" : { - "permissions" : [ "ecs:UpdateCapacityProvider", "ecs:DescribeCapacityProviders", "ecs:ListTagsForResource", "ecs:TagResource", "ecs:UntagResource" ] - }, - "list" : { - "permissions" : [ "ecs:DescribeCapacityProviders" ] + "Name" : { + "type" : "string" } }, "required" : [ "AutoScalingGroupProvider" ] diff --git a/aws-cloudformation-schema/aws-ecs-clustercapacityproviderassociations.json b/aws-cloudformation-schema/aws-ecs-clustercapacityproviderassociations.json index 15c075d8ee..6b39c47c67 100644 --- a/aws-cloudformation-schema/aws-ecs-clustercapacityproviderassociations.json +++ b/aws-cloudformation-schema/aws-ecs-clustercapacityproviderassociations.json @@ -72,6 +72,12 @@ "required" : [ "CapacityProviders", "Cluster", "DefaultCapacityProviderStrategy" ], "createOnlyProperties" : [ "/properties/Cluster" ], "primaryIdentifier" : [ "/properties/Cluster" ], + "tagging" : { + "cloudFormationSystemTags" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "taggable" : false + }, "handlers" : { "create" : { "permissions" : [ "ecs:DescribeClusters", "ecs:PutClusterCapacityProviders" ] diff --git a/aws-cloudformation-schema/aws-ecs-service.json b/aws-cloudformation-schema/aws-ecs-service.json index 671ead77ec..36a2f7c008 100644 --- a/aws-cloudformation-schema/aws-ecs-service.json +++ b/aws-cloudformation-schema/aws-ecs-service.json @@ -11,7 +11,7 @@ "permissions" : [ "ecs:DescribeServices" ] }, "create" : { - "permissions" : [ "ecs:CreateService", "ecs:DescribeServices", "iam:PassRole" ], + "permissions" : [ "ecs:CreateService", "ecs:DescribeServices", "iam:PassRole", "ecs:TagResource" ], "timeoutInMinutes" : 180 }, "update" : { diff --git a/aws-cloudformation-schema/aws-eks-cluster.json b/aws-cloudformation-schema/aws-eks-cluster.json index ec3897ce56..475e357c50 100644 --- a/aws-cloudformation-schema/aws-eks-cluster.json +++ b/aws-cloudformation-schema/aws-eks-cluster.json @@ -1,197 +1,141 @@ { - "tagging" : { - "taggable" : true, - "tagOnCreate" : true, - "tagUpdatable" : true, - "tagProperty" : "/properties/Tags", - "cloudFormationSystemTags" : true - }, "typeName" : "AWS::EKS::Cluster", - "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/Endpoint", "/properties/CertificateAuthorityData", "/properties/ClusterSecurityGroupId", "/properties/EncryptionConfigKeyArn", "/properties/OpenIdConnectIssuerUrl", "/properties/KubernetesNetworkConfig/ServiceIpv6Cidr" ], "description" : "An object representing an Amazon EKS cluster.", - "createOnlyProperties" : [ "/properties/OutpostConfig", "/properties/EncryptionConfig", "/properties/KubernetesNetworkConfig", "/properties/Name", "/properties/RoleArn" ], - "primaryIdentifier" : [ "/properties/Name" ], - "required" : [ "RoleArn", "ResourcesVpcConfig" ], "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-eks.git", - "handlers" : { - "read" : { - "permissions" : [ "eks:DescribeCluster" ] - }, - "create" : { - "permissions" : [ "eks:CreateCluster", "eks:DescribeCluster", "eks:TagResource", "iam:PassRole", "iam:GetRole", "iam:ListAttachedRolePolicies", "iam:CreateServiceLinkedRole", "iam:CreateInstanceProfile", "iam:TagInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:GetInstanceProfile", "iam:DeleteInstanceProfile", "iam:RemoveRoleFromInstanceProfile", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "kms:DescribeKey", "kms:CreateGrant" ] - }, - "update" : { - "permissions" : [ "iam:PassRole", "eks:UpdateClusterConfig", "eks:UpdateClusterVersion", "eks:DescribeCluster", "eks:DescribeUpdate", "eks:TagResource", "eks:UntagResource" ], - "timeoutInMinutes" : 180 - }, - "list" : { - "permissions" : [ "eks:ListClusters" ] - }, - "delete" : { - "permissions" : [ "eks:DeleteCluster", "eks:DescribeCluster" ] - } - }, - "additionalProperties" : false, "definitions" : { - "Logging" : { - "description" : "Enable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs based on log types. By default, cluster control plane logs aren't exported to CloudWatch Logs.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "ClusterLogging" : { - "description" : "The cluster control plane logging configuration for your cluster. ", - "$ref" : "#/definitions/ClusterLogging" - } - } - }, - "EnabledTypes" : { - "description" : "Enable control plane logs for your cluster, all log types will be disabled if the array is empty", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/LoggingTypeConfig" - } - }, "Tag" : { "description" : "A key-value pair to associate with a resource.", - "additionalProperties" : false, "type" : "object", "properties" : { - "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", - "maxLength" : 256 - }, "Key" : { - "minLength" : 1, - "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", "type" : "string", + "description" : "The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 1, "maxLength" : 128 + }, + "Value" : { + "type" : "string", + "description" : "The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.", + "minLength" : 0, + "maxLength" : 256 } }, - "required" : [ "Key", "Value" ] + "required" : [ "Key", "Value" ], + "additionalProperties" : false }, - "ControlPlanePlacement" : { - "description" : "Specify the placement group of the control plane machines for your cluster.", - "additionalProperties" : false, + "Provider" : { "type" : "object", - "properties" : { - "GroupName" : { - "description" : "Specify the placement group name of the control place machines for your cluster.", - "type" : "string" - } - } - }, - "OutpostConfig" : { - "description" : "An object representing the Outpost configuration to use for AWS EKS outpost cluster.", "additionalProperties" : false, - "type" : "object", "properties" : { - "OutpostArns" : { - "description" : "Specify one or more Arn(s) of Outpost(s) on which you would like to create your cluster.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "minItems" : 1, - "type" : "string" - } - }, - "ControlPlanePlacement" : { - "description" : "Specify the placement group of the control plane machines for your cluster.", - "$ref" : "#/definitions/ControlPlanePlacement" - }, - "ControlPlaneInstanceType" : { - "description" : "Specify the Instance type of the machines that should be used to create your cluster.", + "KeyArn" : { + "description" : "Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, created in the same region as the cluster, and if the KMS key was created in a different account, the user must have access to the KMS key.", "type" : "string" } - }, - "required" : [ "OutpostArns", "ControlPlaneInstanceType" ] + } }, "EncryptionConfig" : { "description" : "The encryption configuration for the cluster", - "additionalProperties" : false, "type" : "object", "properties" : { + "Provider" : { + "description" : "The encryption provider for the cluster.", + "$ref" : "#/definitions/Provider" + }, "Resources" : { "description" : "Specifies the resources to be encrypted. The only supported value is \"secrets\".", - "insertionOrder" : false, "type" : "array", + "insertionOrder" : false, "items" : { "type" : "string" } - }, - "Provider" : { - "description" : "The encryption provider for the cluster.", - "$ref" : "#/definitions/Provider" } - } - }, - "LoggingTypeConfig" : { - "description" : "Enabled Logging Type", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "Type" : { - "description" : "name of the log type", - "type" : "string", - "enum" : [ "api", "audit", "authenticator", "controllerManager", "scheduler" ] - } - } + }, + "additionalProperties" : false }, "ResourcesVpcConfig" : { "description" : "An object representing the VPC configuration to use for an Amazon EKS cluster.", - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { + "EndpointPrivateAccess" : { + "description" : "Set this value to true to enable private access for your cluster's Kubernetes API server endpoint. If you enable private access, Kubernetes API requests from within your cluster's VPC use the private VPC endpoint. The default value for this parameter is false, which disables private access for your Kubernetes API server. If you disable private access and you have nodes or AWS Fargate pods in the cluster, then ensure that publicAccessCidrs includes the necessary CIDR blocks for communication with the nodes or Fargate pods.", + "type" : "boolean" + }, "EndpointPublicAccess" : { "description" : "Set this value to false to disable public access to your cluster's Kubernetes API server endpoint. If you disable public access, your cluster's Kubernetes API server can only receive requests from within the cluster VPC. The default value for this parameter is true, which enables public access for your Kubernetes API server.", "type" : "boolean" }, "PublicAccessCidrs" : { "description" : "The CIDR blocks that are allowed access to your cluster's public Kubernetes API server endpoint. Communication to the endpoint from addresses outside of the CIDR blocks that you specify is denied. The default value is 0.0.0.0/0. If you've disabled private endpoint access and you have nodes or AWS Fargate pods in the cluster, then ensure that you specify the necessary CIDR blocks.", - "insertionOrder" : false, "type" : "array", + "insertionOrder" : false, "items" : { - "minItems" : 1, - "type" : "string" + "type" : "string", + "minItems" : 1 } }, - "EndpointPrivateAccess" : { - "description" : "Set this value to true to enable private access for your cluster's Kubernetes API server endpoint. If you enable private access, Kubernetes API requests from within your cluster's VPC use the private VPC endpoint. The default value for this parameter is false, which disables private access for your Kubernetes API server. If you disable private access and you have nodes or AWS Fargate pods in the cluster, then ensure that publicAccessCidrs includes the necessary CIDR blocks for communication with the nodes or Fargate pods.", - "type" : "boolean" - }, "SecurityGroupIds" : { "description" : "Specify one or more security groups for the cross-account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane. If you don't specify a security group, the default security group for your VPC is used.", - "insertionOrder" : false, "type" : "array", + "insertionOrder" : false, "items" : { - "minItems" : 1, - "type" : "string" + "type" : "string", + "minItems" : 1 } }, "SubnetIds" : { "description" : "Specify subnets for your Amazon EKS nodes. Amazon EKS creates cross-account elastic network interfaces in these subnets to allow communication between your nodes and the Kubernetes control plane.", - "insertionOrder" : false, "type" : "array", + "insertionOrder" : false, "items" : { - "minItems" : 1, - "type" : "string" + "type" : "string", + "minItems" : 1 } } }, "required" : [ "SubnetIds" ] }, + "LoggingTypeConfig" : { + "description" : "Enabled Logging Type", + "type" : "object", + "properties" : { + "Type" : { + "description" : "name of the log type", + "type" : "string", + "enum" : [ "api", "audit", "authenticator", "controllerManager", "scheduler" ] + } + }, + "additionalProperties" : false + }, + "EnabledTypes" : { + "description" : "Enable control plane logs for your cluster, all log types will be disabled if the array is empty", + "type" : "array", + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/LoggingTypeConfig" + } + }, "ClusterLogging" : { "description" : "The cluster control plane logging configuration for your cluster. ", - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "EnabledTypes" : { "$ref" : "#/definitions/EnabledTypes" } } }, + "Logging" : { + "description" : "Enable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs based on log types. By default, cluster control plane logs aren't exported to CloudWatch Logs.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "ClusterLogging" : { + "description" : "The cluster control plane logging configuration for your cluster. ", + "$ref" : "#/definitions/ClusterLogging" + } + } + }, "KubernetesNetworkConfig" : { "description" : "The Kubernetes network configuration for the cluster.", "additionalProperties" : false, @@ -212,90 +156,166 @@ } } }, - "Provider" : { + "ControlPlanePlacement" : { + "description" : "Specify the placement group of the control plane machines for your cluster.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "GroupName" : { + "description" : "Specify the placement group name of the control place machines for your cluster.", + "type" : "string" + } + } + }, + "OutpostConfig" : { + "description" : "An object representing the Outpost configuration to use for AWS EKS outpost cluster.", "additionalProperties" : false, "type" : "object", "properties" : { - "KeyArn" : { - "description" : "Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, created in the same region as the cluster, and if the KMS key was created in a different account, the user must have access to the KMS key.", + "OutpostArns" : { + "description" : "Specify one or more Arn(s) of Outpost(s) on which you would like to create your cluster.", + "type" : "array", + "insertionOrder" : false, + "items" : { + "type" : "string", + "minItems" : 1 + } + }, + "ControlPlaneInstanceType" : { + "description" : "Specify the Instance type of the machines that should be used to create your cluster.", "type" : "string" + }, + "ControlPlanePlacement" : { + "description" : "Specify the placement group of the control plane machines for your cluster.", + "$ref" : "#/definitions/ControlPlanePlacement" + } + }, + "required" : [ "OutpostArns", "ControlPlaneInstanceType" ] + }, + "AccessConfig" : { + "description" : "An object representing the Access Config to use for the cluster.", + "additionalProperties" : false, + "type" : "object", + "properties" : { + "BootstrapClusterCreatorAdminPermissions" : { + "description" : "Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster.", + "type" : "boolean" + }, + "AuthenticationMode" : { + "description" : "Specify the authentication mode that should be used to create your cluster.", + "type" : "string", + "enum" : [ "CONFIG_MAP", "API_AND_CONFIG_MAP", "API" ] } } } }, "properties" : { - "Logging" : { - "$ref" : "#/definitions/Logging" - }, - "EncryptionConfigKeyArn" : { - "description" : "Amazon Resource Name (ARN) or alias of the customer master key (CMK).", - "type" : "string" - }, - "CertificateAuthorityData" : { - "description" : "The certificate-authority-data for your cluster.", - "type" : "string" - }, "EncryptionConfig" : { - "insertionOrder" : false, "type" : "array", + "insertionOrder" : false, "items" : { - "maxItems" : 1, - "$ref" : "#/definitions/EncryptionConfig" + "$ref" : "#/definitions/EncryptionConfig", + "maxItems" : 1 } }, "KubernetesNetworkConfig" : { "$ref" : "#/definitions/KubernetesNetworkConfig" }, - "RoleArn" : { - "description" : "The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.", - "type" : "string" + "Logging" : { + "$ref" : "#/definitions/Logging" }, "Name" : { - "minLength" : 1, - "pattern" : "^[0-9A-Za-z][A-Za-z0-9\\-_]*", "description" : "The unique name to give to your cluster.", "type" : "string", + "pattern" : "^[0-9A-Za-z][A-Za-z0-9\\-_]*", + "minLength" : 1, "maxLength" : 100 }, - "Endpoint" : { - "description" : "The endpoint for your Kubernetes API server, such as https://5E1D0CEXAMPLEA591B746AFC5AB30262.yl4.us-west-2.eks.amazonaws.com.", - "type" : "string" - }, - "Version" : { - "pattern" : "1\\.\\d\\d", - "description" : "The desired Kubernetes version for your cluster. If you don't specify a value here, the latest version available in Amazon EKS is used.", - "type" : "string" - }, - "ClusterSecurityGroupId" : { - "description" : "The cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control plane to data plane communication.", - "type" : "string" - }, "Id" : { "description" : "The unique ID given to your cluster.", "type" : "string" }, + "ResourcesVpcConfig" : { + "$ref" : "#/definitions/ResourcesVpcConfig" + }, "OutpostConfig" : { "$ref" : "#/definitions/OutpostConfig" }, - "Arn" : { - "description" : "The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod.", + "AccessConfig" : { + "$ref" : "#/definitions/AccessConfig" + }, + "RoleArn" : { + "description" : "The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.", "type" : "string" }, - "ResourcesVpcConfig" : { - "$ref" : "#/definitions/ResourcesVpcConfig" + "Version" : { + "description" : "The desired Kubernetes version for your cluster. If you don't specify a value here, the latest version available in Amazon EKS is used.", + "type" : "string", + "pattern" : "1\\.\\d\\d" }, "Tags" : { - "uniqueItems" : true, "description" : "An array of key-value pairs to apply to this resource.", - "insertionOrder" : false, "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, "items" : { "$ref" : "#/definitions/Tag" } }, + "Arn" : { + "description" : "The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod.", + "type" : "string" + }, + "Endpoint" : { + "description" : "The endpoint for your Kubernetes API server, such as https://5E1D0CEXAMPLEA591B746AFC5AB30262.yl4.us-west-2.eks.amazonaws.com.", + "type" : "string" + }, + "CertificateAuthorityData" : { + "description" : "The certificate-authority-data for your cluster.", + "type" : "string" + }, + "ClusterSecurityGroupId" : { + "description" : "The cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control plane to data plane communication.", + "type" : "string" + }, + "EncryptionConfigKeyArn" : { + "description" : "Amazon Resource Name (ARN) or alias of the customer master key (CMK).", + "type" : "string" + }, "OpenIdConnectIssuerUrl" : { "description" : "The issuer URL for the cluster's OIDC identity provider, such as https://oidc.eks.us-west-2.amazonaws.com/id/EXAMPLED539D4633E53DE1B716D3041E. If you need to remove https:// from this output value, you can include the following code in your template.", "type" : "string" } + }, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + }, + "additionalProperties" : false, + "required" : [ "RoleArn", "ResourcesVpcConfig" ], + "primaryIdentifier" : [ "/properties/Name" ], + "createOnlyProperties" : [ "/properties/OutpostConfig", "/properties/EncryptionConfig", "/properties/KubernetesNetworkConfig", "/properties/AccessConfig/BootstrapClusterCreatorAdminPermissions", "/properties/Name", "/properties/RoleArn" ], + "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/Endpoint", "/properties/CertificateAuthorityData", "/properties/ClusterSecurityGroupId", "/properties/EncryptionConfigKeyArn", "/properties/OpenIdConnectIssuerUrl", "/properties/KubernetesNetworkConfig/ServiceIpv6Cidr" ], + "writeOnlyProperties" : [ "/properties/AccessConfig/BootstrapClusterCreatorAdminPermissions" ], + "handlers" : { + "create" : { + "permissions" : [ "eks:CreateCluster", "eks:DescribeCluster", "eks:TagResource", "iam:PassRole", "iam:GetRole", "iam:ListAttachedRolePolicies", "iam:CreateServiceLinkedRole", "iam:CreateInstanceProfile", "iam:TagInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:GetInstanceProfile", "iam:DeleteInstanceProfile", "iam:RemoveRoleFromInstanceProfile", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "kms:DescribeKey", "kms:CreateGrant" ] + }, + "read" : { + "permissions" : [ "eks:DescribeCluster" ] + }, + "update" : { + "permissions" : [ "iam:PassRole", "eks:UpdateClusterConfig", "eks:UpdateClusterVersion", "eks:DescribeCluster", "eks:DescribeUpdate", "eks:TagResource", "eks:UntagResource" ], + "timeoutInMinutes" : 180 + }, + "delete" : { + "permissions" : [ "eks:DeleteCluster", "eks:DescribeCluster" ] + }, + "list" : { + "permissions" : [ "eks:ListClusters" ] + } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-elasticache-serverlesscache.json b/aws-cloudformation-schema/aws-elasticache-serverlesscache.json index 82ed3242da..31ec2cbfb6 100644 --- a/aws-cloudformation-schema/aws-elasticache-serverlesscache.json +++ b/aws-cloudformation-schema/aws-elasticache-serverlesscache.json @@ -190,7 +190,7 @@ "tagProperty" : "/properties/Tags" }, "additionalProperties" : false, - "readOnlyProperties" : [ "/properties/FullEngineVersion", "/properties/CreateTime", "/properties/Status", "/properties/Endpoint", "/properties/ReaderEndpoint", "/properties/ARN" ], + "readOnlyProperties" : [ "/properties/FullEngineVersion", "/properties/CreateTime", "/properties/Status", "/properties/Endpoint/Address", "/properties/Endpoint/Port", "/properties/ReaderEndpoint/Address", "/properties/ReaderEndpoint/Port", "/properties/ARN" ], "writeOnlyProperties" : [ "/properties/SnapshotArnsToRestore", "/properties/FinalSnapshotName" ], "createOnlyProperties" : [ "/properties/ServerlessCacheName", "/properties/Engine", "/properties/MajorEngineVersion", "/properties/KmsKeyId", "/properties/SnapshotArnsToRestore", "/properties/SubnetIds" ], "required" : [ "ServerlessCacheName", "Engine" ], diff --git a/aws-cloudformation-schema/aws-elasticloadbalancingv2-targetgroup.json b/aws-cloudformation-schema/aws-elasticloadbalancingv2-targetgroup.json index 31a2322fb7..f9351c879f 100644 --- a/aws-cloudformation-schema/aws-elasticloadbalancingv2-targetgroup.json +++ b/aws-cloudformation-schema/aws-elasticloadbalancingv2-targetgroup.json @@ -193,7 +193,7 @@ }, "handlers" : { "create" : { - "permissions" : [ "elasticloadbalancing:CreateTargetGroup", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:RegisterTargets", "elasticloadbalancing:AddTags" ] + "permissions" : [ "elasticloadbalancing:CreateTargetGroup", "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:RegisterTargets", "elasticloadbalancing:ModifyTargetGroupAttributes", "elasticloadbalancing:DescribeTargetHealth", "elasticloadbalancing:AddTags" ] }, "delete" : { "permissions" : [ "elasticloadbalancing:DeleteTargetGroup", "elasticloadbalancing:DescribeTargetGroups" ] @@ -205,7 +205,7 @@ "permissions" : [ "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:DescribeTargetGroupAttributes", "elasticloadbalancing:DescribeTargetHealth", "elasticloadbalancing:DescribeTags" ] }, "update" : { - "permissions" : [ "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:ModifyTargetGroup", "elasticloadbalancing:ModifyTargetGroupAttributes", "elasticloadbalancing:RegisterTargets", "elasticloadbalancing:DeregisterTargets", "elasticloadbalancing:AddTags", "elasticloadbalancing:RemoveTags" ] + "permissions" : [ "elasticloadbalancing:DescribeTargetGroups", "elasticloadbalancing:ModifyTargetGroup", "elasticloadbalancing:ModifyTargetGroupAttributes", "elasticloadbalancing:RegisterTargets", "elasticloadbalancing:DescribeTargetHealth", "elasticloadbalancing:DeregisterTargets", "elasticloadbalancing:AddTags", "elasticloadbalancing:RemoveTags" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-emr-cluster.json b/aws-cloudformation-schema/aws-emr-cluster.json index 7a9c2dc265..978e768f88 100644 --- a/aws-cloudformation-schema/aws-emr-cluster.json +++ b/aws-cloudformation-schema/aws-emr-cluster.json @@ -10,6 +10,13 @@ "$ref" : "#/definitions/StepConfig" } }, + "PlacementGroupConfigs" : { + "type" : "array", + "uniqueItems" : true, + "items" : { + "$ref" : "#/definitions/PlacementGroupConfig" + } + }, "StepConcurrencyLevel" : { "type" : "integer" }, @@ -83,12 +90,18 @@ "CustomAmiId" : { "type" : "string" }, + "EbsRootVolumeIops" : { + "type" : "integer" + }, "Instances" : { "$ref" : "#/definitions/JobFlowInstancesConfig" }, "ScaleDownBehavior" : { "type" : "string" }, + "EbsRootVolumeThroughput" : { + "type" : "integer" + }, "JobFlowRole" : { "type" : "string" }, @@ -292,6 +305,19 @@ }, "required" : [ "ScalingAdjustment" ] }, + "PlacementGroupConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "InstanceRole" : { + "type" : "string" + }, + "PlacementStrategy" : { + "type" : "string" + } + }, + "required" : [ "InstanceRole" ] + }, "OnDemandProvisioningSpecification" : { "type" : "object", "additionalProperties" : false, @@ -729,7 +755,7 @@ } }, "required" : [ "Instances", "ServiceRole", "JobFlowRole", "Name" ], - "createOnlyProperties" : [ "/properties/Steps", "/properties/EbsRootVolumeSize", "/properties/SecurityConfiguration", "/properties/ScaleDownBehavior", "/properties/Configurations", "/properties/ReleaseLabel", "/properties/BootstrapActions", "/properties/KerberosAttributes", "/properties/ServiceRole", "/properties/LogEncryptionKmsKeyId", "/properties/Name", "/properties/JobFlowRole", "/properties/AdditionalInfo", "/properties/LogUri", "/properties/CustomAmiId", "/properties/OSReleaseLabel", "/properties/AutoScalingRole", "/properties/Applications" ], + "createOnlyProperties" : [ "/properties/Steps", "/properties/EbsRootVolumeSize", "/properties/SecurityConfiguration", "/properties/ScaleDownBehavior", "/properties/Configurations", "/properties/ReleaseLabel", "/properties/BootstrapActions", "/properties/EbsRootVolumeIops", "/properties/KerberosAttributes", "/properties/ServiceRole", "/properties/LogEncryptionKmsKeyId", "/properties/Name", "/properties/EbsRootVolumeThroughput", "/properties/JobFlowRole", "/properties/AdditionalInfo", "/properties/LogUri", "/properties/CustomAmiId", "/properties/PlacementGroupConfigs", "/properties/OSReleaseLabel", "/properties/AutoScalingRole", "/properties/Applications" ], "primaryIdentifier" : [ "/properties/Id" ], "readOnlyProperties" : [ "/properties/Id", "/properties/MasterPublicDNS" ] } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-emr-studio.json b/aws-cloudformation-schema/aws-emr-studio.json index 861755a6e7..c2f02d98c2 100644 --- a/aws-cloudformation-schema/aws-emr-studio.json +++ b/aws-cloudformation-schema/aws-emr-studio.json @@ -134,13 +134,32 @@ "type" : "string", "minLength" : 0, "maxLength" : 256 + }, + "TrustedIdentityPropagationEnabled" : { + "description" : "A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false.", + "type" : "boolean" + }, + "IdcUserAssignment" : { + "description" : "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio.", + "type" : "string", + "enum" : [ "REQUIRED", "OPTIONAL" ] + }, + "IdcInstanceArn" : { + "description" : "The ARN of the IAM Identity Center instance to create the Studio application.", + "type" : "string", + "minLength" : 20, + "maxLength" : 2048 + }, + "EncryptionKeyArn" : { + "description" : "The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3.", + "$ref" : "#/definitions/Arn" } }, "additionalProperties" : false, "required" : [ "AuthMode", "EngineSecurityGroupId", "Name", "ServiceRole", "SubnetIds", "VpcId", "WorkspaceSecurityGroupId", "DefaultS3Location" ], "readOnlyProperties" : [ "/properties/StudioId", "/properties/Arn", "/properties/Url" ], "primaryIdentifier" : [ "/properties/StudioId" ], - "createOnlyProperties" : [ "/properties/AuthMode", "/properties/EngineSecurityGroupId", "/properties/ServiceRole", "/properties/UserRole", "/properties/VpcId", "/properties/WorkspaceSecurityGroupId" ], + "createOnlyProperties" : [ "/properties/AuthMode", "/properties/EngineSecurityGroupId", "/properties/ServiceRole", "/properties/UserRole", "/properties/VpcId", "/properties/WorkspaceSecurityGroupId", "/properties/TrustedIdentityPropagationEnabled", "/properties/IdcUserAssignment", "/properties/IdcInstanceArn", "/properties/EncryptionKeyArn" ], "handlers" : { "create" : { "permissions" : [ "elasticmapreduce:CreateStudio", "elasticmapreduce:DescribeStudio", "elasticmapreduce:AddTags", "sso:CreateManagedApplicationInstance", "sso:DeleteManagedApplicationInstance", "iam:PassRole" ] diff --git a/aws-cloudformation-schema/aws-emr-studiosessionmapping.json b/aws-cloudformation-schema/aws-emr-studiosessionmapping.json index f9dcb57413..818c327fec 100644 --- a/aws-cloudformation-schema/aws-emr-studiosessionmapping.json +++ b/aws-cloudformation-schema/aws-emr-studiosessionmapping.json @@ -40,13 +40,13 @@ "permissions" : [ "elasticmapreduce:CreateStudioSessionMapping", "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:DescribeUser", "sso-directory:DescribeGroup", "sso:ListDirectoryAssociations", "sso:GetProfile", "sso:ListProfiles", "sso:AssociateProfile" ] }, "read" : { - "permissions" : [ "elasticmapreduce:GetStudioSessionMapping", "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:DescribeUser", "sso-directory:DescribeGroup", "sso:GetManagedApplicationInstance" ] + "permissions" : [ "elasticmapreduce:GetStudioSessionMapping", "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:DescribeUser", "sso-directory:DescribeGroup", "sso:GetManagedApplicationInstance", "sso:DescribeInstance" ] }, "update" : { - "permissions" : [ "elasticmapreduce:GetStudioSessionMapping", "elasticmapreduce:UpdateStudioSessionMapping", "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:DescribeUser", "sso-directory:DescribeGroup", "sso:GetManagedApplicationInstance" ] + "permissions" : [ "elasticmapreduce:GetStudioSessionMapping", "elasticmapreduce:UpdateStudioSessionMapping", "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:DescribeUser", "sso-directory:DescribeGroup", "sso:GetManagedApplicationInstance", "sso:DescribeInstance" ] }, "delete" : { - "permissions" : [ "elasticmapreduce:GetStudioSessionMapping", "elasticmapreduce:DeleteStudioSessionMapping", "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:DescribeUser", "sso-directory:DescribeGroup", "sso:ListDirectoryAssociations", "sso:GetProfile", "sso:ListProfiles", "sso:DisassociateProfile" ] + "permissions" : [ "elasticmapreduce:GetStudioSessionMapping", "elasticmapreduce:DeleteStudioSessionMapping", "sso-directory:SearchUsers", "sso-directory:SearchGroups", "sso-directory:DescribeUser", "sso-directory:DescribeGroup", "sso:GetManagedApplicationInstance", "sso:DescribeInstance", "sso:ListDirectoryAssociations", "sso:GetProfile", "sso:ListProfiles", "sso:DisassociateProfile" ] }, "list" : { "permissions" : [ "elasticmapreduce:ListStudioSessionMappings" ] diff --git a/aws-cloudformation-schema/aws-eventschemas-discoverer.json b/aws-cloudformation-schema/aws-eventschemas-discoverer.json index ed856b6185..ffe5e2bf67 100644 --- a/aws-cloudformation-schema/aws-eventschemas-discoverer.json +++ b/aws-cloudformation-schema/aws-eventschemas-discoverer.json @@ -4,26 +4,37 @@ "additionalProperties" : false, "properties" : { "DiscovererArn" : { - "type" : "string" + "type" : "string", + "description" : "The ARN of the discoverer." }, "DiscovererId" : { - "type" : "string" - }, - "CrossAccount" : { - "type" : "boolean" + "type" : "string", + "description" : "The Id of the discoverer." }, "Description" : { - "type" : "string" + "type" : "string", + "description" : "A description for the discoverer." }, "SourceArn" : { - "type" : "string" + "type" : "string", + "description" : "The ARN of the event bus." + }, + "CrossAccount" : { + "type" : "boolean", + "default" : true, + "description" : "Defines whether event schemas from other accounts are discovered. Default is True." + }, + "State" : { + "type" : "string", + "description" : "Defines the current state of the discoverer." }, "Tags" : { "type" : "array", "uniqueItems" : false, "items" : { "$ref" : "#/definitions/TagsEntry" - } + }, + "description" : "Tags associated with the resource." } }, "definitions" : { @@ -42,7 +53,31 @@ } }, "required" : [ "SourceArn" ], + "primaryIdentifier" : [ "/properties/DiscovererArn" ], + "readOnlyProperties" : [ "/properties/DiscovererArn", "/properties/DiscovererId", "/properties/State" ], "createOnlyProperties" : [ "/properties/SourceArn" ], - "primaryIdentifier" : [ "/properties/DiscovererId" ], - "readOnlyProperties" : [ "/properties/DiscovererId", "/properties/DiscovererArn" ] + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : false, + "tagProperty" : "/properties/Tags" + }, + "handlers" : { + "create" : { + "permissions" : [ "schemas:CreateDiscoverer", "schemas:DescribeDiscoverer", "schemas:TagResource", "events:PutRule", "events:PutTargets", "events:EnableRule", "events:ListTargetsByRule", "iam:CreateServiceLinkedRole" ] + }, + "read" : { + "permissions" : [ "schemas:DescribeDiscoverer" ] + }, + "update" : { + "permissions" : [ "schemas:DescribeDiscoverer", "schemas:UpdateDiscoverer", "schemas:TagResource", "schemas:UntagResource", "schemas:ListTagsForResource", "events:PutTargets", "events:PutRule" ] + }, + "delete" : { + "permissions" : [ "schemas:DescribeDiscoverer", "schemas:DeleteDiscoverer", "events:DeleteRule", "events:DisableRule", "events:RemoveTargets" ] + }, + "list" : { + "permissions" : [ "schemas:ListDiscoverers" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-eventschemas-registry.json b/aws-cloudformation-schema/aws-eventschemas-registry.json index 35429a5443..83ba60e618 100644 --- a/aws-cloudformation-schema/aws-eventschemas-registry.json +++ b/aws-cloudformation-schema/aws-eventschemas-registry.json @@ -4,23 +4,24 @@ "additionalProperties" : false, "properties" : { "RegistryName" : { - "type" : "string" + "type" : "string", + "description" : "The name of the schema registry." }, "Description" : { - "type" : "string" - }, - "Id" : { - "type" : "string" + "type" : "string", + "description" : "A description of the registry to be created." }, "RegistryArn" : { - "type" : "string" + "type" : "string", + "description" : "The ARN of the registry." }, "Tags" : { "type" : "array", "uniqueItems" : false, "items" : { "$ref" : "#/definitions/TagsEntry" - } + }, + "description" : "Tags associated with the resource." } }, "definitions" : { @@ -38,7 +39,31 @@ "required" : [ "Value", "Key" ] } }, + "primaryIdentifier" : [ "/properties/RegistryArn" ], + "readOnlyProperties" : [ "/properties/RegistryArn" ], "createOnlyProperties" : [ "/properties/RegistryName" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/RegistryArn", "/properties/Id" ] + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : false, + "tagProperty" : "/properties/Tags" + }, + "handlers" : { + "create" : { + "permissions" : [ "schemas:DescribeRegistry", "schemas:CreateRegistry", "schemas:TagResource" ] + }, + "read" : { + "permissions" : [ "schemas:DescribeRegistry" ] + }, + "update" : { + "permissions" : [ "schemas:DescribeRegistry", "schemas:UpdateRegistry", "schemas:TagResource", "schemas:UntagResource", "schemas:ListTagsForResource" ] + }, + "delete" : { + "permissions" : [ "schemas:DescribeRegistry", "schemas:DeleteRegistry" ] + }, + "list" : { + "permissions" : [ "schemas:ListRegistries" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-eventschemas-schema.json b/aws-cloudformation-schema/aws-eventschemas-schema.json index 6904ee8433..2b0d7e8325 100644 --- a/aws-cloudformation-schema/aws-eventschemas-schema.json +++ b/aws-cloudformation-schema/aws-eventschemas-schema.json @@ -1,38 +1,52 @@ { "typeName" : "AWS::EventSchemas::Schema", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-eventschemas", "description" : "Resource Type definition for AWS::EventSchemas::Schema", "additionalProperties" : false, "properties" : { "Type" : { - "type" : "string" + "type" : "string", + "description" : "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." }, "Description" : { - "type" : "string" + "type" : "string", + "description" : "A description of the schema." }, "SchemaVersion" : { - "type" : "string" + "type" : "string", + "description" : "The version number of the schema." }, "Content" : { - "type" : "string" + "type" : "string", + "description" : "The source of the schema definition." }, "RegistryName" : { - "type" : "string" - }, - "Id" : { - "type" : "string" + "type" : "string", + "description" : "The name of the schema registry." }, "SchemaArn" : { - "type" : "string" + "type" : "string", + "description" : "The ARN of the schema." }, "SchemaName" : { - "type" : "string" + "type" : "string", + "description" : "The name of the schema." + }, + "LastModified" : { + "type" : "string", + "description" : "The last modified time of the schema." + }, + "VersionCreatedDate" : { + "type" : "string", + "description" : "The date the schema version was created." }, "Tags" : { "type" : "array", "uniqueItems" : false, "items" : { "$ref" : "#/definitions/TagsEntry" - } + }, + "description" : "Tags associated with the resource." } }, "definitions" : { @@ -51,7 +65,39 @@ } }, "required" : [ "Type", "Content", "RegistryName" ], + "primaryIdentifier" : [ "/properties/SchemaArn" ], "createOnlyProperties" : [ "/properties/SchemaName", "/properties/RegistryName" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id", "/properties/SchemaVersion", "/properties/SchemaArn" ] + "readOnlyProperties" : [ "/properties/SchemaArn", "/properties/LastModified", "/properties/VersionCreatedDate", "/properties/SchemaVersion" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : false, + "tagProperty" : "/properties/Tags" + }, + "handlers" : { + "create" : { + "permissions" : [ "schemas:DescribeSchema", "schemas:CreateSchema", "schemas:TagResource" ] + }, + "read" : { + "permissions" : [ "schemas:DescribeSchema" ] + }, + "update" : { + "permissions" : [ "schemas:DescribeSchema", "schemas:UpdateSchema", "schemas:TagResource", "schemas:UntagResource", "schemas:ListTagsForResource" ] + }, + "delete" : { + "permissions" : [ "schemas:DescribeSchema", "schemas:DeleteSchema", "schemas:DeleteSchemaVersion" ] + }, + "list" : { + "handlerSchema" : { + "properties" : { + "RegistryName" : { + "type" : "string" + } + }, + "required" : [ "RegistryName" ] + }, + "permissions" : [ "schemas:ListSchemas", "schemas:ListSchemaVersions" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-fis-experimenttemplate.json b/aws-cloudformation-schema/aws-fis-experimenttemplate.json index a5a7f1f872..49ac6719e8 100644 --- a/aws-cloudformation-schema/aws-fis-experimenttemplate.json +++ b/aws-cloudformation-schema/aws-fis-experimenttemplate.json @@ -1,107 +1,96 @@ { - "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-fis.git", - "handlers" : { - "read" : { - "permissions" : [ "fis:GetExperimentTemplate", "fis:ListTagsForResource" ] - }, - "create" : { - "permissions" : [ "fis:CreateExperimentTemplate", "fis:TagResource", "iam:PassRole" ] - }, - "update" : { - "permissions" : [ "fis:UpdateExperimentTemplate", "fis:TagResource", "fis:UntagResource", "iam:PassRole" ] - }, - "list" : { - "permissions" : [ "fis:ListExperimentTemplates", "fis:ListTagsForResource" ] - }, - "delete" : { - "permissions" : [ "fis:DeleteExperimentTemplate" ] - } - }, "typeName" : "AWS::FIS::ExperimentTemplate", - "readOnlyProperties" : [ "/properties/Id" ], "description" : "Resource schema for AWS::FIS::ExperimentTemplate", - "createOnlyProperties" : [ "/properties/Tags" ], - "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/Id" ], + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-fis.git", "definitions" : { - "ExperimentTemplateActionItemDescription" : { - "description" : "A description for the action.", + "ExperimentTemplateId" : { + "type" : "string" + }, + "ExperimentTemplateDescription" : { "type" : "string", + "description" : "A description for the experiment template.", "maxLength" : 512 }, "StopConditionSource" : { "type" : "string", "maxLength" : 64 }, + "StopConditionValue" : { + "type" : "string", + "minLength" : 20, + "maxLength" : 2048 + }, "ExperimentTemplateStopCondition" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { - "Value" : { - "$ref" : "#/definitions/StopConditionValue" - }, "Source" : { "$ref" : "#/definitions/StopConditionSource" + }, + "Value" : { + "$ref" : "#/definitions/StopConditionValue" } }, "required" : [ "Source" ] }, - "ExperimentTemplateActionItemStartAfter" : { + "ExperimentTemplateStopConditionList" : { + "type" : "array", + "description" : "One or more stop conditions.", + "items" : { + "$ref" : "#/definitions/ExperimentTemplateStopCondition" + } + }, + "ResourceType" : { "type" : "string", + "description" : "The AWS resource type. The resource type must be supported for the specified action.", "maxLength" : 64 }, - "ExperimentTemplateLogConfiguration" : { - "additionalProperties" : false, - "type" : "object", - "properties" : { - "S3Configuration" : { - "additionalProperties" : false, - "type" : "object", - "properties" : { - "BucketName" : { - "minLength" : 3, - "type" : "string", - "maxLength" : 63 - }, - "Prefix" : { - "minLength" : 1, - "type" : "string", - "maxLength" : 1024 - } - }, - "required" : [ "BucketName" ] - }, - "LogSchemaVersion" : { - "type" : "integer", - "minimum" : 1 - }, - "CloudWatchLogsConfiguration" : { - "additionalProperties" : false, - "type" : "object", - "properties" : { - "LogGroupArn" : { - "minLength" : 20, - "type" : "string", - "maxLength" : 2048 - } - }, - "required" : [ "LogGroupArn" ] - } - }, - "required" : [ "LogSchemaVersion" ] + "ResourceArn" : { + "type" : "string", + "minLength" : 20, + "maxLength" : 2048 }, - "ExperimentTemplateId" : { - "type" : "string" + "ResourceArnList" : { + "type" : "array", + "description" : "The Amazon Resource Names (ARNs) of the target resources.", + "items" : { + "$ref" : "#/definitions/ResourceArn" + } }, "ExperimentTemplateTargetSelectionMode" : { - "description" : "Scopes the identified resources to a specific number of the resources at random, or a percentage of the resources.", "type" : "string", + "description" : "Scopes the identified resources to a specific number of the resources at random, or a percentage of the resources.", "maxLength" : 64 }, - "ExperimentTemplateDescription" : { - "description" : "A description for the experiment template.", + "ExperimentTemplateTargetFilterPath" : { "type" : "string", - "maxLength" : 512 + "description" : "The attribute path for the filter.", + "maxLength" : 256 + }, + "ExperimentTemplateTargetFilterValue" : { + "type" : "string", + "maxLength" : 128 + }, + "ExperimentTemplateTargetFilterValues" : { + "type" : "array", + "description" : "The attribute values for the filter.", + "items" : { + "$ref" : "#/definitions/ExperimentTemplateTargetFilterValue" + } + }, + "ExperimentTemplateTargetFilter" : { + "type" : "object", + "description" : "Describes a filter used for the target resource input in an experiment template.", + "additionalProperties" : false, + "properties" : { + "Path" : { + "$ref" : "#/definitions/ExperimentTemplateTargetFilterPath" + }, + "Values" : { + "$ref" : "#/definitions/ExperimentTemplateTargetFilterValues" + } + }, + "required" : [ "Path", "Values" ] }, "ExperimentTemplateTargetFilterList" : { "type" : "array", @@ -109,44 +98,39 @@ "$ref" : "#/definitions/ExperimentTemplateTargetFilter" } }, - "StopConditionValue" : { - "minLength" : 20, - "type" : "string", - "maxLength" : 2048 - }, "ExperimentTemplateTarget" : { + "type" : "object", "description" : "Specifies a target for an experiment.", "additionalProperties" : false, - "type" : "object", "properties" : { - "Filters" : { - "$ref" : "#/definitions/ExperimentTemplateTargetFilterList" + "ResourceType" : { + "$ref" : "#/definitions/ResourceType" }, - "Parameters" : { - "patternProperties" : { - ".{1,64}" : { - "type" : "string", - "maxLength" : 1024 - } - }, - "additionalProperties" : false, - "type" : "object" + "ResourceArns" : { + "$ref" : "#/definitions/ResourceArnList" }, "ResourceTags" : { + "type" : "object", "patternProperties" : { ".{1,128}" : { "type" : "string", "maxLength" : 256 } }, - "additionalProperties" : false, - "type" : "object" + "additionalProperties" : false }, - "ResourceType" : { - "$ref" : "#/definitions/ResourceType" + "Parameters" : { + "type" : "object", + "patternProperties" : { + ".{1,64}" : { + "type" : "string", + "maxLength" : 1024 + } + }, + "additionalProperties" : false }, - "ResourceArns" : { - "$ref" : "#/definitions/ResourceArnList" + "Filters" : { + "$ref" : "#/definitions/ExperimentTemplateTargetFilterList" }, "SelectionMode" : { "$ref" : "#/definitions/ExperimentTemplateTargetSelectionMode" @@ -154,98 +138,49 @@ }, "required" : [ "ResourceType", "SelectionMode" ] }, - "ExperimentTemplateActionItemTarget" : { - "type" : "string", - "maxLength" : 64 - }, "ExperimentTemplateTargetMap" : { + "type" : "object", + "description" : "The targets for the experiment.", "patternProperties" : { ".{1,64}" : { "$ref" : "#/definitions/ExperimentTemplateTarget" } }, - "description" : "The targets for the experiment.", - "additionalProperties" : false, - "type" : "object" + "additionalProperties" : false }, - "ExperimentTemplateActionItemStartAfterList" : { - "description" : "The names of the actions that must be completed before the current action starts.", - "type" : "array", - "items" : { - "$ref" : "#/definitions/ExperimentTemplateActionItemStartAfter" - } + "ActionId" : { + "type" : "string", + "description" : "The ID of the action.", + "maxLength" : 64 }, - "ExperimentTemplateTargetFilterPath" : { - "description" : "The attribute path for the filter.", + "ExperimentTemplateActionItemDescription" : { "type" : "string", - "maxLength" : 256 + "description" : "A description for the action.", + "maxLength" : 512 }, "ExperimentTemplateActionItemParameter" : { "type" : "string", "maxLength" : 1024 }, - "ExperimentTemplateTargetFilter" : { - "description" : "Describes a filter used for the target resource input in an experiment template.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "Path" : { - "$ref" : "#/definitions/ExperimentTemplateTargetFilterPath" - }, - "Values" : { - "$ref" : "#/definitions/ExperimentTemplateTargetFilterValues" - } - }, - "required" : [ "Path", "Values" ] - }, - "ResourceType" : { - "description" : "The AWS resource type. The resource type must be supported for the specified action.", + "ExperimentTemplateActionItemTarget" : { "type" : "string", "maxLength" : 64 }, - "ExperimentTemplateActionMap" : { - "patternProperties" : { - "[\\S]{1,64}" : { - "$ref" : "#/definitions/ExperimentTemplateAction" - } - }, - "description" : "The actions for the experiment.", - "additionalProperties" : false, - "type" : "object" - }, - "RoleArn" : { - "description" : "The Amazon Resource Name (ARN) of an IAM role that grants the AWS FIS service permission to perform service actions on your behalf.", - "type" : "string", - "maxLength" : 1224 - }, - "ResourceArnList" : { - "description" : "The Amazon Resource Names (ARNs) of the target resources.", - "type" : "array", - "items" : { - "$ref" : "#/definitions/ResourceArn" - } - }, - "ResourceArn" : { - "minLength" : 20, - "type" : "string", - "maxLength" : 2048 - }, - "ActionId" : { - "description" : "The ID of the action.", + "ExperimentTemplateActionItemStartAfter" : { "type" : "string", "maxLength" : 64 }, - "ExperimentTemplateStopConditionList" : { - "description" : "One or more stop conditions.", + "ExperimentTemplateActionItemStartAfterList" : { "type" : "array", + "description" : "The names of the actions that must be completed before the current action starts.", "items" : { - "$ref" : "#/definitions/ExperimentTemplateStopCondition" + "$ref" : "#/definitions/ExperimentTemplateActionItemStartAfter" } }, "ExperimentTemplateAction" : { + "type" : "object", "description" : "Specifies an action for the experiment template.", "additionalProperties" : false, - "type" : "object", "properties" : { "ActionId" : { "$ref" : "#/definitions/ActionId" @@ -254,24 +189,24 @@ "$ref" : "#/definitions/ExperimentTemplateActionItemDescription" }, "Parameters" : { + "type" : "object", + "description" : "The parameters for the action, if applicable.", "patternProperties" : { ".{1,64}" : { "$ref" : "#/definitions/ExperimentTemplateActionItemParameter" } }, - "description" : "The parameters for the action, if applicable.", - "additionalProperties" : false, - "type" : "object" + "additionalProperties" : false }, "Targets" : { + "type" : "object", + "description" : "One or more targets for the action.", "patternProperties" : { ".{1,64}" : { "$ref" : "#/definitions/ExperimentTemplateActionItemTarget" } }, - "description" : "One or more targets for the action.", - "additionalProperties" : false, - "type" : "object" + "additionalProperties" : false }, "StartAfter" : { "$ref" : "#/definitions/ExperimentTemplateActionItemStartAfterList" @@ -279,35 +214,94 @@ }, "required" : [ "ActionId" ] }, - "ExperimentTemplateTargetFilterValues" : { - "description" : "The attribute values for the filter.", - "type" : "array", - "items" : { - "$ref" : "#/definitions/ExperimentTemplateTargetFilterValue" + "ExperimentTemplateActionMap" : { + "type" : "object", + "description" : "The actions for the experiment.", + "patternProperties" : { + "[\\S]{1,64}" : { + "$ref" : "#/definitions/ExperimentTemplateAction" + } + }, + "additionalProperties" : false + }, + "ExperimentTemplateLogConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "CloudWatchLogsConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "LogGroupArn" : { + "type" : "string", + "minLength" : 20, + "maxLength" : 2048 + } + }, + "required" : [ "LogGroupArn" ] + }, + "S3Configuration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "BucketName" : { + "type" : "string", + "minLength" : 3, + "maxLength" : 63 + }, + "Prefix" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 1024 + } + }, + "required" : [ "BucketName" ] + }, + "LogSchemaVersion" : { + "type" : "integer", + "minimum" : 1 + } + }, + "required" : [ "LogSchemaVersion" ] + }, + "ExperimentTemplateExperimentOptions" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "AccountTargeting" : { + "type" : "string", + "description" : "The account targeting setting for the experiment template.", + "enum" : [ "multi-account", "single-account" ] + }, + "EmptyTargetResolutionMode" : { + "type" : "string", + "description" : "The target resolution failure mode for the experiment template.", + "enum" : [ "fail", "skip" ] + } } }, - "ExperimentTemplateTargetFilterValue" : { + "RoleArn" : { "type" : "string", - "maxLength" : 128 + "description" : "The Amazon Resource Name (ARN) of an IAM role that grants the AWS FIS service permission to perform service actions on your behalf.", + "maxLength" : 1224 } }, - "required" : [ "Description", "StopConditions", "Targets", "RoleArn", "Tags" ], "properties" : { + "Id" : { + "$ref" : "#/definitions/ExperimentTemplateId" + }, "Description" : { "$ref" : "#/definitions/ExperimentTemplateDescription" }, + "Targets" : { + "$ref" : "#/definitions/ExperimentTemplateTargetMap" + }, "Actions" : { "$ref" : "#/definitions/ExperimentTemplateActionMap" }, "StopConditions" : { "$ref" : "#/definitions/ExperimentTemplateStopConditionList" }, - "Targets" : { - "$ref" : "#/definitions/ExperimentTemplateTargetMap" - }, - "Id" : { - "$ref" : "#/definitions/ExperimentTemplateId" - }, "LogConfiguration" : { "$ref" : "#/definitions/ExperimentTemplateLogConfiguration" }, @@ -315,14 +309,39 @@ "$ref" : "#/definitions/RoleArn" }, "Tags" : { + "type" : "object", "patternProperties" : { ".{1,128}" : { "type" : "string", "maxLength" : 256 } }, - "additionalProperties" : false, - "type" : "object" + "additionalProperties" : false + }, + "ExperimentOptions" : { + "$ref" : "#/definitions/ExperimentTemplateExperimentOptions" + } + }, + "additionalProperties" : false, + "required" : [ "Description", "StopConditions", "Targets", "RoleArn", "Tags" ], + "readOnlyProperties" : [ "/properties/Id" ], + "createOnlyProperties" : [ "/properties/Tags", "/properties/ExperimentOptions/properties/AccountTargeting" ], + "primaryIdentifier" : [ "/properties/Id" ], + "handlers" : { + "create" : { + "permissions" : [ "fis:CreateExperimentTemplate", "fis:TagResource", "iam:PassRole" ] + }, + "read" : { + "permissions" : [ "fis:GetExperimentTemplate", "fis:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "fis:UpdateExperimentTemplate", "fis:TagResource", "fis:UntagResource", "iam:PassRole" ] + }, + "delete" : { + "permissions" : [ "fis:DeleteExperimentTemplate" ] + }, + "list" : { + "permissions" : [ "fis:ListExperimentTemplates", "fis:ListTagsForResource" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-fis-targetaccountconfiguration.json b/aws-cloudformation-schema/aws-fis-targetaccountconfiguration.json new file mode 100644 index 0000000000..8b3bacf633 --- /dev/null +++ b/aws-cloudformation-schema/aws-fis-targetaccountconfiguration.json @@ -0,0 +1,75 @@ +{ + "typeName" : "AWS::FIS::TargetAccountConfiguration", + "description" : "Resource schema for AWS::FIS::TargetAccountConfiguration", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-fis.git", + "definitions" : { + "TargetExperimentTemplateId" : { + "type" : "string", + "description" : "The ID of the experiment template." + }, + "TargetAccountId" : { + "type" : "string", + "description" : "The AWS account ID of the target account.", + "maxLength" : 512 + }, + "TargetAccountRoleArn" : { + "type" : "string", + "description" : "The Amazon Resource Name (ARN) of an IAM role for the target account.", + "maxLength" : 1224 + }, + "TargetAccountConfigurationDescription" : { + "type" : "string", + "description" : "The description of the target account.", + "maxLength" : 512 + } + }, + "properties" : { + "ExperimentTemplateId" : { + "$ref" : "#/definitions/TargetExperimentTemplateId" + }, + "AccountId" : { + "$ref" : "#/definitions/TargetAccountId" + }, + "RoleArn" : { + "$ref" : "#/definitions/TargetAccountRoleArn" + }, + "Description" : { + "$ref" : "#/definitions/TargetAccountConfigurationDescription" + } + }, + "additionalProperties" : false, + "required" : [ "ExperimentTemplateId", "AccountId", "RoleArn" ], + "createOnlyProperties" : [ "/properties/ExperimentTemplateId", "/properties/AccountId" ], + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false + }, + "primaryIdentifier" : [ "/properties/ExperimentTemplateId", "/properties/AccountId" ], + "handlers" : { + "create" : { + "permissions" : [ "fis:CreateTargetAccountConfiguration" ] + }, + "read" : { + "permissions" : [ "fis:GetTargetAccountConfiguration" ] + }, + "update" : { + "permissions" : [ "fis:UpdateTargetAccountConfiguration" ] + }, + "delete" : { + "permissions" : [ "fis:DeleteTargetAccountConfiguration" ] + }, + "list" : { + "handlerSchema" : { + "properties" : { + "ExperimentTemplateId" : { + "$ref" : "resource-schema.json#/properties/ExperimentTemplateId" + } + }, + "required" : [ "ExperimentTemplateId" ] + }, + "permissions" : [ "fis:ListTargetAccountConfigurations" ] + } + } +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-fsx-datarepositoryassociation.json b/aws-cloudformation-schema/aws-fsx-datarepositoryassociation.json index 3622904510..dce20a2ce0 100644 --- a/aws-cloudformation-schema/aws-fsx-datarepositoryassociation.json +++ b/aws-cloudformation-schema/aws-fsx-datarepositoryassociation.json @@ -130,7 +130,8 @@ "taggable" : true, "tagOnCreate" : true, "tagUpdatable" : true, - "cloudFormationSystemTags" : true + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" }, "additionalProperties" : false, "required" : [ "FileSystemId", "FileSystemPath", "DataRepositoryPath" ], diff --git a/aws-cloudformation-schema/aws-gamelift-fleet.json b/aws-cloudformation-schema/aws-gamelift-fleet.json index c90496eac5..d672bbfd79 100644 --- a/aws-cloudformation-schema/aws-gamelift-fleet.json +++ b/aws-cloudformation-schema/aws-gamelift-fleet.json @@ -1,439 +1,444 @@ { "$schema" : "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", - "deprecatedProperties" : [ "/properties/LogPaths", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath" ], - "taggable" : true, "typeName" : "AWS::GameLift::Fleet", - "readOnlyProperties" : [ "/properties/FleetId" ], "description" : "The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions.", - "createOnlyProperties" : [ "/properties/BuildId", "/properties/CertificateConfiguration", "/properties/EC2InstanceType", "/properties/FleetType", "/properties/InstanceRoleARN", "/properties/InstanceRoleCredentialsProvider", "/properties/LogPaths", "/properties/PeerVpcAwsAccountId", "/properties/PeerVpcId", "/properties/ScriptId", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath", "/properties/CertificateType", "/properties/ComputeType" ], - "primaryIdentifier" : [ "/properties/FleetId" ], - "required" : [ "Name" ], "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-gamelift.git", - "handlers" : { - "read" : { - "permissions" : [ "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes", "gamelift:DescribeFleetCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetUtilization", "gamelift:DescribeRuntimeConfiguration", "gamelift:DescribeEC2InstanceLimits", "gamelift:DescribeFleetEvents", "gamelift:DescribeScalingPolicies" ] - }, - "create" : { - "permissions" : [ "gamelift:CreateFleet", "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes", "gamelift:UpdateFleetCapacity", "gamelift:DescribeFleetLocationCapacity", "gamelift:PutScalingPolicy", "gamelift:DescribeScalingPolicies" ] - }, - "update" : { - "permissions" : [ "gamelift:UpdateFleetAttributes", "gamelift:CreateFleetLocations", "gamelift:DeleteFleetLocations", "gamelift:UpdateFleetCapacity", "gamelift:UpdateFleetPortSettings", "gamelift:UpdateRuntimeConfiguration", "gamelift:DescribeFleetLocationCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetLocationAttributes", "gamelift:PutScalingPolicy", "gamelift:DescribeScalingPolicies", "gamelift:DeleteScalingPolicy" ] - }, - "list" : { - "permissions" : [ "gamelift:ListFleets" ] - }, - "delete" : { - "permissions" : [ "gamelift:DeleteFleet", "gamelift:DescribeFleetLocationCapacity", "gamelift:DescribeScalingPolicies", "gamelift:DeleteScalingPolicy" ] - } - }, - "additionalProperties" : false, "definitions" : { - "ScalingPolicy" : { - "description" : "Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.", + "AnywhereConfiguration" : { + "description" : "Configuration for Anywhere fleet.", + "properties" : { + "Cost" : { + "description" : "Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost.", + "type" : "string", + "pattern" : "^\\d{1,5}(?:\\.\\d{1,5})?$", + "minLength" : 1, + "maxLength" : 11 + } + }, "additionalProperties" : false, + "required" : [ "Cost" ] + }, + "CertificateConfiguration" : { + "description" : "Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.", "type" : "object", "properties" : { - "Status" : { - "description" : "Current status of the scaling policy. The scaling policy can be in force only when in an ACTIVE status. Scaling policies can be suspended for individual fleets. If the policy is suspended for a fleet, the policy status does not change.", - "type" : "string", - "enum" : [ "ACTIVE", "UPDATE_REQUESTED", "UPDATING", "DELETE_REQUESTED", "DELETING", "DELETED", "ERROR" ] - }, - "MetricName" : { - "description" : "Name of the Amazon GameLift-defined metric that is used to trigger a scaling adjustment.", - "type" : "string", - "enum" : [ "ActivatingGameSessions", "ActiveGameSessions", "ActiveInstances", "AvailableGameSessions", "AvailablePlayerSessions", "CurrentPlayerSessions", "IdleInstances", "PercentAvailableGameSessions", "PercentIdleInstances", "QueueDepth", "WaitTime", "ConcurrentActivatableGameSessions" ] - }, - "PolicyType" : { - "description" : "The type of scaling policy to create. For a target-based policy, set the parameter MetricName to 'PercentAvailableGameSessions' and specify a TargetConfiguration. For a rule-based policy set the following parameters: MetricName, ComparisonOperator, Threshold, EvaluationPeriods, ScalingAdjustmentType, and ScalingAdjustment.", - "type" : "string", - "enum" : [ "RuleBased", "TargetBased" ] - }, - "ComparisonOperator" : { - "description" : "Comparison operator to use when measuring a metric against the threshold value.", - "type" : "string", - "enum" : [ "GreaterThanOrEqualToThreshold", "GreaterThanThreshold", "LessThanThreshold", "LessThanOrEqualToThreshold" ] - }, - "TargetConfiguration" : { - "description" : "An object that contains settings for a target-based scaling policy.", - "$ref" : "#/definitions/TargetConfiguration" - }, - "UpdateStatus" : { - "description" : "The current status of the fleet's scaling policies in a requested fleet location. The status PENDING_UPDATE indicates that an update was requested for the fleet but has not yet been completed for the location.", + "CertificateType" : { "type" : "string", - "enum" : [ "PENDING_UPDATE" ] - }, - "ScalingAdjustment" : { - "description" : "Amount of adjustment to make, based on the scaling adjustment type.", - "type" : "integer" - }, - "EvaluationPeriods" : { - "description" : "Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.", + "enum" : [ "DISABLED", "GENERATED" ] + } + }, + "additionalProperties" : false, + "required" : [ "CertificateType" ] + }, + "IpPermission" : { + "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.", + "type" : "object", + "properties" : { + "FromPort" : { + "description" : "A starting value for a range of allowed port numbers.", "type" : "integer", - "minimum" : 1 - }, - "Location" : { - "$ref" : "#/definitions/Location" + "minimum" : 1, + "maximum" : 60000 }, - "Name" : { - "minLength" : 1, - "description" : "A descriptive label that is associated with a fleet's scaling policy. Policy names do not need to be unique.", + "IpRange" : { + "description" : "A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".", "type" : "string", - "maxLength" : 1024 + "pattern" : "(^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))$)" }, - "ScalingAdjustmentType" : { - "description" : "The type of adjustment to make to a fleet's instance count.", + "Protocol" : { + "description" : "The network communication protocol used by the fleet.", "type" : "string", - "enum" : [ "ChangeInCapacity", "ExactCapacity", "PercentChangeInCapacity" ] + "enum" : [ "TCP", "UDP" ] }, - "Threshold" : { - "description" : "Metric value used to trigger a scaling event.", - "type" : "number" + "ToPort" : { + "description" : "An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.", + "type" : "integer", + "minimum" : 1, + "maximum" : 60000 } }, - "required" : [ "MetricName", "Name" ] - }, - "ServerProcess" : { - "description" : "A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration.", "additionalProperties" : false, + "required" : [ "FromPort", "IpRange", "Protocol", "ToPort" ] + }, + "Location" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 64, + "pattern" : "^[A-Za-z0-9\\-]+" + }, + "LocationCapacity" : { + "description" : "Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.", "type" : "object", "properties" : { - "ConcurrentExecutions" : { - "description" : "The number of server processes that use this configuration to run concurrently on an instance.", + "DesiredEC2Instances" : { + "description" : "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.", "type" : "integer", - "minimum" : 1 + "minimum" : 0 }, - "Parameters" : { - "minLength" : 1, - "description" : "An optional list of parameters to pass to the server executable or Realtime script on launch.", - "type" : "string", - "maxLength" : 1024 + "MinSize" : { + "description" : "The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.", + "type" : "integer", + "minimum" : 0 }, - "LaunchPath" : { - "minLength" : 1, - "pattern" : "^([Cc]:\\\\game\\S+|/local/game/\\S+)", - "description" : "The location of the server executable in a custom game build or the name of the Realtime script file that contains the Init() function. Game builds and Realtime scripts are installed on instances at the root:\n\nWindows (for custom game builds only): C:\\game. Example: \"C:\\game\\MyGame\\server.exe\"\n\nLinux: /local/game. Examples: \"/local/game/MyGame/server.exe\" or \"/local/game/MyRealtimeScript.js\"", - "type" : "string", - "maxLength" : 1024 + "MaxSize" : { + "description" : "The maximum value that is allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to \"1\". Once the fleet is active, you can change this value.", + "type" : "integer", + "minimum" : 0 } }, - "required" : [ "ConcurrentExecutions", "LaunchPath" ] - }, - "TargetConfiguration" : { - "description" : "Settings for a target-based scaling policy. A target-based policy tracks a particular fleet metric specifies a target value for the metric. As player usage changes, the policy triggers Amazon GameLift to adjust capacity so that the metric returns to the target value. The target configuration specifies settings as needed for the target based policy, including the target value.", "additionalProperties" : false, + "required" : [ "DesiredEC2Instances", "MinSize", "MaxSize" ] + }, + "LocationConfiguration" : { + "description" : "A remote location where a multi-location fleet can deploy EC2 instances for game hosting.", "type" : "object", "properties" : { - "TargetValue" : { - "description" : "Desired value to use with a target-based scaling policy. The value must be relevant for whatever metric the scaling policy is using. For example, in a policy using the metric PercentAvailableGameSessions, the target value should be the preferred size of the fleet's buffer (the percent of capacity that should be idle and ready for new game sessions).", - "type" : "number" + "Location" : { + "$ref" : "#/definitions/Location" + }, + "LocationCapacity" : { + "$ref" : "#/definitions/LocationCapacity" } }, - "required" : [ "TargetValue" ] - }, - "AnywhereConfiguration" : { - "description" : "Configuration for Anywhere fleet.", "additionalProperties" : false, - "properties" : { - "Cost" : { - "minLength" : 1, - "pattern" : "^\\d{1,5}(?:\\.\\d{1,5})?$", - "description" : "Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost.", - "type" : "string", - "maxLength" : 11 - } - }, - "required" : [ "Cost" ] + "required" : [ "Location" ] }, "ResourceCreationLimitPolicy" : { "description" : "A policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: \"An individual player can create a maximum number of new game sessions within a specified time period\".\n\nThe policy is evaluated when a player tries to create a new game session. For example, assume you have a policy of 10 new game sessions and a time period of 60 minutes. On receiving a CreateGameSession request, Amazon GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.", - "additionalProperties" : false, "type" : "object", "properties" : { - "PolicyPeriodInMinutes" : { - "description" : "The time span used in evaluating the resource creation limit policy.", + "NewGameSessionsPerCreator" : { + "description" : "The maximum number of game sessions that an individual can create during the policy period.", "type" : "integer", "minimum" : 0 }, - "NewGameSessionsPerCreator" : { - "description" : "The maximum number of game sessions that an individual can create during the policy period.", + "PolicyPeriodInMinutes" : { + "description" : "The time span used in evaluating the resource creation limit policy.", "type" : "integer", "minimum" : 0 } - } + }, + "additionalProperties" : false }, - "LocationCapacity" : { - "description" : "Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.", - "additionalProperties" : false, + "RuntimeConfiguration" : { + "description" : "A collection of server process configurations that describe the processes to run on each instance in a fleet. All fleets must have a runtime configuration. Each instance in the fleet maintains server processes as specified in the runtime configuration, launching new ones as existing processes end. Each instance regularly checks for an updated runtime configuration makes adjustments as called for.\n\nThe runtime configuration enables the instances in a fleet to run multiple processes simultaneously. Potential scenarios are as follows: (1) Run multiple processes of a single game server executable to maximize usage of your hosting resources. (2) Run one or more processes of different executables, such as your game server and a metrics tracking program. (3) Run multiple processes of a single game server but with different launch parameters, for example to run one process on each instance in debug mode.\n\nAn Amazon GameLift instance is limited to 50 processes running simultaneously. A runtime configuration must specify fewer than this limit. To calculate the total number of processes specified in a runtime configuration, add the values of the ConcurrentExecutions parameter for each ServerProcess object in the runtime configuration.", "type" : "object", "properties" : { - "MinSize" : { - "description" : "The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.", + "GameSessionActivationTimeoutSeconds" : { + "description" : "The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.", "type" : "integer", - "minimum" : 0 + "minimum" : 1, + "maximum" : 600 }, - "DesiredEC2Instances" : { - "description" : "The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.", + "MaxConcurrentGameSessionActivations" : { + "description" : "The maximum number of game sessions with status ACTIVATING to allow on an instance simultaneously. This setting limits the amount of instance resources that can be used for new game activations at any one time.", "type" : "integer", - "minimum" : 0 + "minimum" : 1, + "maximum" : 2147483647 }, - "MaxSize" : { - "description" : "The maximum value that is allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to \"1\". Once the fleet is active, you can change this value.", - "type" : "integer", - "minimum" : 0 + "ServerProcesses" : { + "description" : "A collection of server process configurations that describe which server processes to run on each instance in a fleet.", + "type" : "array", + "maxItems" : 50, + "items" : { + "$ref" : "#/definitions/ServerProcess" + }, + "insertionOrder" : false } }, - "required" : [ "DesiredEC2Instances", "MinSize", "MaxSize" ] + "additionalProperties" : false }, - "CertificateConfiguration" : { - "description" : "Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.", - "additionalProperties" : false, + "ScalingPolicy" : { + "description" : "Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.", "type" : "object", "properties" : { - "CertificateType" : { + "ComparisonOperator" : { + "description" : "Comparison operator to use when measuring a metric against the threshold value.", "type" : "string", - "enum" : [ "DISABLED", "GENERATED" ] - } - }, - "required" : [ "CertificateType" ] - }, - "IpPermission" : { - "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "IpRange" : { - "pattern" : "(^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))$)", - "description" : "A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: \"000.000.000.000/[subnet mask]\" or optionally the shortened version \"0.0.0.0/[subnet mask]\".", - "type" : "string" + "enum" : [ "GreaterThanOrEqualToThreshold", "GreaterThanThreshold", "LessThanThreshold", "LessThanOrEqualToThreshold" ] }, - "FromPort" : { - "description" : "A starting value for a range of allowed port numbers.", - "maximum" : 60000, + "EvaluationPeriods" : { + "description" : "Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.", "type" : "integer", "minimum" : 1 }, - "ToPort" : { - "description" : "An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.", - "maximum" : 60000, - "type" : "integer", - "minimum" : 1 + "Location" : { + "$ref" : "#/definitions/Location" + }, + "MetricName" : { + "description" : "Name of the Amazon GameLift-defined metric that is used to trigger a scaling adjustment.", + "type" : "string", + "enum" : [ "ActivatingGameSessions", "ActiveGameSessions", "ActiveInstances", "AvailableGameSessions", "AvailablePlayerSessions", "CurrentPlayerSessions", "IdleInstances", "PercentAvailableGameSessions", "PercentIdleInstances", "QueueDepth", "WaitTime", "ConcurrentActivatableGameSessions" ] + }, + "Name" : { + "description" : "A descriptive label that is associated with a fleet's scaling policy. Policy names do not need to be unique.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024 + }, + "PolicyType" : { + "description" : "The type of scaling policy to create. For a target-based policy, set the parameter MetricName to 'PercentAvailableGameSessions' and specify a TargetConfiguration. For a rule-based policy set the following parameters: MetricName, ComparisonOperator, Threshold, EvaluationPeriods, ScalingAdjustmentType, and ScalingAdjustment.", + "type" : "string", + "enum" : [ "RuleBased", "TargetBased" ] + }, + "ScalingAdjustment" : { + "description" : "Amount of adjustment to make, based on the scaling adjustment type.", + "type" : "integer" + }, + "ScalingAdjustmentType" : { + "description" : "The type of adjustment to make to a fleet's instance count.", + "type" : "string", + "enum" : [ "ChangeInCapacity", "ExactCapacity", "PercentChangeInCapacity" ] + }, + "Status" : { + "description" : "Current status of the scaling policy. The scaling policy can be in force only when in an ACTIVE status. Scaling policies can be suspended for individual fleets. If the policy is suspended for a fleet, the policy status does not change.", + "type" : "string", + "enum" : [ "ACTIVE", "UPDATE_REQUESTED", "UPDATING", "DELETE_REQUESTED", "DELETING", "DELETED", "ERROR" ] + }, + "TargetConfiguration" : { + "description" : "An object that contains settings for a target-based scaling policy.", + "$ref" : "#/definitions/TargetConfiguration" + }, + "Threshold" : { + "description" : "Metric value used to trigger a scaling event.", + "type" : "number" }, - "Protocol" : { - "description" : "The network communication protocol used by the fleet.", + "UpdateStatus" : { + "description" : "The current status of the fleet's scaling policies in a requested fleet location. The status PENDING_UPDATE indicates that an update was requested for the fleet but has not yet been completed for the location.", "type" : "string", - "enum" : [ "TCP", "UDP" ] + "enum" : [ "PENDING_UPDATE" ] } }, - "required" : [ "FromPort", "IpRange", "Protocol", "ToPort" ] - }, - "RuntimeConfiguration" : { - "description" : "A collection of server process configurations that describe the processes to run on each instance in a fleet. All fleets must have a runtime configuration. Each instance in the fleet maintains server processes as specified in the runtime configuration, launching new ones as existing processes end. Each instance regularly checks for an updated runtime configuration makes adjustments as called for.\n\nThe runtime configuration enables the instances in a fleet to run multiple processes simultaneously. Potential scenarios are as follows: (1) Run multiple processes of a single game server executable to maximize usage of your hosting resources. (2) Run one or more processes of different executables, such as your game server and a metrics tracking program. (3) Run multiple processes of a single game server but with different launch parameters, for example to run one process on each instance in debug mode.\n\nAn Amazon GameLift instance is limited to 50 processes running simultaneously. A runtime configuration must specify fewer than this limit. To calculate the total number of processes specified in a runtime configuration, add the values of the ConcurrentExecutions parameter for each ServerProcess object in the runtime configuration.", "additionalProperties" : false, + "required" : [ "MetricName", "Name" ] + }, + "ServerProcess" : { + "description" : "A set of instructions for launching server processes on each instance in a fleet. Each instruction set identifies the location of the server executable, optional launch parameters, and the number of server processes with this configuration to maintain concurrently on the instance. Server process configurations make up a fleet's RuntimeConfiguration.", "type" : "object", "properties" : { - "ServerProcesses" : { - "maxItems" : 50, - "description" : "A collection of server process configurations that describe which server processes to run on each instance in a fleet.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/ServerProcess" - } - }, - "MaxConcurrentGameSessionActivations" : { - "description" : "The maximum number of game sessions with status ACTIVATING to allow on an instance simultaneously. This setting limits the amount of instance resources that can be used for new game activations at any one time.", - "maximum" : 2147483647, + "ConcurrentExecutions" : { + "description" : "The number of server processes that use this configuration to run concurrently on an instance.", "type" : "integer", "minimum" : 1 }, - "GameSessionActivationTimeoutSeconds" : { - "description" : "The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.", - "maximum" : 600, - "type" : "integer", - "minimum" : 1 + "LaunchPath" : { + "description" : "The location of the server executable in a custom game build or the name of the Realtime script file that contains the Init() function. Game builds and Realtime scripts are installed on instances at the root:\n\nWindows (for custom game builds only): C:\\game. Example: \"C:\\game\\MyGame\\server.exe\"\n\nLinux: /local/game. Examples: \"/local/game/MyGame/server.exe\" or \"/local/game/MyRealtimeScript.js\"", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024, + "pattern" : "^([Cc]:\\\\game\\S+|/local/game/\\S+)" + }, + "Parameters" : { + "description" : "An optional list of parameters to pass to the server executable or Realtime script on launch.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024 } - } - }, - "Location" : { - "minLength" : 1, - "pattern" : "^[A-Za-z0-9\\-]+", - "type" : "string", - "maxLength" : 64 - }, - "LocationConfiguration" : { - "description" : "A remote location where a multi-location fleet can deploy EC2 instances for game hosting.", + }, "additionalProperties" : false, + "required" : [ "ConcurrentExecutions", "LaunchPath" ] + }, + "TargetConfiguration" : { + "description" : "Settings for a target-based scaling policy. A target-based policy tracks a particular fleet metric specifies a target value for the metric. As player usage changes, the policy triggers Amazon GameLift to adjust capacity so that the metric returns to the target value. The target configuration specifies settings as needed for the target based policy, including the target value.", "type" : "object", "properties" : { - "LocationCapacity" : { - "$ref" : "#/definitions/LocationCapacity" - }, - "Location" : { - "$ref" : "#/definitions/Location" + "TargetValue" : { + "description" : "Desired value to use with a target-based scaling policy. The value must be relevant for whatever metric the scaling policy is using. For example, in a policy using the metric PercentAvailableGameSessions, the target value should be the preferred size of the fleet's buffer (the percent of capacity that should be idle and ready for new game sessions).", + "type" : "number" } }, - "required" : [ "Location" ] + "additionalProperties" : false, + "required" : [ "TargetValue" ] } }, "properties" : { "ScalingPolicies" : { - "maxItems" : 50, "description" : "A list of rules that control how a fleet is scaled.", - "insertionOrder" : false, "type" : "array", + "maxItems" : 50, "items" : { "$ref" : "#/definitions/ScalingPolicy" - } + }, + "insertionOrder" : false }, - "Description" : { - "minLength" : 1, - "description" : "A human-readable description of a fleet.", - "type" : "string", - "maxLength" : 1024 + "AnywhereConfiguration" : { + "description" : "Configuration for Anywhere fleet.", + "$ref" : "#/definitions/AnywhereConfiguration" }, - "PeerVpcId" : { - "minLength" : 1, - "pattern" : "^vpc-\\S+", - "description" : "A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.", + "ApplyCapacity" : { + "description" : "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", "type" : "string", - "maxLength" : 1024 + "enum" : [ "ON_UPDATE", "ON_CREATE_AND_UPDATE" ] }, - "EC2InboundPermissions" : { - "maxItems" : 50, - "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/IpPermission" - } + "CertificateConfiguration" : { + "description" : "Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.", + "$ref" : "#/definitions/CertificateConfiguration" }, "ComputeType" : { "description" : "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", "type" : "string", "enum" : [ "EC2", "ANYWHERE" ] }, - "Name" : { - "minLength" : 1, - "description" : "A descriptive label that is associated with a fleet. Fleet names do not need to be unique.", + "Description" : { + "description" : "A human-readable description of a fleet.", "type" : "string", - "maxLength" : 1024 - }, - "AnywhereConfiguration" : { - "description" : "Configuration for Anywhere fleet.", - "$ref" : "#/definitions/AnywhereConfiguration" - }, - "InstanceRoleARN" : { "minLength" : 1, - "pattern" : "^arn:aws(-.*)?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$", - "description" : "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.", - "type" : "string" - }, - "FleetId" : { - "pattern" : "^fleet-\\S+", - "description" : "Unique fleet ID", - "type" : "string" - }, - "CertificateConfiguration" : { - "description" : "Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.", - "$ref" : "#/definitions/CertificateConfiguration" - }, - "InstanceRoleCredentialsProvider" : { - "description" : "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", - "type" : "string", - "enum" : [ "SHARED_CREDENTIAL_FILE" ] + "maxLength" : 1024 }, "DesiredEC2Instances" : { "description" : "[DEPRECATED] The number of EC2 instances that you want this fleet to host. When creating a new fleet, GameLift automatically sets this value to \"1\" and initiates a single instance. Once the fleet is active, update this value to trigger GameLift to add or remove instances from the fleet.", "type" : "integer", "minimum" : 0 }, - "ServerLaunchParameters" : { - "minLength" : 1, - "description" : "This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.", + "EC2InboundPermissions" : { + "description" : "A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.", + "type" : "array", + "maxItems" : 50, + "items" : { + "$ref" : "#/definitions/IpPermission" + }, + "insertionOrder" : false + }, + "EC2InstanceType" : { + "description" : "The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.", "type" : "string", - "maxLength" : 1024 + "pattern" : "^.*..*$" }, "FleetType" : { "description" : "Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet.", "type" : "string", "enum" : [ "ON_DEMAND", "SPOT" ] }, + "InstanceRoleARN" : { + "description" : "A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.", + "type" : "string", + "minLength" : 1, + "pattern" : "^arn:aws(-.*)?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$" + }, + "InstanceRoleCredentialsProvider" : { + "description" : "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", + "type" : "string", + "enum" : [ "SHARED_CREDENTIAL_FILE" ] + }, "Locations" : { + "type" : "array", "minItems" : 1, "maxItems" : 100, - "insertionOrder" : false, - "type" : "array", "items" : { "$ref" : "#/definitions/LocationConfiguration" - } - }, - "NewGameSessionProtectionPolicy" : { - "description" : "A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.", - "type" : "string", - "enum" : [ "FullProtection", "NoProtection" ] + }, + "insertionOrder" : false }, - "ScriptId" : { - "pattern" : "^script-\\S+|^arn:.*:script/script-\\S+", - "description" : "A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.\n\nNote: It is not currently possible to use the !Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alternatively, enter a ScriptId string manually.", - "type" : "string" + "LogPaths" : { + "description" : "This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()", + "type" : "array", + "items" : { + "type" : "string" + }, + "insertionOrder" : false }, "MaxSize" : { "description" : "[DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to \"1\". Once the fleet is active, you can change this value.", "type" : "integer", "minimum" : 0 }, - "RuntimeConfiguration" : { - "description" : "Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception.\n\nThis parameter is required unless the parameters ServerLaunchPath and ServerLaunchParameters are defined. Runtime configuration has replaced these parameters, but fleets that use them will continue to work.", - "$ref" : "#/definitions/RuntimeConfiguration" - }, - "LogPaths" : { - "description" : "This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()", - "insertionOrder" : false, + "MetricGroups" : { + "description" : "The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.", "type" : "array", + "maxItems" : 1, "items" : { "type" : "string" - } - }, - "ServerLaunchPath" : { - "minLength" : 1, - "description" : "This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.", - "type" : "string", - "maxLength" : 1024 + }, + "insertionOrder" : false }, "MinSize" : { "description" : "[DEPRECATED] The minimum value allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to \"0\". After the fleet is active, you can change this value.", "type" : "integer", "minimum" : 0 }, - "PeerVpcAwsAccountId" : { - "minLength" : 1, - "pattern" : "^[0-9]{12}$", - "description" : "A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.", + "Name" : { + "description" : "A descriptive label that is associated with a fleet. Fleet names do not need to be unique.", "type" : "string", + "minLength" : 1, "maxLength" : 1024 }, - "MetricGroups" : { - "maxItems" : 1, - "description" : "The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "type" : "string" - } + "NewGameSessionProtectionPolicy" : { + "description" : "A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.", + "type" : "string", + "enum" : [ "FullProtection", "NoProtection" ] }, - "BuildId" : { - "pattern" : "^build-\\S+|^arn:.*:build/build-\\S+", - "description" : "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.", - "type" : "string" + "PeerVpcAwsAccountId" : { + "description" : "A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024, + "pattern" : "^[0-9]{12}$" + }, + "PeerVpcId" : { + "description" : "A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024, + "pattern" : "^vpc-\\S+" }, "ResourceCreationLimitPolicy" : { "description" : "A policy that limits the number of game sessions an individual player can create over a span of time for this fleet.", "$ref" : "#/definitions/ResourceCreationLimitPolicy" }, - "EC2InstanceType" : { - "pattern" : "^.*..*$", - "description" : "The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.", - "type" : "string" + "FleetId" : { + "description" : "Unique fleet ID", + "type" : "string", + "pattern" : "^fleet-\\S+" + }, + "BuildId" : { + "description" : "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.", + "type" : "string", + "pattern" : "^build-\\S+|^arn:.*:build/build-\\S+" + }, + "ScriptId" : { + "description" : "A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.\n\nNote: It is not currently possible to use the !Ref command to reference a script created with a CloudFormation template for the fleet property ScriptId. Instead, use Fn::GetAtt Script.Arn or Fn::GetAtt Script.Id to retrieve either of these properties as input for ScriptId. Alternatively, enter a ScriptId string manually.", + "type" : "string", + "pattern" : "^script-\\S+|^arn:.*:script/script-\\S+" + }, + "RuntimeConfiguration" : { + "description" : "Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception.\n\nThis parameter is required unless the parameters ServerLaunchPath and ServerLaunchParameters are defined. Runtime configuration has replaced these parameters, but fleets that use them will continue to work.", + "$ref" : "#/definitions/RuntimeConfiguration" + }, + "ServerLaunchParameters" : { + "description" : "This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024 + }, + "ServerLaunchPath" : { + "description" : "This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.", + "type" : "string", + "minLength" : 1, + "maxLength" : 1024 + } + }, + "required" : [ "Name" ], + "additionalProperties" : false, + "createOnlyProperties" : [ "/properties/ApplyCapacity", "/properties/BuildId", "/properties/CertificateConfiguration", "/properties/EC2InstanceType", "/properties/FleetType", "/properties/InstanceRoleARN", "/properties/InstanceRoleCredentialsProvider", "/properties/LogPaths", "/properties/PeerVpcAwsAccountId", "/properties/PeerVpcId", "/properties/ScriptId", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath", "/properties/CertificateType", "/properties/ComputeType" ], + "deprecatedProperties" : [ "/properties/LogPaths", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath" ], + "readOnlyProperties" : [ "/properties/FleetId" ], + "primaryIdentifier" : [ "/properties/FleetId" ], + "handlers" : { + "create" : { + "permissions" : [ "gamelift:CreateFleet", "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes", "gamelift:UpdateFleetCapacity", "gamelift:DescribeFleetLocationCapacity", "gamelift:PutScalingPolicy", "gamelift:DescribeScalingPolicies" ] + }, + "read" : { + "permissions" : [ "gamelift:DescribeFleetAttributes", "gamelift:DescribeFleetLocationAttributes", "gamelift:DescribeFleetCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetUtilization", "gamelift:DescribeRuntimeConfiguration", "gamelift:DescribeEC2InstanceLimits", "gamelift:DescribeFleetEvents", "gamelift:DescribeScalingPolicies" ] + }, + "update" : { + "permissions" : [ "gamelift:UpdateFleetAttributes", "gamelift:CreateFleetLocations", "gamelift:DeleteFleetLocations", "gamelift:UpdateFleetCapacity", "gamelift:UpdateFleetPortSettings", "gamelift:UpdateRuntimeConfiguration", "gamelift:DescribeFleetLocationCapacity", "gamelift:DescribeFleetPortSettings", "gamelift:DescribeFleetLocationAttributes", "gamelift:PutScalingPolicy", "gamelift:DescribeScalingPolicies", "gamelift:DeleteScalingPolicy" ] + }, + "delete" : { + "permissions" : [ "gamelift:DeleteFleet", "gamelift:DescribeFleetLocationCapacity", "gamelift:DescribeScalingPolicies", "gamelift:DeleteScalingPolicy" ] + }, + "list" : { + "permissions" : [ "gamelift:ListFleets" ] } - } + }, + "taggable" : true } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-identitystore-groupmembership.json b/aws-cloudformation-schema/aws-identitystore-groupmembership.json index b2aa4c9abc..c178adce8f 100644 --- a/aws-cloudformation-schema/aws-identitystore-groupmembership.json +++ b/aws-cloudformation-schema/aws-identitystore-groupmembership.json @@ -55,7 +55,7 @@ }, "required" : [ "IdentityStoreId", "GroupId", "MemberId" ], "readOnlyProperties" : [ "/properties/MembershipId" ], - "createOnlyProperties" : [ "/properties/IdentityStoreId" ], + "createOnlyProperties" : [ "/properties/IdentityStoreId", "/properties/GroupId", "/properties/MemberId" ], "primaryIdentifier" : [ "/properties/MembershipId", "/properties/IdentityStoreId" ], "handlers" : { "create" : { diff --git a/aws-cloudformation-schema/aws-imagebuilder-image.json b/aws-cloudformation-schema/aws-imagebuilder-image.json index 5bbb06779f..ff6b8454e5 100644 --- a/aws-cloudformation-schema/aws-imagebuilder-image.json +++ b/aws-cloudformation-schema/aws-imagebuilder-image.json @@ -31,6 +31,14 @@ "description" : "The Amazon Resource Name (ARN) of the infrastructure configuration.", "type" : "string" }, + "Workflows" : { + "description" : "Workflows to define the image build process", + "type" : "array", + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/WorkflowConfiguration" + } + }, "ImageId" : { "description" : "The AMI ID of the EC2 AMI in current region.", "type" : "string" @@ -47,6 +55,10 @@ "description" : "Contains settings for vulnerability scans.", "$ref" : "#/definitions/ImageScanningConfiguration" }, + "ExecutionRole" : { + "description" : "The execution role name/ARN for the image build, if provided", + "type" : "string" + }, "Tags" : { "description" : "The tags associated with the image.", "type" : "object", @@ -109,6 +121,55 @@ "type" : "string" } } + }, + "WorkflowConfiguration" : { + "description" : "The workflow configuration of the image", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "WorkflowArn" : { + "description" : "The Amazon Resource Name (ARN) of the workflow", + "type" : "string" + }, + "Parameters" : { + "description" : "The parameters associated with the workflow", + "type" : "array", + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/WorkflowParameter" + } + }, + "ParallelGroup" : { + "description" : "The parallel group name", + "type" : "string" + }, + "OnFailure" : { + "description" : "Define execution decision in case of workflow failure", + "type" : "string", + "enum" : [ "CONTINUE", "ABORT" ] + } + } + }, + "WorkflowParameter" : { + "description" : "A parameter associated with the workflow", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Name" : { + "type" : "string" + }, + "Value" : { + "type" : "array", + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/WorkflowParameterValue" + } + } + } + }, + "WorkflowParameterValue" : { + "description" : "The value associated with the workflow parameter", + "type" : "string" } }, "additionalProperties" : false, @@ -119,13 +180,13 @@ } ], "primaryIdentifier" : [ "/properties/Arn" ], "readOnlyProperties" : [ "/properties/Arn", "/properties/Name", "/properties/ImageId", "/properties/ImageUri" ], - "createOnlyProperties" : [ "/properties/ImageRecipeArn", "/properties/ContainerRecipeArn", "/properties/InfrastructureConfigurationArn", "/properties/DistributionConfigurationArn", "/properties/ImageTestsConfiguration", "/properties/ImageScanningConfiguration", "/properties/EnhancedImageMetadataEnabled", "/properties/Tags" ], + "createOnlyProperties" : [ "/properties/ImageRecipeArn", "/properties/ContainerRecipeArn", "/properties/InfrastructureConfigurationArn", "/properties/Workflows", "/properties/DistributionConfigurationArn", "/properties/ImageTestsConfiguration", "/properties/ImageScanningConfiguration", "/properties/EnhancedImageMetadataEnabled", "/properties/Tags" ], "tagging" : { "taggable" : false }, "handlers" : { "create" : { - "permissions" : [ "ecr:BatchGetRepositoryScanningConfiguration", "iam:GetRole", "iam:CreateServiceLinkedRole", "imagebuilder:GetImageRecipe", "imagebuilder:GetInfrastructureConfiguration", "imagebuilder:GetDistributionConfiguration", "imagebuilder:GetImage", "imagebuilder:CreateImage", "imagebuilder:TagResource", "inspector2:BatchGetAccountStatus" ], + "permissions" : [ "ecr:BatchGetRepositoryScanningConfiguration", "iam:GetRole", "iam:PassRole", "iam:CreateServiceLinkedRole", "imagebuilder:GetImageRecipe", "imagebuilder:GetInfrastructureConfiguration", "imagebuilder:GetDistributionConfiguration", "imagebuilder:GetWorkflow", "imagebuilder:GetImage", "imagebuilder:CreateImage", "imagebuilder:TagResource", "inspector2:BatchGetAccountStatus" ], "timeoutInMinutes" : 720 }, "read" : { diff --git a/aws-cloudformation-schema/aws-imagebuilder-imagepipeline.json b/aws-cloudformation-schema/aws-imagebuilder-imagepipeline.json index cca806028d..dcc2b4dad1 100644 --- a/aws-cloudformation-schema/aws-imagebuilder-imagepipeline.json +++ b/aws-cloudformation-schema/aws-imagebuilder-imagepipeline.json @@ -44,6 +44,14 @@ "description" : "The Amazon Resource Name (ARN) of the infrastructure configuration associated with this image pipeline.", "type" : "string" }, + "Workflows" : { + "description" : "Workflows to define the image build process", + "type" : "array", + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/WorkflowConfiguration" + } + }, "EnhancedImageMetadataEnabled" : { "description" : "Collects additional information about the image being created, including the operating system (OS) version and package list.", "type" : "boolean" @@ -52,6 +60,10 @@ "description" : "Contains settings for vulnerability scans.", "$ref" : "#/definitions/ImageScanningConfiguration" }, + "ExecutionRole" : { + "description" : "The execution role name/ARN for the image build, if provided", + "type" : "string" + }, "Tags" : { "description" : "The tags of this image pipeline.", "type" : "object", @@ -130,6 +142,55 @@ "enum" : [ "EXPRESSION_MATCH_ONLY", "EXPRESSION_MATCH_AND_DEPENDENCY_UPDATES_AVAILABLE" ] } } + }, + "WorkflowConfiguration" : { + "description" : "The workflow configuration of the image", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "WorkflowArn" : { + "description" : "The Amazon Resource Name (ARN) of the workflow", + "type" : "string" + }, + "Parameters" : { + "description" : "The parameters associated with the workflow", + "type" : "array", + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/WorkflowParameter" + } + }, + "ParallelGroup" : { + "description" : "The parallel group name", + "type" : "string" + }, + "OnFailure" : { + "description" : "Define execution decision in case of workflow failure", + "type" : "string", + "enum" : [ "CONTINUE", "ABORT" ] + } + } + }, + "WorkflowParameter" : { + "description" : "A parameter associated with the workflow", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Name" : { + "type" : "string" + }, + "Value" : { + "type" : "array", + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/WorkflowParameterValue" + } + } + } + }, + "WorkflowParameterValue" : { + "description" : "The value associated with the workflow parameter", + "type" : "string" } }, "additionalProperties" : false, @@ -146,10 +207,10 @@ }, "handlers" : { "create" : { - "permissions" : [ "ecr:BatchGetRepositoryScanningConfiguration", "iam:GetRole", "iam:CreateServiceLinkedRole", "imagebuilder:TagResource", "imagebuilder:GetImagePipeline", "imagebuilder:GetImageRecipe", "imagebuilder:GetInfrastructureConfiguration", "imagebuilder:GetDistributionConfiguration", "imagebuilder:CreateImagePipeline", "inspector2:BatchGetAccountStatus" ] + "permissions" : [ "ecr:BatchGetRepositoryScanningConfiguration", "iam:GetRole", "iam:PassRole", "iam:CreateServiceLinkedRole", "imagebuilder:TagResource", "imagebuilder:GetImagePipeline", "imagebuilder:GetImageRecipe", "imagebuilder:GetInfrastructureConfiguration", "imagebuilder:GetDistributionConfiguration", "imagebuilder:CreateImagePipeline", "imagebuilder:GetWorkflow", "inspector2:BatchGetAccountStatus" ] }, "update" : { - "permissions" : [ "imagebuilder:GetImagePipeline", "imagebuilder:UpdateImagePipeline" ] + "permissions" : [ "iam:PassRole", "imagebuilder:GetImagePipeline", "imagebuilder:UpdateImagePipeline", "imagebuilder:GetWorkflow" ] }, "read" : { "permissions" : [ "imagebuilder:GetImagePipeline" ] diff --git a/aws-cloudformation-schema/aws-imagebuilder-workflow.json b/aws-cloudformation-schema/aws-imagebuilder-workflow.json new file mode 100644 index 0000000000..ce8f67f965 --- /dev/null +++ b/aws-cloudformation-schema/aws-imagebuilder-workflow.json @@ -0,0 +1,92 @@ +{ + "typeName" : "AWS::ImageBuilder::Workflow", + "description" : "Resource schema for AWS::ImageBuilder::Workflow", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-imagebuilder", + "properties" : { + "Arn" : { + "description" : "The Amazon Resource Name (ARN) of the workflow.", + "type" : "string" + }, + "Name" : { + "description" : "The name of the workflow.", + "type" : "string" + }, + "Version" : { + "description" : "The version of the workflow.", + "type" : "string" + }, + "Description" : { + "description" : "The description of the workflow.", + "type" : "string" + }, + "ChangeDescription" : { + "description" : "The change description of the workflow.", + "type" : "string" + }, + "Type" : { + "description" : "The type of the workflow denotes whether the workflow is used to build, test, or distribute.", + "type" : "string", + "enum" : [ "BUILD", "TEST", "DISTRIBUTION" ] + }, + "Data" : { + "description" : "The data of the workflow.", + "type" : "string", + "minLength" : 1, + "maxLength" : 16000 + }, + "Uri" : { + "description" : "The uri of the workflow.", + "type" : "string" + }, + "KmsKeyId" : { + "description" : "The KMS key identifier used to encrypt the workflow.", + "type" : "string" + }, + "Tags" : { + "description" : "The tags associated with the workflow.", + "type" : "object", + "additionalProperties" : false, + "patternProperties" : { + ".{1,}" : { + "type" : "string" + } + } + } + }, + "additionalProperties" : false, + "required" : [ "Name", "Type", "Version" ], + "oneOf" : [ { + "required" : [ "Data" ] + }, { + "required" : [ "Uri" ] + } ], + "primaryIdentifier" : [ "/properties/Arn" ], + "readOnlyProperties" : [ "/properties/Arn" ], + "writeOnlyProperties" : [ "/properties/Data", "/properties/Uri" ], + "createOnlyProperties" : [ "/properties/Name", "/properties/Version", "/properties/ChangeDescription", "/properties/Description", "/properties/Data", "/properties/Uri", "/properties/Type", "/properties/KmsKeyId", "/properties/Tags" ], + "tagging" : { + "taggable" : false + }, + "handlers" : { + "create" : { + "permissions" : [ "iam:GetRole", "kms:GenerateDataKey*", "kms:Encrypt", "kms:Decrypt", "s3:GetObject", "s3:HeadBucket", "s3:GetBucketLocation", "imagebuilder:TagResource", "imagebuilder:GetWorkflow", "imagebuilder:CreateWorkflow" ] + }, + "read" : { + "permissions" : [ "imagebuilder:GetWorkflow" ] + }, + "delete" : { + "permissions" : [ "imagebuilder:GetWorkflow", "imagebuilder:UnTagResource", "imagebuilder:DeleteWorkflow" ] + }, + "list" : { + "permissions" : [ "imagebuilder:ListWorkflows" ], + "handlerSchema" : { + "properties" : { + "Arn" : { + "$ref" : "resource-schema.json#/properties/Arn" + } + }, + "required" : [ "Arn" ] + } + } + } +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-iot-certificateprovider.json b/aws-cloudformation-schema/aws-iot-certificateprovider.json new file mode 100644 index 0000000000..f0f2c4e554 --- /dev/null +++ b/aws-cloudformation-schema/aws-iot-certificateprovider.json @@ -0,0 +1,96 @@ +{ + "typeName" : "AWS::IoT::CertificateProvider", + "description" : "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider.", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", + "definitions" : { + "Tag" : { + "description" : "A key-value pair to associate with a resource.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Key" : { + "type" : "string", + "description" : "The key name of the tag. You can specify a value that is 1 to 127 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" : 127 + }, + "Value" : { + "type" : "string", + "description" : "The value for the tag. You can specify a value that is 1 to 255 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" : 255 + } + }, + "required" : [ "Value", "Key" ] + }, + "CertificateProviderOperation" : { + "type" : "string", + "enum" : [ "CreateCertificateFromCsr" ] + } + }, + "properties" : { + "CertificateProviderName" : { + "type" : "string", + "pattern" : "[\\w=,@-]+", + "minLength" : 1, + "maxLength" : 128 + }, + "LambdaFunctionArn" : { + "type" : "string", + "minLength" : 1, + "maxLength" : 170 + }, + "AccountDefaultForOperations" : { + "type" : "array", + "minItems" : 1, + "maxItems" : 1, + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/CertificateProviderOperation" + } + }, + "Tags" : { + "description" : "An array of key-value pairs to apply to this resource.", + "type" : "array", + "maxItems" : 50, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/Tag" + } + }, + "Arn" : { + "type" : "string" + } + }, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + }, + "replacementStrategy" : "delete_then_create", + "additionalProperties" : false, + "required" : [ "LambdaFunctionArn", "AccountDefaultForOperations" ], + "readOnlyProperties" : [ "/properties/Arn" ], + "createOnlyProperties" : [ "/properties/CertificateProviderName" ], + "primaryIdentifier" : [ "/properties/CertificateProviderName" ], + "handlers" : { + "create" : { + "permissions" : [ "iot:CreateCertificateProvider", "iot:DescribeCertificateProvider", "iot:TagResource", "iot:ListTagsForResource" ] + }, + "read" : { + "permissions" : [ "iot:DescribeCertificateProvider", "iot:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "iot:UpdateCertificateProvider", "iot:DescribeCertificateProvider", "iot:TagResource", "iot:UntagResource", "iot:ListTagsForResource" ] + }, + "delete" : { + "permissions" : [ "iot:DeleteCertificateProvider", "iot:DescribeCertificateProvider" ] + }, + "list" : { + "permissions" : [ "iot:ListCertificateProviders" ] + } + } +} \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-kinesisfirehose-deliverystream.json b/aws-cloudformation-schema/aws-kinesisfirehose-deliverystream.json index 0498b9331f..931acdf123 100644 --- a/aws-cloudformation-schema/aws-kinesisfirehose-deliverystream.json +++ b/aws-cloudformation-schema/aws-kinesisfirehose-deliverystream.json @@ -802,7 +802,7 @@ }, "Type" : { "type" : "string", - "enum" : [ "RecordDeAggregation", "Lambda", "MetadataExtraction", "AppendDelimiterToRecord" ] + "enum" : [ "RecordDeAggregation", "Decompression", "Lambda", "MetadataExtraction", "AppendDelimiterToRecord" ] } }, "required" : [ "Type" ] diff --git a/aws-cloudformation-schema/aws-lambda-eventinvokeconfig.json b/aws-cloudformation-schema/aws-lambda-eventinvokeconfig.json index 41fa50e2ac..1b721397ec 100644 --- a/aws-cloudformation-schema/aws-lambda-eventinvokeconfig.json +++ b/aws-cloudformation-schema/aws-lambda-eventinvokeconfig.json @@ -1,63 +1,112 @@ { "typeName" : "AWS::Lambda::EventInvokeConfig", - "description" : "Resource Type definition for AWS::Lambda::EventInvokeConfig", - "additionalProperties" : false, - "properties" : { - "FunctionName" : { - "type" : "string" - }, - "MaximumRetryAttempts" : { - "type" : "integer" - }, - "Qualifier" : { - "type" : "string" - }, - "DestinationConfig" : { - "$ref" : "#/definitions/DestinationConfig" - }, - "Id" : { - "type" : "string" - }, - "MaximumEventAgeInSeconds" : { - "type" : "integer" - } - }, + "description" : "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias.", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", "definitions" : { "DestinationConfig" : { + "description" : "A destination for events after they have been sent to a function for processing.", "type" : "object", - "additionalProperties" : false, "properties" : { - "OnSuccess" : { - "$ref" : "#/definitions/OnSuccess" - }, "OnFailure" : { "$ref" : "#/definitions/OnFailure" + }, + "OnSuccess" : { + "$ref" : "#/definitions/OnSuccess" } - } + }, + "additionalProperties" : false }, - "OnSuccess" : { + "OnFailure" : { + "description" : "The destination configuration for failed invocations.", "type" : "object", - "additionalProperties" : false, "properties" : { "Destination" : { - "type" : "string" + "description" : "The Amazon Resource Name (ARN) of the destination resource.", + "type" : "string", + "pattern" : "^$|arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)", + "minLength" : 0, + "maxLength" : 350 } }, - "required" : [ "Destination" ] + "required" : [ "Destination" ], + "additionalProperties" : false }, - "OnFailure" : { + "OnSuccess" : { + "description" : "The destination configuration for successful invocations.", "type" : "object", - "additionalProperties" : false, "properties" : { "Destination" : { - "type" : "string" + "description" : "The Amazon Resource Name (ARN) of the destination resource.", + "type" : "string", + "pattern" : "^$|arn:(aws[a-zA-Z0-9-]*):([a-zA-Z0-9\\-])+:([a-z]{2}(-gov)?-[a-z]+-\\d{1})?:(\\d{12})?:(.*)", + "minLength" : 0, + "maxLength" : 350 } }, - "required" : [ "Destination" ] + "required" : [ "Destination" ], + "additionalProperties" : false + } + }, + "properties" : { + "DestinationConfig" : { + "$ref" : "#/definitions/DestinationConfig" + }, + "FunctionName" : { + "description" : "The name of the Lambda function.", + "type" : "string", + "pattern" : "^(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\\d{1}:)?(\\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\\$LATEST|[a-zA-Z0-9-_]+))?$" + }, + "MaximumEventAgeInSeconds" : { + "description" : "The maximum age of a request that Lambda sends to a function for processing.", + "type" : "integer", + "minimum" : 60, + "maximum" : 21600 + }, + "MaximumRetryAttempts" : { + "description" : "The maximum number of times to retry when the function returns an error.", + "type" : "integer", + "minimum" : 0, + "maximum" : 2 + }, + "Qualifier" : { + "description" : "The identifier of a version or alias.", + "type" : "string", + "pattern" : "^(|[a-zA-Z0-9$_-]{1,129})$" } }, + "tagging" : { + "taggable" : false, + "tagOnCreate" : false, + "tagUpdatable" : false, + "cloudFormationSystemTags" : false + }, + "additionalProperties" : false, "required" : [ "FunctionName", "Qualifier" ], + "primaryIdentifier" : [ "/properties/FunctionName", "/properties/Qualifier" ], "createOnlyProperties" : [ "/properties/FunctionName", "/properties/Qualifier" ], - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id" ] + "handlers" : { + "create" : { + "permissions" : [ "lambda:PutFunctionEventInvokeConfig" ] + }, + "read" : { + "permissions" : [ "lambda:GetFunctionEventInvokeConfig" ] + }, + "update" : { + "permissions" : [ "lambda:UpdateFunctionEventInvokeConfig" ] + }, + "delete" : { + "permissions" : [ "lambda:DeleteFunctionEventInvokeConfig" ] + }, + "list" : { + "handlerSchema" : { + "properties" : { + "FunctionName" : { + "$ref" : "resource-schema.json#/properties/FunctionName" + } + }, + "required" : [ "FunctionName" ] + }, + "permissions" : [ "lambda:ListFunctionEventInvokeConfigs" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-lambda-function.json b/aws-cloudformation-schema/aws-lambda-function.json index b3fe9cb412..e4efc89f4f 100644 --- a/aws-cloudformation-schema/aws-lambda-function.json +++ b/aws-cloudformation-schema/aws-lambda-function.json @@ -6,12 +6,6 @@ "tagProperty" : "/properties/Tags", "cloudFormationSystemTags" : true }, - "typeName" : "AWS::Lambda::Function", - "readOnlyProperties" : [ "/properties/SnapStartResponse", "/properties/SnapStartResponse/ApplyOn", "/properties/SnapStartResponse/OptimizationStatus", "/properties/Arn" ], - "description" : "Resource Type definition for AWS::Lambda::Function in region", - "createOnlyProperties" : [ "/properties/FunctionName" ], - "primaryIdentifier" : [ "/properties/FunctionName" ], - "required" : [ "Code", "Role" ], "handlers" : { "read" : { "permissions" : [ "lambda:GetFunction", "lambda:GetFunctionCodeSigningConfig" ] @@ -29,8 +23,13 @@ "permissions" : [ "lambda:DeleteFunction", "ec2:DescribeNetworkInterfaces" ] } }, - "writeOnlyProperties" : [ "/properties/SnapStart", "/properties/SnapStart/ApplyOn", "/properties/Code", "/properties/Code/ImageUri", "/properties/Code/S3Bucket", "/properties/Code/S3Key", "/properties/Code/S3ObjectVersion", "/properties/Code/ZipFile", "/properties/Policy" ], + "typeName" : "AWS::Lambda::Function", + "readOnlyProperties" : [ "/properties/SnapStartResponse", "/properties/SnapStartResponse/ApplyOn", "/properties/SnapStartResponse/OptimizationStatus", "/properties/Arn" ], + "description" : "Resource Type definition for AWS::Lambda::Function in region", + "writeOnlyProperties" : [ "/properties/SnapStart", "/properties/SnapStart/ApplyOn", "/properties/Code", "/properties/Code/ImageUri", "/properties/Code/S3Bucket", "/properties/Code/S3Key", "/properties/Code/S3ObjectVersion", "/properties/Code/ZipFile" ], + "createOnlyProperties" : [ "/properties/FunctionName" ], "additionalProperties" : false, + "primaryIdentifier" : [ "/properties/FunctionName" ], "definitions" : { "ImageConfig" : { "additionalProperties" : false, @@ -291,11 +290,8 @@ "required" : [ "Size" ] } }, + "required" : [ "Code", "Role" ], "properties" : { - "Policy" : { - "description" : "The resource policy of your function", - "type" : "object" - }, "Description" : { "description" : "A description of the function.", "type" : "string", diff --git a/aws-cloudformation-schema/aws-logs-delivery.json b/aws-cloudformation-schema/aws-logs-delivery.json index ff532865a6..ca9d4bf69b 100644 --- a/aws-cloudformation-schema/aws-logs-delivery.json +++ b/aws-cloudformation-schema/aws-logs-delivery.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::Logs::Delivery", - "description" : "Resource Type definition for AWS::Logs::Delivery.", + "description" : "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html).", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", "definitions" : { "Tag" : { @@ -24,7 +24,7 @@ "additionalProperties" : false }, "Arn" : { - "description" : "Amazon Resource Names (ARNs) uniquely identify AWS resources.", + "description" : "Amazon Resource Name (ARN) that uniquely identify AWS resource.", "type" : "string", "minLength" : 16, "maxLength" : 2048, @@ -33,36 +33,36 @@ }, "properties" : { "DeliveryId" : { - "description" : "The value of the Id property for this object.", + "description" : "The unique ID that identifies this delivery in your account.", "type" : "string", "minLength" : 1, "maxLength" : 64, "pattern" : "^[0-9A-Za-z]+$" }, "Arn" : { - "description" : "The value of the Arn property for this object.", + "description" : "The Amazon Resource Name (ARN) that uniquely identifies this delivery.", "$ref" : "#/definitions/Arn" }, "DeliverySourceName" : { - "description" : "The value of the DeliverySourceName property for this object.", + "description" : "The name of the delivery source that is associated with this delivery.", "type" : "string", "pattern" : "[\\w-]*$", "minLength" : 1, "maxLength" : 60 }, "DeliveryDestinationArn" : { - "description" : "The value of the DeliveryDestinationArn property for this object.", + "description" : "The ARN of the delivery destination that is associated with this delivery.", "$ref" : "#/definitions/Arn" }, "DeliveryDestinationType" : { - "description" : "The value of the DeliveryDestinationType property for this object.", + "description" : "Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.", "type" : "string", "minLength" : 1, "maxLength" : 12, "pattern" : "^[0-9A-Za-z]+$" }, "Tags" : { - "description" : "The value of the Tags property for this object.", + "description" : "The tags that have been assigned to this delivery.", "type" : "array", "uniqueItems" : true, "insertionOrder" : false, diff --git a/aws-cloudformation-schema/aws-logs-deliverydestination.json b/aws-cloudformation-schema/aws-logs-deliverydestination.json index bce4949f96..001dbf2a61 100644 --- a/aws-cloudformation-schema/aws-logs-deliverydestination.json +++ b/aws-cloudformation-schema/aws-logs-deliverydestination.json @@ -1,10 +1,10 @@ { "typeName" : "AWS::Logs::DeliveryDestination", - "description" : "Resource Type definition for AWS::Logs::DeliveryDestination", + "description" : "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", "definitions" : { "Arn" : { - "description" : "Amazon Resource Names (ARNs) uniquely identify AWS resources.", + "description" : "The Amazon Resource Name (ARN) that uniquely identifies a resource.", "type" : "string", "minLength" : 16, "maxLength" : 2048, @@ -52,22 +52,22 @@ }, "properties" : { "Name" : { - "description" : "The unique name of the Delivery Destination.", + "description" : "The name of this delivery destination.", "type" : "string", "pattern" : "[\\w-]*$", "minLength" : 1, "maxLength" : 60 }, "Arn" : { - "description" : "The value of the Arn property for this object.", + "description" : "The Amazon Resource Name (ARN) that uniquely identifies this delivery destination.", "$ref" : "#/definitions/Arn" }, "DestinationResourceArn" : { - "description" : "The ARN of the Destination Resource.", + "description" : "The ARN of the AWS resource that will receive the logs.", "$ref" : "#/definitions/Arn" }, "Tags" : { - "description" : "An array of key-value pairs to apply to this resource.", + "description" : "The tags that have been assigned to this delivery destination.", "type" : "array", "uniqueItems" : true, "insertionOrder" : false, @@ -76,7 +76,7 @@ } }, "DeliveryDestinationType" : { - "description" : "The value of the DeliveryDestinationType property for this object.", + "description" : "Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.", "type" : "string", "minLength" : 1, "maxLength" : 12, diff --git a/aws-cloudformation-schema/aws-logs-deliverysource.json b/aws-cloudformation-schema/aws-logs-deliverysource.json index 3bd462eb6e..27edb5adea 100644 --- a/aws-cloudformation-schema/aws-logs-deliverysource.json +++ b/aws-cloudformation-schema/aws-logs-deliverysource.json @@ -1,6 +1,6 @@ { "typeName" : "AWS::Logs::DeliverySource", - "description" : "Resource Type definition for AWS::Logs::DeliverySource.", + "description" : " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html).", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", "definitions" : { "Tag" : { @@ -24,7 +24,7 @@ "additionalProperties" : false }, "Arn" : { - "description" : "The ARN of the resource that will be sending the logs.", + "description" : "The Amazon Resource Name (ARN) that uniquely identifies this delivery source.", "type" : "string", "minLength" : 16, "maxLength" : 2048, @@ -40,11 +40,11 @@ "maxLength" : 60 }, "Arn" : { - "description" : "The ARN of the Aqueduct Source.", + "description" : "The Amazon Resource Name (ARN) that uniquely identifies this delivery source.", "$ref" : "#/definitions/Arn" }, "ResourceArns" : { - "description" : "List of ARN of the resource that will be sending the logs", + "description" : "This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array.", "type" : "array", "uniqueItems" : true, "insertionOrder" : false, @@ -57,7 +57,7 @@ "$ref" : "#/definitions/Arn" }, "Service" : { - "description" : "The service generating the log", + "description" : "The AWS service that is sending logs.", "type" : "string", "pattern" : "[\\w-]*$", "minLength" : 1, @@ -71,7 +71,7 @@ "maxLength" : 255 }, "Tags" : { - "description" : "An array of key-value pairs to apply to this resource.", + "description" : "The tags that have been assigned to this delivery source.", "type" : "array", "uniqueItems" : true, "insertionOrder" : false, diff --git a/aws-cloudformation-schema/aws-logs-querydefinition.json b/aws-cloudformation-schema/aws-logs-querydefinition.json index 1d3bb5dcf3..c03b5971a5 100644 --- a/aws-cloudformation-schema/aws-logs-querydefinition.json +++ b/aws-cloudformation-schema/aws-logs-querydefinition.json @@ -45,19 +45,19 @@ "primaryIdentifier" : [ "/properties/QueryDefinitionId" ], "handlers" : { "create" : { - "permissions" : [ "logs:PutQueryDefinition", "logs:DescribeQueryDefinition" ] + "permissions" : [ "logs:PutQueryDefinition" ] }, "read" : { - "permissions" : [ "logs:DescribeQueryDefinition" ] + "permissions" : [ "logs:DescribeQueryDefinitions" ] }, "update" : { - "permissions" : [ "logs:PutQueryDefinition", "logs:DescribeQueryDefinition", "logs:DeleteQueryDefinition" ] + "permissions" : [ "logs:PutQueryDefinition" ] }, "delete" : { - "permissions" : [ "logs:DescribeQueryDefinition", "logs:DeleteQueryDefinition" ] + "permissions" : [ "logs:DeleteQueryDefinition" ] }, "list" : { - "permissions" : [ "logs:DescribeQueryDefinition" ] + "permissions" : [ "logs:DescribeQueryDefinitions" ] } }, "taggable" : false diff --git a/aws-cloudformation-schema/aws-logs-subscriptionfilter.json b/aws-cloudformation-schema/aws-logs-subscriptionfilter.json index 52f645771e..ec4b705f8e 100644 --- a/aws-cloudformation-schema/aws-logs-subscriptionfilter.json +++ b/aws-cloudformation-schema/aws-logs-subscriptionfilter.json @@ -45,7 +45,7 @@ "permissions" : [ "logs:DescribeSubscriptionFilters" ] }, "update" : { - "permissions" : [ "logs:PutSubscriptionFilter", "logs:DescribeSubscriptionFilters" ] + "permissions" : [ "iam:PassRole", "logs:PutSubscriptionFilter", "logs:DescribeSubscriptionFilters" ] }, "delete" : { "permissions" : [ "logs:DeleteSubscriptionFilter" ] diff --git a/aws-cloudformation-schema/aws-msk-batchscramsecret.json b/aws-cloudformation-schema/aws-msk-batchscramsecret.json index b3403f73f0..f9276df40f 100644 --- a/aws-cloudformation-schema/aws-msk-batchscramsecret.json +++ b/aws-cloudformation-schema/aws-msk-batchscramsecret.json @@ -31,13 +31,13 @@ }, "handlers" : { "create" : { - "permissions" : [ "kafka:BatchAssociateScramSecret", "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey" ] + "permissions" : [ "kafka:BatchAssociateScramSecret", "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey", "secretsmanager:GetSecretValue" ] }, "delete" : { "permissions" : [ "kafka:BatchDisassociateScramSecret", "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey" ] }, "list" : { - "permissions" : [ "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey" ], + "permissions" : [ "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey", "secretsmanager:GetSecretValue" ], "handlerSchema" : { "properties" : { "ClusterArn" : { @@ -48,10 +48,10 @@ } }, "read" : { - "permissions" : [ "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey" ] + "permissions" : [ "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey", "secretsmanager:GetSecretValue" ] }, "update" : { - "permissions" : [ "kafka:BatchAssociateScramSecret", "kafka:BatchDisassociateScramSecret", "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey" ] + "permissions" : [ "kafka:BatchAssociateScramSecret", "kafka:BatchDisassociateScramSecret", "kafka:ListScramSecrets", "kms:CreateGrant", "kms:DescribeKey", "secretsmanager:GetSecretValue" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-opensearchservice-domain.json b/aws-cloudformation-schema/aws-opensearchservice-domain.json index 5ff469d116..b38f6d4971 100644 --- a/aws-cloudformation-schema/aws-opensearchservice-domain.json +++ b/aws-cloudformation-schema/aws-opensearchservice-domain.json @@ -361,6 +361,9 @@ "AccessPolicies" : { "type" : "object" }, + "IPAddressType" : { + "type" : "string" + }, "EngineVersion" : { "type" : "string" }, @@ -403,6 +406,9 @@ "DomainEndpoint" : { "type" : "string" }, + "DomainEndpointV2" : { + "type" : "string" + }, "DomainEndpoints" : { "type" : "object", "additionalProperties" : false, @@ -448,7 +454,7 @@ "additionalProperties" : false, "createOnlyProperties" : [ "/properties/DomainName" ], "conditionalCreateOnlyProperties" : [ "/properties/EncryptionAtRestOptions/properties", "/properties/AdvancedSecurityOptions/properties/Enabled" ], - "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/DomainArn", "/properties/DomainEndpoint", "/properties/DomainEndpoints", "/properties/ServiceSoftwareOptions", "/properties/AdvancedSecurityOptions/AnonymousAuthDisableDate" ], + "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/DomainArn", "/properties/DomainEndpoint", "/properties/DomainEndpointV2", "/properties/DomainEndpoints", "/properties/ServiceSoftwareOptions", "/properties/AdvancedSecurityOptions/AnonymousAuthDisableDate" ], "writeOnlyProperties" : [ "/properties/AdvancedSecurityOptions/MasterUserOptions", "/properties/AdvancedSecurityOptions/SAMLOptions/MasterUserName", "/properties/AdvancedSecurityOptions/SAMLOptions/MasterBackendRole" ], "primaryIdentifier" : [ "/properties/DomainName" ], "handlers" : { diff --git a/aws-cloudformation-schema/aws-osis-pipeline.json b/aws-cloudformation-schema/aws-osis-pipeline.json index 736859c831..6cf5da986f 100644 --- a/aws-cloudformation-schema/aws-osis-pipeline.json +++ b/aws-cloudformation-schema/aws-osis-pipeline.json @@ -3,6 +3,30 @@ "description" : "An OpenSearch Ingestion Service Data Prepper pipeline running Data Prepper.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-osis.git", "definitions" : { + "BufferOptions" : { + "description" : "Key-value pairs to configure buffering.", + "type" : "object", + "properties" : { + "PersistentBufferEnabled" : { + "type" : "boolean", + "description" : "Whether persistent buffering should be enabled." + } + }, + "required" : [ "PersistentBufferEnabled" ], + "additionalProperties" : false + }, + "EncryptionAtRestOptions" : { + "description" : "Key-value pairs to configure encryption at rest.", + "type" : "object", + "properties" : { + "KmsKeyArn" : { + "type" : "string", + "description" : "The KMS key to use for encrypting data. By default an AWS owned key is used" + } + }, + "required" : [ "KmsKeyArn" ], + "additionalProperties" : false + }, "LogPublishingOptions" : { "description" : "Key-value pairs to configure log publishing.", "type" : "object", @@ -22,6 +46,7 @@ "pattern" : "\\/aws\\/vendedlogs\\/[\\.\\-_/#A-Za-z0-9]+" } }, + "required" : [ "LogGroup" ], "additionalProperties" : false } }, @@ -74,6 +99,7 @@ } } }, + "required" : [ "SubnetIds" ], "additionalProperties" : false }, "VpcEndpoint" : { @@ -96,6 +122,12 @@ } }, "properties" : { + "BufferOptions" : { + "$ref" : "#/definitions/BufferOptions" + }, + "EncryptionAtRestOptions" : { + "$ref" : "#/definitions/EncryptionAtRestOptions" + }, "LogPublishingOptions" : { "$ref" : "#/definitions/LogPublishingOptions" }, @@ -175,16 +207,16 @@ }, "handlers" : { "create" : { - "permissions" : [ "osis:CreatePipeline", "osis:GetPipeline", "osis:ListTagsForResource", "iam:PassRole", "iam:CreateServiceLinkedRole" ] + "permissions" : [ "osis:CreatePipeline", "osis:GetPipeline", "osis:TagResource", "osis:ListTagsForResource", "iam:PassRole", "iam:CreateServiceLinkedRole", "logs:CreateLogDelivery", "kms:DescribeKey" ] }, "read" : { "permissions" : [ "osis:GetPipeline", "osis:ListTagsForResource" ] }, "update" : { - "permissions" : [ "osis:UpdatePipeline", "osis:ListTagsForResource", "osis:TagResource", "osis:UntagResource", "iam:PassRole" ] + "permissions" : [ "osis:UpdatePipeline", "osis:GetPipeline", "osis:ListTagsForResource", "osis:TagResource", "osis:UntagResource", "iam:PassRole", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:ListLogDeliveries", "kms:DescribeKey" ] }, "delete" : { - "permissions" : [ "osis:DeletePipeline" ] + "permissions" : [ "osis:DeletePipeline", "osis:GetPipeline", "logs:GetLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries" ] }, "list" : { "permissions" : [ "osis:ListPipelines" ] diff --git a/aws-cloudformation-schema/aws-rds-dbcluster.json b/aws-cloudformation-schema/aws-rds-dbcluster.json index 696550dc95..f0c2fcb8ad 100644 --- a/aws-cloudformation-schema/aws-rds-dbcluster.json +++ b/aws-cloudformation-schema/aws-rds-dbcluster.json @@ -432,7 +432,7 @@ "timeoutInMinutes" : 2160 }, "delete" : { - "permissions" : [ "rds:DeleteDBCluster", "rds:DeleteDBInstance", "rds:DescribeDBClusters", "rds:DescribeGlobalClusters", "rds:RemoveFromGlobalCluster" ] + "permissions" : [ "rds:CreateDBClusterSnapshot", "rds:DeleteDBCluster", "rds:DeleteDBInstance", "rds:DescribeDBClusters", "rds:DescribeGlobalClusters", "rds:RemoveFromGlobalCluster" ] }, "list" : { "permissions" : [ "rds:DescribeDBClusters" ] diff --git a/aws-cloudformation-schema/aws-rds-dbinstance.json b/aws-cloudformation-schema/aws-rds-dbinstance.json index 097f1a6e53..bf79dc3422 100644 --- a/aws-cloudformation-schema/aws-rds-dbinstance.json +++ b/aws-cloudformation-schema/aws-rds-dbinstance.json @@ -498,7 +498,7 @@ "timeoutInMinutes" : 2160 }, "delete" : { - "permissions" : [ "rds:DeleteDBInstance", "rds:DescribeDBInstances" ], + "permissions" : [ "rds:CreateDBSnapshot", "rds:DeleteDBInstance", "rds:DescribeDBInstances" ], "timeoutInMinutes" : 2160 }, "list" : { diff --git a/aws-cloudformation-schema/aws-resourceexplorer2-index.json b/aws-cloudformation-schema/aws-resourceexplorer2-index.json index fa0fc4b9b6..018ca68ec3 100644 --- a/aws-cloudformation-schema/aws-resourceexplorer2-index.json +++ b/aws-cloudformation-schema/aws-resourceexplorer2-index.json @@ -39,7 +39,7 @@ "primaryIdentifier" : [ "/properties/Arn" ], "handlers" : { "create" : { - "permissions" : [ "resource-explorer-2:CreateIndex", "resource-explorer-2:GetIndex", "resource-explorer-2:TagResource", "resource-explorer-2:UpdateIndexType", "resource-explorer-2:DeleteIndex" ] + "permissions" : [ "resource-explorer-2:CreateIndex", "resource-explorer-2:GetIndex", "resource-explorer-2:TagResource", "resource-explorer-2:UpdateIndexType", "resource-explorer-2:DeleteIndex", "iam:CreateServiceLinkedRole" ] }, "update" : { "permissions" : [ "resource-explorer-2:GetIndex", "resource-explorer-2:UpdateIndexType", "resource-explorer-2:TagResource", "resource-explorer-2:UntagResource", "resource-explorer-2:ListTagsForResource" ] diff --git a/aws-cloudformation-schema/aws-route53resolver-resolverconfig.json b/aws-cloudformation-schema/aws-route53resolver-resolverconfig.json index e88f7c0507..18551c3142 100644 --- a/aws-cloudformation-schema/aws-route53resolver-resolverconfig.json +++ b/aws-cloudformation-schema/aws-route53resolver-resolverconfig.json @@ -34,21 +34,24 @@ "required" : [ "ResourceId", "AutodefinedReverseFlag" ], "readOnlyProperties" : [ "/properties/OwnerId", "/properties/Id", "/properties/AutodefinedReverse" ], "createOnlyProperties" : [ "/properties/ResourceId", "/properties/AutodefinedReverseFlag" ], - "primaryIdentifier" : [ "/properties/Id" ], + "primaryIdentifier" : [ "/properties/ResourceId" ], "taggable" : false, "additionalProperties" : false, + "propertyTransform" : { + "/properties/AutodefinedReverseFlag" : "$join([AutodefinedReverseFlag, \"D\"])" + }, "handlers" : { "create" : { - "permissions" : [ "route53resolver:UpdateResolverConfig" ] + "permissions" : [ "route53resolver:UpdateResolverConfig", "route53resolver:GetResolverConfig", "ec2:DescribeVpcs" ] }, "read" : { - "permissions" : [ "route53resolver:GetResolverConfig" ] + "permissions" : [ "route53resolver:GetResolverConfig", "ec2:DescribeVpcs" ] }, "delete" : { - "permissions" : [ "route53resolver:UpdateResolverConfig" ] + "permissions" : [ "route53resolver:UpdateResolverConfig", "route53resolver:ListResolverConfigs", "ec2:DescribeVpcs" ] }, "list" : { - "permissions" : [ "route53resolver:ListResolverConfigs" ] + "permissions" : [ "route53resolver:ListResolverConfigs", "ec2:DescribeVpcs" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-s3-bucket.json b/aws-cloudformation-schema/aws-s3-bucket.json index b48379a8d1..ceb1da58ed 100644 --- a/aws-cloudformation-schema/aws-s3-bucket.json +++ b/aws-cloudformation-schema/aws-s3-bucket.json @@ -1,134 +1,182 @@ { - "tagging" : { - "taggable" : true, - "tagOnCreate" : true, - "tagUpdatable" : true, - "tagProperty" : "/properties/Tags", - "cloudFormationSystemTags" : true - }, - "handlers" : { - "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:ListBucket" ] + "typeName" : "AWS::S3::Bucket", + "description" : "Resource Type definition for AWS::S3::Bucket", + "additionalProperties" : false, + "properties" : { + "AccelerateConfiguration" : { + "$ref" : "#/definitions/AccelerateConfiguration", + "description" : "Configuration for the transfer acceleration state." }, - "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" ] + "AccessControl" : { + "description" : "A canned access control list (ACL) that grants predefined permissions to the bucket.", + "enum" : [ "AuthenticatedRead", "AwsExecRead", "BucketOwnerFullControl", "BucketOwnerRead", "LogDeliveryWrite", "Private", "PublicRead", "PublicReadWrite" ], + "type" : "string" }, - "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" ] + "AnalyticsConfigurations" : { + "description" : "The configuration and any analyses for the analytics filter of an Amazon S3 bucket.", + "items" : { + "$ref" : "#/definitions/AnalyticsConfiguration" + }, + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true }, - "list" : { - "permissions" : [ "s3:ListAllMyBuckets" ] + "BucketEncryption" : { + "$ref" : "#/definitions/BucketEncryption" }, - "delete" : { - "permissions" : [ "s3:DeleteBucket", "s3:ListBucket" ] - } - }, - "typeName" : "AWS::S3::Bucket", - "readOnlyProperties" : [ "/properties/Arn", "/properties/DomainName", "/properties/DualStackDomainName", "/properties/RegionalDomainName", "/properties/WebsiteURL" ], - "description" : "Resource Type definition for AWS::S3::Bucket", - "writeOnlyProperties" : [ "/properties/AccessControl", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionExpirationInDays", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionTransition", "/properties/LifecycleConfiguration/Rules/*/Transition", "/properties/ReplicationConfiguration/Rules/*/Prefix", "/properties/LifecycleConfiguration/Rules/*/ExpiredObjectDeleteMarker" ], - "createOnlyProperties" : [ "/properties/BucketName", "/properties/ObjectLockEnabled" ], - "additionalProperties" : false, - "primaryIdentifier" : [ "/properties/BucketName" ], - "definitions" : { - "DefaultRetention" : { - "description" : "The default retention period that you want to apply to new objects placed in the specified bucket.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "Years" : { - "type" : "integer" - }, - "Days" : { - "type" : "integer" - }, - "Mode" : { - "type" : "string", - "enum" : [ "COMPLIANCE", "GOVERNANCE" ] - } - } + "BucketName" : { + "description" : "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", + "maxLength" : 63, + "minLength" : 3, + "pattern" : "^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$", + "type" : "string" }, - "SourceSelectionCriteria" : { - "description" : "A container that describes additional filters for identifying the source objects that you want to replicate.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "ReplicaModifications" : { - "description" : "A filter that you can specify for selection for modifications on replicas.", - "$ref" : "#/definitions/ReplicaModifications" - }, - "SseKmsEncryptedObjects" : { - "description" : "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS.", - "$ref" : "#/definitions/SseKmsEncryptedObjects" - } - } + "CorsConfiguration" : { + "$ref" : "#/definitions/CorsConfiguration", + "description" : "Rules that define cross-origin resource sharing of objects in this bucket." }, - "ReplicationTimeValue" : { - "additionalProperties" : false, - "type" : "object", - "properties" : { - "Minutes" : { - "type" : "integer" - } + "IntelligentTieringConfigurations" : { + "description" : "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.", + "items" : { + "$ref" : "#/definitions/IntelligentTieringConfiguration" }, - "required" : [ "Minutes" ] + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true }, - "FilterRule" : { - "description" : "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.", - "additionalProperties" : false, + "InventoryConfigurations" : { + "description" : "The inventory configuration for an Amazon S3 bucket.", + "items" : { + "$ref" : "#/definitions/InventoryConfiguration" + }, + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true + }, + "LifecycleConfiguration" : { + "$ref" : "#/definitions/LifecycleConfiguration", + "description" : "Rules that define how Amazon S3 manages objects during their lifetime." + }, + "LoggingConfiguration" : { + "$ref" : "#/definitions/LoggingConfiguration", + "description" : "Settings that define where logs are stored." + }, + "MetricsConfigurations" : { + "description" : "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket.", + "items" : { + "$ref" : "#/definitions/MetricsConfiguration" + }, + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true + }, + "NotificationConfiguration" : { + "$ref" : "#/definitions/NotificationConfiguration", + "description" : "Configuration that defines how Amazon S3 handles bucket notifications." + }, + "ObjectLockConfiguration" : { + "$ref" : "#/definitions/ObjectLockConfiguration", + "description" : "Places an Object Lock configuration on the specified bucket." + }, + "ObjectLockEnabled" : { + "description" : "Indicates whether this bucket has an Object Lock configuration enabled.", + "type" : "boolean" + }, + "OwnershipControls" : { + "description" : "Specifies the container element for object ownership rules.", + "$ref" : "#/definitions/OwnershipControls" + }, + "PublicAccessBlockConfiguration" : { + "$ref" : "#/definitions/PublicAccessBlockConfiguration" + }, + "ReplicationConfiguration" : { + "$ref" : "#/definitions/ReplicationConfiguration", + "description" : "Configuration for replicating objects in an S3 bucket." + }, + "Tags" : { + "description" : "An arbitrary set of tags (key-value pairs) for this S3 bucket.", + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Tag" + }, + "type" : "array" + }, + "VersioningConfiguration" : { + "$ref" : "#/definitions/VersioningConfiguration" + }, + "WebsiteConfiguration" : { + "$ref" : "#/definitions/WebsiteConfiguration" + }, + "Arn" : { + "$ref" : "#/definitions/Arn", + "description" : "The Amazon Resource Name (ARN) of the specified bucket.", + "examples" : [ "arn:aws:s3:::mybucket" ] + }, + "DomainName" : { + "description" : "The IPv4 DNS name of the specified bucket.", + "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.amazonaws.com" ], + "type" : "string" + }, + "DualStackDomainName" : { + "description" : "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html).", + "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.dualstack.us-east-2.amazonaws.com" ], + "type" : "string" + }, + "RegionalDomainName" : { + "description" : "Returns the regional domain name of the specified bucket.", + "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.us-east-2.amazonaws.com" ], + "type" : "string" + }, + "WebsiteURL" : { + "description" : "The Amazon S3 website endpoint for the specified bucket.", + "examples" : [ "Example (IPv4): http://mystack-mybucket-kdwwxmddtr2g.s3-website-us-east-2.amazonaws.com/", "Example (IPv6): http://mystack-mybucket-kdwwxmddtr2g.s3.dualstack.us-east-2.amazonaws.com/" ], + "format" : "uri", + "type" : "string" + } + }, + "definitions" : { + "TagFilter" : { + "description" : "Tags to use to identify a subset of objects for an Amazon S3 bucket.", "type" : "object", + "additionalProperties" : false, "properties" : { "Value" : { "type" : "string" }, - "Name" : { - "type" : "string", - "maxLength" : 1024 + "Key" : { + "type" : "string" } }, - "required" : [ "Value", "Name" ] + "required" : [ "Value", "Key" ] }, - "ReplicationRule" : { - "description" : "Specifies which Amazon S3 objects to replicate and where to store the replicas.", - "additionalProperties" : false, + "Destination" : { + "description" : "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).", "type" : "object", + "additionalProperties" : false, "properties" : { - "Status" : { - "description" : "Specifies whether the rule is enabled.", - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] - }, - "Destination" : { - "$ref" : "#/definitions/ReplicationDestination" - }, - "Filter" : { - "$ref" : "#/definitions/ReplicationRuleFilter" - }, - "Priority" : { - "type" : "integer" + "BucketArn" : { + "description" : "The Amazon Resource Name (ARN) of the bucket to which data is exported.", + "type" : "string" }, - "SourceSelectionCriteria" : { - "$ref" : "#/definitions/SourceSelectionCriteria" + "BucketAccountId" : { + "description" : "The account ID that owns the destination S3 bucket. ", + "type" : "string" }, - "Id" : { - "description" : "A unique identifier for the rule.", + "Format" : { + "description" : "Specifies the file format used when exporting data to Amazon S3.", "type" : "string", - "maxLength" : 255 + "enum" : [ "CSV", "ORC", "Parquet" ] }, "Prefix" : { - "description" : "An object key name prefix that identifies the object or objects to which the rule applies.", - "type" : "string", - "maxLength" : 1024 - }, - "DeleteMarkerReplication" : { - "$ref" : "#/definitions/DeleteMarkerReplication" + "description" : "The prefix to use when exporting data. The prefix is prepended to all results.", + "type" : "string" } }, - "required" : [ "Destination", "Status" ] + "required" : [ "BucketArn", "Format" ] }, "AccelerateConfiguration" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "AccelerationStatus" : { "description" : "Configures the transfer acceleration state for an Amazon S3 bucket.", @@ -138,550 +186,404 @@ }, "required" : [ "AccelerationStatus" ] }, - "Metrics" : { - "additionalProperties" : false, - "type" : "object", - "properties" : { - "Status" : { - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] - }, - "EventThreshold" : { - "$ref" : "#/definitions/ReplicationTimeValue" - } - }, - "required" : [ "Status" ] - }, - "RoutingRuleCondition" : { - "description" : "A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals", - "additionalProperties" : false, + "AnalyticsConfiguration" : { + "description" : "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.", "type" : "object", - "properties" : { - "KeyPrefixEquals" : { - "description" : "The object key name prefix when the redirect is applied.", - "type" : "string" - }, - "HttpErrorCodeReturnedEquals" : { - "description" : "The HTTP error code when the redirect is applied. ", - "type" : "string" - } - } - }, - "OwnershipControls" : { "additionalProperties" : false, - "type" : "object", "properties" : { - "Rules" : { + "TagFilters" : { + "type" : "array", "uniqueItems" : true, "insertionOrder" : true, - "type" : "array", "items" : { - "$ref" : "#/definitions/OwnershipControlsRule" + "$ref" : "#/definitions/TagFilter" } + }, + "StorageClassAnalysis" : { + "$ref" : "#/definitions/StorageClassAnalysis" + }, + "Id" : { + "description" : "The ID that identifies the analytics configuration.", + "type" : "string" + }, + "Prefix" : { + "description" : "The prefix that an object must have to be included in the analytics results.", + "type" : "string" } }, - "required" : [ "Rules" ] + "required" : [ "StorageClassAnalysis", "Id" ] }, - "DeleteMarkerReplication" : { - "additionalProperties" : false, + "StorageClassAnalysis" : { + "description" : "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.", "type" : "object", + "additionalProperties" : false, "properties" : { - "Status" : { - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] + "DataExport" : { + "$ref" : "#/definitions/DataExport" } } }, - "RoutingRule" : { - "description" : "Specifies the redirect behavior and when a redirect is applied.", - "additionalProperties" : false, + "DataExport" : { + "description" : "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.", "type" : "object", + "additionalProperties" : false, "properties" : { - "RedirectRule" : { - "description" : "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return.", - "$ref" : "#/definitions/RedirectRule" + "Destination" : { + "$ref" : "#/definitions/Destination" }, - "RoutingRuleCondition" : { - "$ref" : "#/definitions/RoutingRuleCondition" + "OutputSchemaVersion" : { + "description" : "The version of the output schema to use when exporting data.", + "type" : "string", + "const" : "V_1" } }, - "required" : [ "RedirectRule" ] + "required" : [ "Destination", "OutputSchemaVersion" ] }, - "NotificationFilter" : { - "description" : "Specifies object key name filtering rules.", - "additionalProperties" : false, + "BucketEncryption" : { + "description" : "Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).", "type" : "object", - "properties" : { - "S3Key" : { - "$ref" : "#/definitions/S3KeyFilter" - } - }, - "required" : [ "S3Key" ] - }, - "ReplicationConfiguration" : { - "description" : "A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.", "additionalProperties" : false, - "type" : "object", "properties" : { - "Role" : { - "description" : "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects.", - "type" : "string" - }, - "Rules" : { + "ServerSideEncryptionConfiguration" : { + "description" : "Specifies the default server-side-encryption configuration.", + "type" : "array", "uniqueItems" : true, - "description" : "A container for one or more replication rules.", "insertionOrder" : true, - "type" : "array", "items" : { - "minLength" : 1, - "$ref" : "#/definitions/ReplicationRule", - "maxLength" : 1000 - } - } - }, - "required" : [ "Role", "Rules" ] - }, - "ServerSideEncryptionRule" : { - "description" : "Specifies the default server-side encryption configuration.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "BucketKeyEnabled" : { - "description" : "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled.", - "type" : "boolean" - }, - "ServerSideEncryptionByDefault" : { - "$ref" : "#/definitions/ServerSideEncryptionByDefault" - } - } - }, - "ReplicationDestination" : { - "description" : "Specifies which Amazon S3 bucket to store replicated objects in and their storage class.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "AccessControlTranslation" : { - "$ref" : "#/definitions/AccessControlTranslation" - }, - "Account" : { - "type" : "string" - }, - "Metrics" : { - "$ref" : "#/definitions/Metrics" - }, - "Bucket" : { - "type" : "string" - }, - "EncryptionConfiguration" : { - "$ref" : "#/definitions/EncryptionConfiguration" - }, - "StorageClass" : { - "description" : "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.", - "type" : "string", - "enum" : [ "DEEP_ARCHIVE", "GLACIER", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "REDUCED_REDUNDANCY", "STANDARD", "STANDARD_IA" ] - }, - "ReplicationTime" : { - "$ref" : "#/definitions/ReplicationTime" + "$ref" : "#/definitions/ServerSideEncryptionRule" + } } }, - "required" : [ "Bucket" ] + "required" : [ "ServerSideEncryptionConfiguration" ] }, - "OwnershipControlsRule" : { - "additionalProperties" : false, + "ServerSideEncryptionRule" : { + "description" : "Specifies the default server-side encryption configuration.", "type" : "object", + "additionalProperties" : false, "properties" : { - "ObjectOwnership" : { - "description" : "Specifies an object ownership rule.", - "type" : "string", - "enum" : [ "ObjectWriter", "BucketOwnerPreferred", "BucketOwnerEnforced" ] + "BucketKeyEnabled" : { + "description" : "Specifies whether Amazon S3 should use an S3 Bucket Key with server-side encryption using KMS (SSE-KMS) for new objects in the bucket. Existing objects are not affected. Setting the BucketKeyEnabled element to true causes Amazon S3 to use an S3 Bucket Key. By default, S3 Bucket Key is not enabled.", + "type" : "boolean" + }, + "ServerSideEncryptionByDefault" : { + "$ref" : "#/definitions/ServerSideEncryptionByDefault" } } }, - "EventBridgeConfiguration" : { - "description" : "Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.", + "ServerSideEncryptionByDefault" : { + "description" : "Specifies 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.", + "type" : "object", + "properties" : { + "KMSMasterKeyID" : { + "description" : "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse.", + "type" : "string" + }, + "SSEAlgorithm" : { + "type" : "string", + "enum" : [ "aws:kms", "AES256", "aws:kms:dsse" ] + } + }, "additionalProperties" : false, + "required" : [ "SSEAlgorithm" ] + }, + "CorsConfiguration" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "EventBridgeEnabled" : { - "default" : "true", - "description" : "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket.", - "type" : "boolean" + "CorsRules" : { + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/CorsRule", + "maxLength" : 100 + } } }, - "required" : [ "EventBridgeEnabled" ] + "required" : [ "CorsRules" ] }, "CorsRule" : { + "type" : "object", "description" : "A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.", "additionalProperties" : false, - "type" : "object", "properties" : { - "ExposedHeaders" : { + "AllowedHeaders" : { + "description" : "Headers that are specified in the Access-Control-Request-Headers header.", + "type" : "array", "uniqueItems" : true, - "description" : "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).", "insertionOrder" : true, - "type" : "array", "items" : { "type" : "string" } }, "AllowedMethods" : { - "uniqueItems" : true, "description" : "An HTTP method that you allow the origin to execute.", - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, "items" : { "type" : "string", "enum" : [ "GET", "PUT", "HEAD", "POST", "DELETE" ] } }, "AllowedOrigins" : { - "uniqueItems" : true, "description" : "One or more origins you want customers to be able to access the bucket from.", - "insertionOrder" : true, "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, "items" : { "type" : "string" } }, - "AllowedHeaders" : { + "ExposedHeaders" : { + "description" : "One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).", + "type" : "array", "uniqueItems" : true, - "description" : "Headers that are specified in the Access-Control-Request-Headers header.", "insertionOrder" : true, - "type" : "array", "items" : { "type" : "string" } }, - "MaxAge" : { - "description" : "The time in seconds that your browser is to cache the preflight response for the specified resource.", - "type" : "integer", - "minimum" : 0 - }, "Id" : { "description" : "A unique identifier for this rule.", "type" : "string", "maxLength" : 255 + }, + "MaxAge" : { + "description" : "The time in seconds that your browser is to cache the preflight response for the specified resource.", + "type" : "integer", + "minimum" : 0 } }, "required" : [ "AllowedMethods", "AllowedOrigins" ] }, - "AccessControlTranslation" : { - "description" : "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "Owner" : { - "const" : "Destination", - "type" : "string" - } - }, - "required" : [ "Owner" ] - }, - "ObjectLockRule" : { - "description" : "The Object Lock rule in place for the specified object.", - "additionalProperties" : false, + "IntelligentTieringConfiguration" : { "type" : "object", - "properties" : { - "DefaultRetention" : { - "$ref" : "#/definitions/DefaultRetention" - } - } - }, - "Rule" : { - "description" : "You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.", "additionalProperties" : false, - "type" : "object", "properties" : { - "Status" : { - "type" : "string", - "enum" : [ "Enabled", "Disabled" ] - }, - "ExpiredObjectDeleteMarker" : { - "type" : "boolean" - }, - "NoncurrentVersionExpirationInDays" : { - "type" : "integer" - }, - "Transitions" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/Transition" - } - }, - "ObjectSizeGreaterThan" : { - "pattern" : "[0-9]+", - "type" : "string", - "maxLength" : 20 - }, - "TagFilters" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/TagFilter" - } - }, - "NoncurrentVersionTransitions" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/NoncurrentVersionTransition" - } + "Id" : { + "description" : "The ID used to identify the S3 Intelligent-Tiering configuration.", + "type" : "string" }, "Prefix" : { + "description" : "An object key name prefix that identifies the subset of objects to which the rule applies.", "type" : "string" }, - "ObjectSizeLessThan" : { - "pattern" : "[0-9]+", - "type" : "string", - "maxLength" : 20 - }, - "NoncurrentVersionTransition" : { - "$ref" : "#/definitions/NoncurrentVersionTransition" - }, - "ExpirationDate" : { - "$ref" : "#/definitions/iso8601UTC" - }, - "NoncurrentVersionExpiration" : { - "$ref" : "#/definitions/NoncurrentVersionExpiration" - }, - "ExpirationInDays" : { - "type" : "integer" - }, - "Transition" : { - "$ref" : "#/definitions/Transition" - }, - "Id" : { + "Status" : { + "description" : "Specifies the status of the configuration.", "type" : "string", - "maxLength" : 255 - }, - "AbortIncompleteMultipartUpload" : { - "$ref" : "#/definitions/AbortIncompleteMultipartUpload" - } - }, - "required" : [ "Status" ] - }, - "Arn" : { - "description" : "the Amazon Resource Name (ARN) of the specified bucket.", - "type" : "string" - }, - "S3KeyFilter" : { - "description" : "A container for object key name prefix and suffix filtering rules.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "Rules" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/FilterRule" - } - } - }, - "required" : [ "Rules" ] - }, - "iso8601UTC" : { - "pattern" : "^([0-2]\\d{3})-(0[0-9]|1[0-2])-([0-2]\\d|3[01])T([01]\\d|2[0-4]):([0-5]\\d):([0-6]\\d)((\\.\\d{3})?)Z$", - "description" : "The date value in ISO 8601 format. The timezone is always UTC. (YYYY-MM-DDThh:mm:ssZ)", - "type" : "string" - }, - "AnalyticsConfiguration" : { - "description" : "Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "StorageClassAnalysis" : { - "$ref" : "#/definitions/StorageClassAnalysis" + "enum" : [ "Disabled", "Enabled" ] }, "TagFilters" : { + "description" : "A container for a key-value pair.", + "type" : "array", "uniqueItems" : true, "insertionOrder" : true, - "type" : "array", "items" : { "$ref" : "#/definitions/TagFilter" } }, - "Id" : { - "description" : "The ID that identifies the analytics configuration.", - "type" : "string" - }, - "Prefix" : { - "description" : "The prefix that an object must have to be included in the analytics results.", - "type" : "string" - } - }, - "required" : [ "StorageClassAnalysis", "Id" ] - }, - "Destination" : { - "description" : "Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "BucketArn" : { - "description" : "The Amazon Resource Name (ARN) of the bucket to which data is exported.", - "type" : "string" - }, - "Format" : { - "description" : "Specifies the file format used when exporting data to Amazon S3.", - "type" : "string", - "enum" : [ "CSV", "ORC", "Parquet" ] - }, - "BucketAccountId" : { - "description" : "The account ID that owns the destination S3 bucket. ", - "type" : "string" - }, - "Prefix" : { - "description" : "The prefix to use when exporting data. The prefix is prepended to all results.", - "type" : "string" - } - }, - "required" : [ "BucketArn", "Format" ] - }, - "RedirectAllRequestsTo" : { - "description" : "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "Protocol" : { - "description" : "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", - "type" : "string", - "enum" : [ "http", "https" ] - }, - "HostName" : { - "description" : "Name of the host where requests are redirected.", - "type" : "string" + "Tierings" : { + "description" : "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/Tiering" + } } }, - "required" : [ "HostName" ] + "required" : [ "Id", "Status", "Tierings" ] }, - "TagFilter" : { - "description" : "Tags to use to identify a subset of objects for an Amazon S3 bucket.", - "additionalProperties" : false, + "Tiering" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "Value" : { - "type" : "string" + "AccessTier" : { + "description" : "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.", + "type" : "string", + "enum" : [ "ARCHIVE_ACCESS", "DEEP_ARCHIVE_ACCESS" ] }, - "Key" : { - "type" : "string" + "Days" : { + "description" : "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days).", + "type" : "integer" } }, - "required" : [ "Value", "Key" ] + "required" : [ "AccessTier", "Days" ] }, - "WebsiteConfiguration" : { - "description" : "Specifies website configuration parameters for an Amazon S3 bucket.", - "additionalProperties" : false, + "InventoryConfiguration" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "IndexDocument" : { - "description" : "The name of the index document for the website.", + "Destination" : { + "$ref" : "#/definitions/Destination" + }, + "Enabled" : { + "description" : "Specifies whether the inventory is enabled or disabled.", + "type" : "boolean" + }, + "Id" : { + "description" : "The ID used to identify the inventory configuration.", "type" : "string" }, - "RedirectAllRequestsTo" : { - "$ref" : "#/definitions/RedirectAllRequestsTo" + "IncludedObjectVersions" : { + "description" : "Object versions to include in the inventory list.", + "type" : "string", + "enum" : [ "All", "Current" ] }, - "RoutingRules" : { - "insertionOrder" : true, + "OptionalFields" : { + "description" : "Contains the optional fields that are included in the inventory results.", "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, "items" : { - "$ref" : "#/definitions/RoutingRule" + "type" : "string", + "enum" : [ "Size", "LastModifiedDate", "StorageClass", "ETag", "IsMultipartUploaded", "ReplicationStatus", "EncryptionStatus", "ObjectLockRetainUntilDate", "ObjectLockMode", "ObjectLockLegalHoldStatus", "IntelligentTieringAccessTier", "BucketKeyStatus", "ChecksumAlgorithm", "ObjectAccessControlList", "ObjectOwner" ] } }, - "ErrorDocument" : { - "description" : "The name of the error document for the website.", + "Prefix" : { + "description" : "The prefix that is prepended to all inventory results.", "type" : "string" + }, + "ScheduleFrequency" : { + "description" : "Specifies the schedule for generating inventory results.", + "type" : "string", + "enum" : [ "Daily", "Weekly" ] } - } + }, + "required" : [ "Destination", "Enabled", "Id", "IncludedObjectVersions", "ScheduleFrequency" ] }, - "TopicConfiguration" : { - "description" : "The topic to which notifications are sent and the events for which notifications are generated.", - "additionalProperties" : false, + "LifecycleConfiguration" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "Filter" : { - "description" : "The filtering rules that determine for which objects to send notifications.", - "$ref" : "#/definitions/NotificationFilter" - }, - "Event" : { - "description" : "The Amazon S3 bucket event about which to send notifications.", - "type" : "string" - }, - "Topic" : { - "description" : "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type.", - "type" : "string" + "Rules" : { + "description" : "A lifecycle rule for individual objects in an Amazon S3 bucket.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/Rule" + } } }, - "required" : [ "Event", "Topic" ] + "required" : [ "Rules" ] }, - "IntelligentTieringConfiguration" : { - "additionalProperties" : false, + "Rule" : { "type" : "object", + "description" : "You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.", + "additionalProperties" : false, "properties" : { - "Status" : { - "description" : "Specifies the status of the configuration.", + "AbortIncompleteMultipartUpload" : { + "$ref" : "#/definitions/AbortIncompleteMultipartUpload" + }, + "ExpirationDate" : { + "$ref" : "#/definitions/iso8601UTC" + }, + "ExpirationInDays" : { + "type" : "integer" + }, + "ExpiredObjectDeleteMarker" : { + "type" : "boolean" + }, + "Id" : { "type" : "string", - "enum" : [ "Disabled", "Enabled" ] + "maxLength" : 255 }, - "Tierings" : { + "NoncurrentVersionExpirationInDays" : { + "type" : "integer" + }, + "NoncurrentVersionExpiration" : { + "$ref" : "#/definitions/NoncurrentVersionExpiration" + }, + "NoncurrentVersionTransition" : { + "$ref" : "#/definitions/NoncurrentVersionTransition" + }, + "NoncurrentVersionTransitions" : { + "type" : "array", "uniqueItems" : true, - "description" : "Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS.", "insertionOrder" : true, - "type" : "array", "items" : { - "$ref" : "#/definitions/Tiering" + "$ref" : "#/definitions/NoncurrentVersionTransition" } }, + "Prefix" : { + "type" : "string" + }, + "Status" : { + "type" : "string", + "enum" : [ "Enabled", "Disabled" ] + }, "TagFilters" : { + "type" : "array", "uniqueItems" : true, - "description" : "A container for a key-value pair.", "insertionOrder" : true, - "type" : "array", "items" : { "$ref" : "#/definitions/TagFilter" } }, - "Id" : { - "description" : "The ID used to identify the S3 Intelligent-Tiering configuration.", - "type" : "string" + "ObjectSizeGreaterThan" : { + "type" : "string", + "maxLength" : 20, + "pattern" : "[0-9]+" }, - "Prefix" : { - "description" : "An object key name prefix that identifies the subset of objects to which the rule applies.", - "type" : "string" + "ObjectSizeLessThan" : { + "type" : "string", + "maxLength" : 20, + "pattern" : "[0-9]+" + }, + "Transition" : { + "$ref" : "#/definitions/Transition" + }, + "Transitions" : { + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/Transition" + } } }, - "required" : [ "Id", "Status", "Tierings" ] + "required" : [ "Status" ] }, - "PublicAccessBlockConfiguration" : { - "description" : "Configuration that defines how Amazon S3 handles public access.", + "AbortIncompleteMultipartUpload" : { + "description" : "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.", + "type" : "object", "additionalProperties" : false, + "properties" : { + "DaysAfterInitiation" : { + "description" : "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload.", + "type" : "integer", + "minimum" : 0 + } + }, + "required" : [ "DaysAfterInitiation" ] + }, + "iso8601UTC" : { + "description" : "The date value in ISO 8601 format. The timezone is always UTC. (YYYY-MM-DDThh:mm:ssZ)", + "type" : "string", + "pattern" : "^([0-2]\\d{3})-(0[0-9]|1[0-2])-([0-2]\\d|3[01])T([01]\\d|2[0-4]):([0-5]\\d):([0-6]\\d)((\\.\\d{3})?)Z$" + }, + "NoncurrentVersionExpiration" : { "type" : "object", + "description" : "Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime", + "additionalProperties" : false, "properties" : { - "RestrictPublicBuckets" : { - "description" : "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.", - "type" : "boolean" - }, - "BlockPublicPolicy" : { - "description" : "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies.", - "type" : "boolean" - }, - "BlockPublicAcls" : { - "description" : "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs.", - "type" : "boolean" + "NoncurrentDays" : { + "description" : "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action", + "type" : "integer" }, - "IgnorePublicAcls" : { - "description" : "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.", - "type" : "boolean" + "NewerNoncurrentVersions" : { + "description" : "Specified the number of newer noncurrent and current versions that must exists before performing the associated action", + "type" : "integer" } - } + }, + "required" : [ "NoncurrentDays" ] }, "NoncurrentVersionTransition" : { + "type" : "object", "description" : "Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.", "additionalProperties" : false, - "type" : "object", "properties" : { "StorageClass" : { "description" : "The class of storage used to store the object.", @@ -699,429 +601,564 @@ }, "required" : [ "StorageClass", "TransitionInDays" ] }, - "StorageClassAnalysis" : { - "description" : "Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.", - "additionalProperties" : false, + "Transition" : { "type" : "object", "properties" : { - "DataExport" : { - "$ref" : "#/definitions/DataExport" + "StorageClass" : { + "type" : "string", + "enum" : [ "DEEP_ARCHIVE", "GLACIER", "Glacier", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "STANDARD_IA" ] + }, + "TransitionDate" : { + "$ref" : "#/definitions/iso8601UTC" + }, + "TransitionInDays" : { + "type" : "integer" } - } - }, - "ServerSideEncryptionByDefault" : { - "description" : "Specifies 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.", + }, "additionalProperties" : false, + "description" : "You must specify at least one of \"TransitionDate\" and \"TransitionInDays\"", + "required" : [ "StorageClass" ] + }, + "LoggingConfiguration" : { "type" : "object", "properties" : { - "SSEAlgorithm" : { + "DestinationBucketName" : { "type" : "string", - "enum" : [ "aws:kms", "AES256", "aws:kms:dsse" ] + "description" : "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined." }, - "KMSMasterKeyID" : { - "description" : "\"KMSMasterKeyID\" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse.", + "LogFilePrefix" : { "type" : "string" + }, + "TargetObjectKeyFormat" : { + "$ref" : "#/definitions/TargetObjectKeyFormat" } }, - "required" : [ "SSEAlgorithm" ] + "additionalProperties" : false + }, + "TargetObjectKeyFormat" : { + "type" : "object", + "description" : "Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix.", + "oneOf" : [ { + "additionalProperties" : false, + "properties" : { + "SimplePrefix" : { + "description" : "This format defaults the prefix to the given log file prefix for delivering server access log file.", + "type" : "object", + "additionalProperties" : false + } + }, + "required" : [ "SimplePrefix" ] + }, { + "additionalProperties" : false, + "properties" : { + "PartitionedPrefix" : { + "$ref" : "#/definitions/PartitionedPrefix" + } + }, + "required" : [ "PartitionedPrefix" ] + } ] + }, + "PartitionedPrefix" : { + "type" : "object", + "description" : "This format appends a time based prefix to the given log file prefix for delivering server access log file.", + "properties" : { + "PartitionDateSource" : { + "type" : "string", + "description" : "Date Source for creating a partitioned prefix. This can be event time or delivery time.", + "enum" : [ "EventTime", "DeliveryTime" ] + } + }, + "additionalProperties" : false }, "MetricsConfiguration" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { "AccessPointArn" : { "type" : "string" }, + "Id" : { + "type" : "string" + }, + "Prefix" : { + "type" : "string" + }, "TagFilters" : { + "type" : "array", "uniqueItems" : true, "insertionOrder" : true, - "type" : "array", "items" : { "$ref" : "#/definitions/TagFilter" } - }, - "Id" : { - "type" : "string" - }, - "Prefix" : { - "type" : "string" } }, "required" : [ "Id" ] }, - "ObjectLockConfiguration" : { - "additionalProperties" : false, + "NotificationConfiguration" : { + "description" : "Describes the notification configuration for an Amazon S3 bucket.", "type" : "object", + "additionalProperties" : false, "properties" : { - "ObjectLockEnabled" : { - "const" : "Enabled", - "type" : "string" + "EventBridgeConfiguration" : { + "$ref" : "#/definitions/EventBridgeConfiguration" }, - "Rule" : { - "$ref" : "#/definitions/ObjectLockRule" + "LambdaConfigurations" : { + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/LambdaConfiguration" + } + }, + "QueueConfigurations" : { + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/QueueConfiguration" + } + }, + "TopicConfigurations" : { + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/TopicConfiguration" + } } } }, - "LoggingConfiguration" : { - "additionalProperties" : false, + "EventBridgeConfiguration" : { "type" : "object", + "description" : "Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.", + "additionalProperties" : false, "properties" : { - "LogFilePrefix" : { - "type" : "string" - }, - "DestinationBucketName" : { - "description" : "The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined.", - "type" : "string" + "EventBridgeEnabled" : { + "description" : "Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket.", + "type" : "boolean", + "default" : "true" } - } + }, + "required" : [ "EventBridgeEnabled" ] }, "LambdaConfiguration" : { + "type" : "object", "description" : "Describes the AWS Lambda functions to invoke and the events for which to invoke them.", "additionalProperties" : false, - "type" : "object", "properties" : { - "Function" : { - "description" : "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs.", + "Event" : { + "description" : "The Amazon S3 bucket event for which to invoke the AWS Lambda function.", "type" : "string" }, "Filter" : { "description" : "The filtering rules that determine which objects invoke the AWS Lambda function.", "$ref" : "#/definitions/NotificationFilter" }, - "Event" : { - "description" : "The Amazon S3 bucket event for which to invoke the AWS Lambda function.", + "Function" : { + "description" : "The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs.", "type" : "string" } }, "required" : [ "Function", "Event" ] }, - "DataExport" : { - "description" : "Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.", - "additionalProperties" : false, + "QueueConfiguration" : { "type" : "object", + "description" : "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.", + "additionalProperties" : false, "properties" : { - "Destination" : { - "$ref" : "#/definitions/Destination" + "Event" : { + "description" : "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS.", + "type" : "string" }, - "OutputSchemaVersion" : { - "const" : "V_1", - "description" : "The version of the output schema to use when exporting data.", + "Filter" : { + "description" : "The filtering rules that determine which objects trigger notifications.", + "$ref" : "#/definitions/NotificationFilter" + }, + "Queue" : { + "description" : "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type.", "type" : "string" } }, - "required" : [ "Destination", "OutputSchemaVersion" ] + "required" : [ "Event", "Queue" ] }, - "Tiering" : { - "additionalProperties" : false, + "TopicConfiguration" : { "type" : "object", + "description" : "The topic to which notifications are sent and the events for which notifications are generated.", + "additionalProperties" : false, "properties" : { - "AccessTier" : { - "description" : "S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.", - "type" : "string", - "enum" : [ "ARCHIVE_ACCESS", "DEEP_ARCHIVE_ACCESS" ] + "Event" : { + "description" : "The Amazon S3 bucket event about which to send notifications.", + "type" : "string" }, - "Days" : { - "description" : "The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days).", - "type" : "integer" + "Filter" : { + "description" : "The filtering rules that determine for which objects to send notifications.", + "$ref" : "#/definitions/NotificationFilter" + }, + "Topic" : { + "description" : "The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type.", + "type" : "string" } }, - "required" : [ "AccessTier", "Days" ] + "required" : [ "Event", "Topic" ] }, - "ReplicationTime" : { - "additionalProperties" : false, + "NotificationFilter" : { "type" : "object", + "description" : "Specifies object key name filtering rules.", + "additionalProperties" : false, "properties" : { - "Status" : { - "type" : "string", - "enum" : [ "Disabled", "Enabled" ] - }, - "Time" : { - "$ref" : "#/definitions/ReplicationTimeValue" + "S3Key" : { + "$ref" : "#/definitions/S3KeyFilter" } }, - "required" : [ "Status", "Time" ] + "required" : [ "S3Key" ] }, - "ReplicationRuleFilter" : { + "S3KeyFilter" : { + "type" : "object", + "description" : "A container for object key name prefix and suffix filtering rules.", "additionalProperties" : false, + "properties" : { + "Rules" : { + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/FilterRule" + } + } + }, + "required" : [ "Rules" ] + }, + "FilterRule" : { "type" : "object", + "description" : "Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.", + "additionalProperties" : false, "properties" : { - "And" : { - "$ref" : "#/definitions/ReplicationRuleAndOperator" - }, - "TagFilter" : { - "$ref" : "#/definitions/TagFilter" + "Name" : { + "type" : "string", + "maxLength" : 1024 }, - "Prefix" : { + "Value" : { "type" : "string" } - } + }, + "required" : [ "Value", "Name" ] }, - "RedirectRule" : { - "description" : "Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.", - "additionalProperties" : false, + "ObjectLockConfiguration" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "ReplaceKeyWith" : { - "description" : "The specific object key to use in the redirect request.d", - "type" : "string" - }, - "HttpRedirectCode" : { - "description" : "The HTTP redirect code to use on the response. Not required if one of the siblings is present.", - "type" : "string" - }, - "Protocol" : { - "description" : "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", + "ObjectLockEnabled" : { "type" : "string", - "enum" : [ "http", "https" ] + "const" : "Enabled" }, - "HostName" : { - "description" : "The host name to use in the redirect request.", - "type" : "string" - }, - "ReplaceKeyPrefixWith" : { - "description" : "The object key prefix to use in the redirect request.", - "type" : "string" + "Rule" : { + "$ref" : "#/definitions/ObjectLockRule" } } }, - "EncryptionConfiguration" : { - "description" : "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.", - "additionalProperties" : false, + "ObjectLockRule" : { "type" : "object", + "description" : "The Object Lock rule in place for the specified object.", + "additionalProperties" : false, "properties" : { - "ReplicaKmsKeyID" : { - "description" : "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket.", - "type" : "string" + "DefaultRetention" : { + "$ref" : "#/definitions/DefaultRetention" } - }, - "required" : [ "ReplicaKmsKeyID" ] + } }, - "BucketEncryption" : { - "description" : "Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).", + "DefaultRetention" : { + "type" : "object", + "description" : "The default retention period that you want to apply to new objects placed in the specified bucket.", "additionalProperties" : false, + "properties" : { + "Years" : { + "type" : "integer" + }, + "Days" : { + "type" : "integer" + }, + "Mode" : { + "type" : "string", + "enum" : [ "COMPLIANCE", "GOVERNANCE" ] + } + } + }, + "OwnershipControls" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "ServerSideEncryptionConfiguration" : { + "Rules" : { + "type" : "array", "uniqueItems" : true, - "description" : "Specifies the default server-side-encryption configuration.", "insertionOrder" : true, - "type" : "array", "items" : { - "$ref" : "#/definitions/ServerSideEncryptionRule" + "$ref" : "#/definitions/OwnershipControlsRule" } } }, - "required" : [ "ServerSideEncryptionConfiguration" ] + "required" : [ "Rules" ] }, - "NotificationConfiguration" : { - "description" : "Describes the notification configuration for an Amazon S3 bucket.", - "additionalProperties" : false, + "OwnershipControlsRule" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "TopicConfigurations" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/TopicConfiguration" - } + "ObjectOwnership" : { + "description" : "Specifies an object ownership rule.", + "type" : "string", + "enum" : [ "ObjectWriter", "BucketOwnerPreferred", "BucketOwnerEnforced" ] + } + } + }, + "PublicAccessBlockConfiguration" : { + "description" : "Configuration that defines how Amazon S3 handles public access.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "BlockPublicAcls" : { + "type" : "boolean", + "description" : "Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:\n- PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.\n - PUT Object calls fail if the request includes a public ACL.\nEnabling this setting doesn't affect existing policies or ACLs." }, - "QueueConfigurations" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/QueueConfiguration" - } + "BlockPublicPolicy" : { + "type" : "boolean", + "description" : "Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.\nEnabling this setting doesn't affect existing bucket policies." }, - "LambdaConfigurations" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/LambdaConfiguration" - } + "IgnorePublicAcls" : { + "type" : "boolean", + "description" : "Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.\nEnabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set." }, - "EventBridgeConfiguration" : { - "$ref" : "#/definitions/EventBridgeConfiguration" + "RestrictPublicBuckets" : { + "type" : "boolean", + "description" : "Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.\nEnabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked." } } }, - "LifecycleConfiguration" : { - "additionalProperties" : false, + "ReplicationConfiguration" : { "type" : "object", + "description" : "A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.", + "additionalProperties" : false, "properties" : { + "Role" : { + "description" : "The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects.", + "type" : "string" + }, "Rules" : { + "description" : "A container for one or more replication rules.", + "type" : "array", "uniqueItems" : true, - "description" : "A lifecycle rule for individual objects in an Amazon S3 bucket.", "insertionOrder" : true, - "type" : "array", "items" : { - "$ref" : "#/definitions/Rule" + "$ref" : "#/definitions/ReplicationRule", + "maxLength" : 1000, + "minLength" : 1 } } }, - "required" : [ "Rules" ] + "required" : [ "Role", "Rules" ] }, - "InventoryConfiguration" : { - "additionalProperties" : false, + "ReplicationRule" : { "type" : "object", + "description" : "Specifies which Amazon S3 objects to replicate and where to store the replicas.", + "additionalProperties" : false, "properties" : { + "DeleteMarkerReplication" : { + "$ref" : "#/definitions/DeleteMarkerReplication" + }, "Destination" : { - "$ref" : "#/definitions/Destination" + "$ref" : "#/definitions/ReplicationDestination" }, - "OptionalFields" : { - "uniqueItems" : true, - "description" : "Contains the optional fields that are included in the inventory results.", - "insertionOrder" : true, - "type" : "array", - "items" : { - "type" : "string", - "enum" : [ "Size", "LastModifiedDate", "StorageClass", "ETag", "IsMultipartUploaded", "ReplicationStatus", "EncryptionStatus", "ObjectLockRetainUntilDate", "ObjectLockMode", "ObjectLockLegalHoldStatus", "IntelligentTieringAccessTier", "BucketKeyStatus" ] - } + "Filter" : { + "$ref" : "#/definitions/ReplicationRuleFilter" }, - "IncludedObjectVersions" : { - "description" : "Object versions to include in the inventory list.", + "Id" : { + "description" : "A unique identifier for the rule.", "type" : "string", - "enum" : [ "All", "Current" ] + "maxLength" : 255 }, - "Enabled" : { - "description" : "Specifies whether the inventory is enabled or disabled.", - "type" : "boolean" + "Prefix" : { + "description" : "An object key name prefix that identifies the object or objects to which the rule applies.", + "type" : "string", + "maxLength" : 1024 }, - "Id" : { - "description" : "The ID used to identify the inventory configuration.", - "type" : "string" + "Priority" : { + "type" : "integer" }, - "Prefix" : { - "description" : "The prefix that is prepended to all inventory results.", - "type" : "string" + "SourceSelectionCriteria" : { + "$ref" : "#/definitions/SourceSelectionCriteria" }, - "ScheduleFrequency" : { - "description" : "Specifies the schedule for generating inventory results.", + "Status" : { + "description" : "Specifies whether the rule is enabled.", "type" : "string", - "enum" : [ "Daily", "Weekly" ] + "enum" : [ "Disabled", "Enabled" ] } }, - "required" : [ "Destination", "Enabled", "Id", "IncludedObjectVersions", "ScheduleFrequency" ] + "required" : [ "Destination", "Status" ] }, - "ReplicationRuleAndOperator" : { + "DeleteMarkerReplication" : { + "type" : "object", "additionalProperties" : false, + "properties" : { + "Status" : { + "type" : "string", + "enum" : [ "Disabled", "Enabled" ] + } + } + }, + "ReplicationDestination" : { "type" : "object", + "description" : "Specifies which Amazon S3 bucket to store replicated objects in and their storage class.", + "additionalProperties" : false, "properties" : { - "TagFilters" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/TagFilter" - } + "AccessControlTranslation" : { + "$ref" : "#/definitions/AccessControlTranslation" }, - "Prefix" : { + "Account" : { "type" : "string" + }, + "Bucket" : { + "type" : "string" + }, + "EncryptionConfiguration" : { + "$ref" : "#/definitions/EncryptionConfiguration" + }, + "Metrics" : { + "$ref" : "#/definitions/Metrics" + }, + "ReplicationTime" : { + "$ref" : "#/definitions/ReplicationTime" + }, + "StorageClass" : { + "description" : "The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.", + "type" : "string", + "enum" : [ "DEEP_ARCHIVE", "GLACIER", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "REDUCED_REDUNDANCY", "STANDARD", "STANDARD_IA" ] } - } + }, + "required" : [ "Bucket" ] }, - "VersioningConfiguration" : { - "description" : "Describes the versioning state of an Amazon S3 bucket.", - "additionalProperties" : false, + "AccessControlTranslation" : { "type" : "object", + "description" : "Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.", + "additionalProperties" : false, "properties" : { - "Status" : { - "default" : "Suspended", - "description" : "The versioning state of the bucket.", + "Owner" : { "type" : "string", - "enum" : [ "Enabled", "Suspended" ] + "const" : "Destination" } }, - "required" : [ "Status" ] + "required" : [ "Owner" ] }, - "CorsConfiguration" : { - "additionalProperties" : false, + "EncryptionConfiguration" : { "type" : "object", + "description" : "Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.", + "additionalProperties" : false, "properties" : { - "CorsRules" : { - "uniqueItems" : true, - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/CorsRule", - "maxLength" : 100 - } + "ReplicaKmsKeyID" : { + "description" : "Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket.", + "type" : "string" } }, - "required" : [ "CorsRules" ] + "required" : [ "ReplicaKmsKeyID" ] }, - "ReplicaModifications" : { - "additionalProperties" : false, + "Metrics" : { "type" : "object", + "additionalProperties" : false, "properties" : { + "EventThreshold" : { + "$ref" : "#/definitions/ReplicationTimeValue" + }, "Status" : { - "description" : "Specifies whether Amazon S3 replicates modifications on replicas.", "type" : "string", - "enum" : [ "Enabled", "Disabled" ] + "enum" : [ "Disabled", "Enabled" ] } }, "required" : [ "Status" ] }, - "NoncurrentVersionExpiration" : { - "description" : "Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime", - "additionalProperties" : false, + "ReplicationTimeValue" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "NoncurrentDays" : { - "description" : "Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action", - "type" : "integer" - }, - "NewerNoncurrentVersions" : { - "description" : "Specified the number of newer noncurrent and current versions that must exists before performing the associated action", + "Minutes" : { "type" : "integer" } }, - "required" : [ "NoncurrentDays" ] + "required" : [ "Minutes" ] }, - "QueueConfiguration" : { - "description" : "The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.", + "ReplicationTime" : { + "type" : "object", "additionalProperties" : false, + "properties" : { + "Status" : { + "type" : "string", + "enum" : [ "Disabled", "Enabled" ] + }, + "Time" : { + "$ref" : "#/definitions/ReplicationTimeValue" + } + }, + "required" : [ "Status", "Time" ] + }, + "ReplicationRuleFilter" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "Filter" : { - "description" : "The filtering rules that determine which objects trigger notifications.", - "$ref" : "#/definitions/NotificationFilter" + "And" : { + "$ref" : "#/definitions/ReplicationRuleAndOperator" }, - "Event" : { - "description" : "The Amazon S3 bucket event about which you want to publish messages to Amazon SQS.", + "Prefix" : { "type" : "string" }, - "Queue" : { - "description" : "The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type.", + "TagFilter" : { + "$ref" : "#/definitions/TagFilter" + } + } + }, + "ReplicationRuleAndOperator" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Prefix" : { "type" : "string" + }, + "TagFilters" : { + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/TagFilter" + } } - }, - "required" : [ "Event", "Queue" ] + } }, - "Transition" : { - "description" : "You must specify at least one of \"TransitionDate\" and \"TransitionInDays\"", + "SourceSelectionCriteria" : { + "description" : "A container that describes additional filters for identifying the source objects that you want to replicate.", + "type" : "object", "additionalProperties" : false, + "properties" : { + "ReplicaModifications" : { + "description" : "A filter that you can specify for selection for modifications on replicas.", + "$ref" : "#/definitions/ReplicaModifications" + }, + "SseKmsEncryptedObjects" : { + "description" : "A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS.", + "$ref" : "#/definitions/SseKmsEncryptedObjects" + } + } + }, + "ReplicaModifications" : { "type" : "object", + "additionalProperties" : false, "properties" : { - "TransitionDate" : { - "$ref" : "#/definitions/iso8601UTC" - }, - "StorageClass" : { + "Status" : { + "description" : "Specifies whether Amazon S3 replicates modifications on replicas.", "type" : "string", - "enum" : [ "DEEP_ARCHIVE", "GLACIER", "Glacier", "GLACIER_IR", "INTELLIGENT_TIERING", "ONEZONE_IA", "STANDARD_IA" ] - }, - "TransitionInDays" : { - "type" : "integer" + "enum" : [ "Enabled", "Disabled" ] } }, - "required" : [ "StorageClass" ] + "required" : [ "Status" ] }, "SseKmsEncryptedObjects" : { + "type" : "object", "description" : "A container for filter information for the selection of S3 objects encrypted with AWS KMS.", "additionalProperties" : false, - "type" : "object", "properties" : { "Status" : { "description" : "Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.", @@ -1132,165 +1169,166 @@ "required" : [ "Status" ] }, "Tag" : { - "additionalProperties" : false, "type" : "object", + "additionalProperties" : false, "properties" : { - "Value" : { - "type" : "string", - "maxLength" : 256 - }, "Key" : { - "minLength" : 1, "type" : "string", + "minLength" : 1, "maxLength" : 128 + }, + "Value" : { + "type" : "string", + "maxLength" : 256 } }, "required" : [ "Value", "Key" ] }, - "AbortIncompleteMultipartUpload" : { - "description" : "Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.", - "additionalProperties" : false, + "VersioningConfiguration" : { + "description" : "Describes the versioning state of an Amazon S3 bucket.", "type" : "object", + "additionalProperties" : false, "properties" : { - "DaysAfterInitiation" : { - "description" : "Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload.", - "type" : "integer", - "minimum" : 0 + "Status" : { + "description" : "The versioning state of the bucket.", + "type" : "string", + "default" : "Suspended", + "enum" : [ "Enabled", "Suspended" ] } }, - "required" : [ "DaysAfterInitiation" ] - } - }, - "properties" : { - "InventoryConfigurations" : { - "uniqueItems" : true, - "description" : "The inventory configuration for an Amazon S3 bucket.", - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/InventoryConfiguration" - } + "required" : [ "Status" ] }, "WebsiteConfiguration" : { - "$ref" : "#/definitions/WebsiteConfiguration" - }, - "DualStackDomainName" : { - "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.dualstack.us-east-2.amazonaws.com" ], - "description" : "The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html).", - "type" : "string" - }, - "AccessControl" : { - "description" : "A canned access control list (ACL) that grants predefined permissions to the bucket.", - "type" : "string", - "enum" : [ "AuthenticatedRead", "AwsExecRead", "BucketOwnerFullControl", "BucketOwnerRead", "LogDeliveryWrite", "Private", "PublicRead", "PublicReadWrite" ] - }, - "AnalyticsConfigurations" : { - "uniqueItems" : true, - "description" : "The configuration and any analyses for the analytics filter of an Amazon S3 bucket.", - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/AnalyticsConfiguration" + "type" : "object", + "description" : "Specifies website configuration parameters for an Amazon S3 bucket.", + "additionalProperties" : false, + "properties" : { + "ErrorDocument" : { + "description" : "The name of the error document for the website.", + "type" : "string" + }, + "IndexDocument" : { + "description" : "The name of the index document for the website.", + "type" : "string" + }, + "RoutingRules" : { + "type" : "array", + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/RoutingRule" + } + }, + "RedirectAllRequestsTo" : { + "$ref" : "#/definitions/RedirectAllRequestsTo" + } } }, - "AccelerateConfiguration" : { - "description" : "Configuration for the transfer acceleration state.", - "$ref" : "#/definitions/AccelerateConfiguration" - }, - "PublicAccessBlockConfiguration" : { - "$ref" : "#/definitions/PublicAccessBlockConfiguration" - }, - "BucketName" : { - "minLength" : 3, - "pattern" : "^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$", - "description" : "A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", - "type" : "string", - "maxLength" : 63 - }, - "RegionalDomainName" : { - "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.us-east-2.amazonaws.com" ], - "description" : "Returns the regional domain name of the specified bucket.", - "type" : "string" - }, - "OwnershipControls" : { - "description" : "Specifies the container element for object ownership rules.", - "$ref" : "#/definitions/OwnershipControls" - }, - "ObjectLockConfiguration" : { - "description" : "Places an Object Lock configuration on the specified bucket.", - "$ref" : "#/definitions/ObjectLockConfiguration" - }, - "ObjectLockEnabled" : { - "description" : "Indicates whether this bucket has an Object Lock configuration enabled.", - "type" : "boolean" - }, - "LoggingConfiguration" : { - "description" : "Settings that define where logs are stored.", - "$ref" : "#/definitions/LoggingConfiguration" - }, - "ReplicationConfiguration" : { - "description" : "Configuration for replicating objects in an S3 bucket.", - "$ref" : "#/definitions/ReplicationConfiguration" + "RoutingRule" : { + "description" : "Specifies the redirect behavior and when a redirect is applied.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "RedirectRule" : { + "description" : "Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return.", + "$ref" : "#/definitions/RedirectRule" + }, + "RoutingRuleCondition" : { + "$ref" : "#/definitions/RoutingRuleCondition" + } + }, + "required" : [ "RedirectRule" ] }, - "Tags" : { - "description" : "An arbitrary set of tags (key-value pairs) for this S3 bucket.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/Tag" + "RedirectRule" : { + "type" : "object", + "description" : "Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.", + "additionalProperties" : false, + "properties" : { + "HostName" : { + "description" : "The host name to use in the redirect request.", + "type" : "string" + }, + "HttpRedirectCode" : { + "description" : "The HTTP redirect code to use on the response. Not required if one of the siblings is present.", + "type" : "string" + }, + "Protocol" : { + "description" : "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", + "enum" : [ "http", "https" ], + "type" : "string" + }, + "ReplaceKeyPrefixWith" : { + "description" : "The object key prefix to use in the redirect request.", + "type" : "string" + }, + "ReplaceKeyWith" : { + "description" : "The specific object key to use in the redirect request.d", + "type" : "string" + } } }, - "DomainName" : { - "examples" : [ "mystack-mybucket-kdwwxmddtr2g.s3.amazonaws.com" ], - "description" : "The IPv4 DNS name of the specified bucket.", - "type" : "string" + "RoutingRuleCondition" : { + "description" : "A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "KeyPrefixEquals" : { + "description" : "The object key name prefix when the redirect is applied.", + "type" : "string" + }, + "HttpErrorCodeReturnedEquals" : { + "description" : "The HTTP error code when the redirect is applied. ", + "type" : "string" + } + } }, - "BucketEncryption" : { - "$ref" : "#/definitions/BucketEncryption" + "RedirectAllRequestsTo" : { + "description" : "Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.", + "type" : "object", + "additionalProperties" : false, + "properties" : { + "HostName" : { + "description" : "Name of the host where requests are redirected.", + "type" : "string" + }, + "Protocol" : { + "description" : "Protocol to use when redirecting requests. The default is the protocol that is used in the original request.", + "type" : "string", + "enum" : [ "http", "https" ] + } + }, + "required" : [ "HostName" ] }, - "WebsiteURL" : { - "examples" : [ "Example (IPv4): http://mystack-mybucket-kdwwxmddtr2g.s3-website-us-east-2.amazonaws.com/", "Example (IPv6): http://mystack-mybucket-kdwwxmddtr2g.s3.dualstack.us-east-2.amazonaws.com/" ], - "format" : "uri", - "description" : "The Amazon S3 website endpoint for the specified bucket.", + "Arn" : { + "description" : "the Amazon Resource Name (ARN) of the specified bucket.", "type" : "string" + } + }, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + }, + "createOnlyProperties" : [ "/properties/BucketName", "/properties/ObjectLockEnabled" ], + "primaryIdentifier" : [ "/properties/BucketName" ], + "readOnlyProperties" : [ "/properties/Arn", "/properties/DomainName", "/properties/DualStackDomainName", "/properties/RegionalDomainName", "/properties/WebsiteURL" ], + "writeOnlyProperties" : [ "/properties/AccessControl", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionExpirationInDays", "/properties/LifecycleConfiguration/Rules/*/NoncurrentVersionTransition", "/properties/LifecycleConfiguration/Rules/*/Transition", "/properties/ReplicationConfiguration/Rules/*/Prefix", "/properties/LifecycleConfiguration/Rules/*/ExpiredObjectDeleteMarker" ], + "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" ] }, - "NotificationConfiguration" : { - "description" : "Configuration that defines how Amazon S3 handles bucket notifications.", - "$ref" : "#/definitions/NotificationConfiguration" - }, - "LifecycleConfiguration" : { - "description" : "Rules that define how Amazon S3 manages objects during their lifetime.", - "$ref" : "#/definitions/LifecycleConfiguration" - }, - "VersioningConfiguration" : { - "$ref" : "#/definitions/VersioningConfiguration" - }, - "MetricsConfigurations" : { - "uniqueItems" : true, - "description" : "Settings that define a metrics configuration for the CloudWatch request metrics from the bucket.", - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/MetricsConfiguration" - } + "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:ListBucket" ] }, - "IntelligentTieringConfigurations" : { - "uniqueItems" : true, - "description" : "Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.", - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/IntelligentTieringConfiguration" - } + "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" ] }, - "CorsConfiguration" : { - "description" : "Rules that define cross-origin resource sharing of objects in this bucket.", - "$ref" : "#/definitions/CorsConfiguration" + "delete" : { + "permissions" : [ "s3:DeleteBucket", "s3:ListBucket" ] }, - "Arn" : { - "examples" : [ "arn:aws:s3:::mybucket" ], - "description" : "The Amazon Resource Name (ARN) of the specified bucket.", - "$ref" : "#/definitions/Arn" + "list" : { + "permissions" : [ "s3:ListAllMyBuckets" ] } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-s3express-directorybucket.json b/aws-cloudformation-schema/aws-s3express-directorybucket.json index 19d1a7a091..35f4ef3e72 100644 --- a/aws-cloudformation-schema/aws-s3express-directorybucket.json +++ b/aws-cloudformation-schema/aws-s3express-directorybucket.json @@ -4,7 +4,7 @@ "additionalProperties" : false, "properties" : { "BucketName" : { - "description" : "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", + "description" : "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", "maxLength" : 63, "pattern" : "^[a-z0-9][a-z0-9//.//-]*[a-z0-9]$", "type" : "string" @@ -14,14 +14,14 @@ "type" : "string" }, "DataRedundancy" : { - "description" : "Specifies the number of Avilability Zone that's used for redundancy for the bucket.", + "description" : "Specifies the number of Availability Zone that's used for redundancy for the bucket.", "type" : "string", "enum" : [ "SingleAvailabilityZone" ] }, "Arn" : { "$ref" : "#/definitions/Arn", "description" : "Returns the Amazon Resource Name (ARN) of the specified bucket.", - "examples" : [ "arn:aws:s3express:us-west-2:123456789123:bucket/DOC-EXAMPLE-BUCKET--usw2-az2--x-s3" ] + "examples" : [ "arn:aws:s3express:us-west-2:123456789123:bucket/DOC-EXAMPLE-BUCKET--usw2-az1--x-s3" ] } }, "definitions" : { diff --git a/aws-cloudformation-schema/aws-sagemaker-app.json b/aws-cloudformation-schema/aws-sagemaker-app.json index dbcfafd740..809e6f5bf8 100644 --- a/aws-cloudformation-schema/aws-sagemaker-app.json +++ b/aws-cloudformation-schema/aws-sagemaker-app.json @@ -58,7 +58,7 @@ "InstanceType" : { "type" : "string", "description" : "The instance type that the image version runs on.", - "enum" : [ "system", "ml.t3.micro", "ml.t3.small", "ml.t3.medium", "ml.t3.large", "ml.t3.xlarge", "ml.t3.2xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.8xlarge", "ml.m5.12xlarge", "ml.m5.16xlarge", "ml.m5.24xlarge", "ml.c5.large", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.12xlarge", "ml.c5.18xlarge", "ml.c5.24xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.r5.large", "ml.r5.xlarge", "ml.r5.2xlarge", "ml.r5.4xlarge", "ml.r5.8xlarge", "ml.r5.12xlarge", "ml.r5.16xlarge", "ml.r5.24xlarge", "ml.p3dn.24xlarge", "ml.m5d.large", "ml.m5d.xlarge", "ml.m5d.2xlarge", "ml.m5d.4xlarge", "ml.m5d.8xlarge", "ml.m5d.12xlarge", "ml.m5d.16xlarge", "ml.m5d.24xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.12xlarge", "ml.g5.16xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge", "ml.p4d.24xlarge", "ml.p4de.24xlarge", "ml.geospatial.interactive" ] + "enum" : [ "system", "ml.t3.micro", "ml.t3.small", "ml.t3.medium", "ml.t3.large", "ml.t3.xlarge", "ml.t3.2xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.8xlarge", "ml.m5.12xlarge", "ml.m5.16xlarge", "ml.m5.24xlarge", "ml.c5.large", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.12xlarge", "ml.c5.18xlarge", "ml.c5.24xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.r5.large", "ml.r5.xlarge", "ml.r5.2xlarge", "ml.r5.4xlarge", "ml.r5.8xlarge", "ml.r5.12xlarge", "ml.r5.16xlarge", "ml.r5.24xlarge", "ml.p3dn.24xlarge", "ml.m5d.large", "ml.m5d.xlarge", "ml.m5d.2xlarge", "ml.m5d.4xlarge", "ml.m5d.8xlarge", "ml.m5d.12xlarge", "ml.m5d.16xlarge", "ml.m5d.24xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.12xlarge", "ml.g5.16xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge", "ml.p4d.24xlarge", "ml.p4de.24xlarge", "ml.geospatial.interactive", "ml.trn1.2xlarge", "ml.trn1.32xlarge", "ml.trn1n.32xlarge" ] }, "SageMakerImageArn" : { "type" : "string", diff --git a/aws-cloudformation-schema/aws-sagemaker-domain.json b/aws-cloudformation-schema/aws-sagemaker-domain.json index 07f34cc889..5800abadf8 100644 --- a/aws-cloudformation-schema/aws-sagemaker-domain.json +++ b/aws-cloudformation-schema/aws-sagemaker-domain.json @@ -90,6 +90,11 @@ "description" : "The SSO managed application instance ID.", "maxLength" : 256 }, + "SingleSignOnApplicationArn" : { + "type" : "string", + "description" : "The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023.", + "pattern" : "^arn:(aws|aws-us-gov|aws-cn|aws-iso|aws-iso-b):sso::[0-9]+:application/[a-zA-Z0-9-_.]+/apl-[a-zA-Z0-9]+$" + }, "DomainSettings" : { "$ref" : "#/definitions/DomainSettings" }, @@ -132,6 +137,37 @@ "RSessionAppSettings" : { "$ref" : "#/definitions/RSessionAppSettings" }, + "JupyterLabAppSettings" : { + "$ref" : "#/definitions/JupyterLabAppSettings" + }, + "SpaceStorageSettings" : { + "$ref" : "#/definitions/DefaultSpaceStorageSettings" + }, + "CodeEditorAppSettings" : { + "$ref" : "#/definitions/CodeEditorAppSettings" + }, + "DefaultLandingUri" : { + "type" : "string", + "description" : "Defines which Amazon SageMaker application users are directed to by default.", + "maxLength" : 1023 + }, + "StudioWebPortal" : { + "type" : "string", + "description" : "Indicates whether the Studio experience is available to users. If not, users cannot access Studio.", + "enum" : [ "ENABLED", "DISABLED" ] + }, + "CustomPosixUserConfig" : { + "$ref" : "#/definitions/CustomPosixUserConfig" + }, + "CustomFileSystemConfigs" : { + "type" : "array", + "uniqueItems" : true, + "minItems" : 0, + "maxItems" : 2, + "items" : { + "$ref" : "#/definitions/CustomFileSystemConfig" + } + }, "SecurityGroups" : { "type" : "array", "description" : "The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.", @@ -205,7 +241,7 @@ "InstanceType" : { "type" : "string", "description" : "The instance type that the image version runs on.", - "enum" : [ "system", "ml.t3.micro", "ml.t3.small", "ml.t3.medium", "ml.t3.large", "ml.t3.xlarge", "ml.t3.2xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.8xlarge", "ml.m5.12xlarge", "ml.m5.16xlarge", "ml.m5.24xlarge", "ml.c5.large", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.12xlarge", "ml.c5.18xlarge", "ml.c5.24xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.r5.large", "ml.r5.xlarge", "ml.r5.2xlarge", "ml.r5.4xlarge", "ml.r5.8xlarge", "ml.r5.12xlarge", "ml.r5.16xlarge", "ml.r5.24xlarge", "ml.p3dn.24xlarge", "ml.m5d.large", "ml.m5d.xlarge", "ml.m5d.2xlarge", "ml.m5d.4xlarge", "ml.m5d.8xlarge", "ml.m5d.12xlarge", "ml.m5d.16xlarge", "ml.m5d.24xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.12xlarge", "ml.g5.16xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge", "ml.p4d.24xlarge", "ml.p4de.24xlarge", "ml.geospatial.interactive" ] + "enum" : [ "system", "ml.t3.micro", "ml.t3.small", "ml.t3.medium", "ml.t3.large", "ml.t3.xlarge", "ml.t3.2xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.8xlarge", "ml.m5.12xlarge", "ml.m5.16xlarge", "ml.m5.24xlarge", "ml.c5.large", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.12xlarge", "ml.c5.18xlarge", "ml.c5.24xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.r5.large", "ml.r5.xlarge", "ml.r5.2xlarge", "ml.r5.4xlarge", "ml.r5.8xlarge", "ml.r5.12xlarge", "ml.r5.16xlarge", "ml.r5.24xlarge", "ml.p3dn.24xlarge", "ml.m5d.large", "ml.m5d.xlarge", "ml.m5d.2xlarge", "ml.m5d.4xlarge", "ml.m5d.8xlarge", "ml.m5d.12xlarge", "ml.m5d.16xlarge", "ml.m5d.24xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.12xlarge", "ml.g5.16xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge", "ml.p4d.24xlarge", "ml.p4de.24xlarge", "ml.geospatial.interactive", "ml.trn1.2xlarge", "ml.trn1.32xlarge", "ml.trn1n.32xlarge" ] }, "SageMakerImageArn" : { "type" : "string", @@ -249,6 +285,163 @@ } } }, + "JupyterLabAppSettings" : { + "type" : "object", + "description" : "The JupyterLab app settings.", + "additionalProperties" : false, + "properties" : { + "DefaultResourceSpec" : { + "$ref" : "#/definitions/ResourceSpec", + "description" : "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app." + }, + "LifecycleConfigArns" : { + "type" : "array", + "description" : "A list of LifecycleConfigArns available for use with JupyterLab apps.", + "uniqueItems" : false, + "minItems" : 0, + "maxItems" : 30, + "items" : { + "$ref" : "#/definitions/StudioLifecycleConfigArn" + } + }, + "CodeRepositories" : { + "type" : "array", + "description" : "A list of CodeRepositories available for use with JupyterLab apps.", + "uniqueItems" : false, + "minItems" : 0, + "maxItems" : 30, + "items" : { + "$ref" : "#/definitions/CodeRepository" + } + }, + "CustomImages" : { + "type" : "array", + "description" : "A list of custom images for use for JupyterLab apps.", + "uniqueItems" : false, + "minItems" : 0, + "maxItems" : 30, + "items" : { + "$ref" : "#/definitions/CustomImage" + } + } + } + }, + "CodeRepository" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "RepositoryUrl" : { + "type" : "string", + "description" : "A CodeRepository (valid URL) to be used within Jupyter's Git extension.", + "maxLength" : 256, + "pattern" : "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$" + } + }, + "required" : [ "RepositoryUrl" ] + }, + "DefaultSpaceStorageSettings" : { + "type" : "object", + "description" : "Default storage settings for a space.", + "additionalProperties" : false, + "properties" : { + "DefaultEbsStorageSettings" : { + "$ref" : "#/definitions/DefaultEbsStorageSettings" + } + } + }, + "DefaultEbsStorageSettings" : { + "type" : "object", + "description" : "Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS", + "additionalProperties" : false, + "properties" : { + "DefaultEbsVolumeSizeInGb" : { + "description" : "Default size of the Amazon EBS volume in Gb", + "$ref" : "#/definitions/SpaceEbsVolumeSizeInGb" + }, + "MaximumEbsVolumeSizeInGb" : { + "description" : "Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb.", + "$ref" : "#/definitions/SpaceEbsVolumeSizeInGb" + } + }, + "required" : [ "DefaultEbsVolumeSizeInGb", "MaximumEbsVolumeSizeInGb" ] + }, + "SpaceEbsVolumeSizeInGb" : { + "type" : "integer", + "minimum" : 5, + "maximum" : 16384 + }, + "CodeEditorAppSettings" : { + "type" : "object", + "description" : "The CodeEditor app settings.", + "additionalProperties" : false, + "properties" : { + "DefaultResourceSpec" : { + "$ref" : "#/definitions/ResourceSpec", + "description" : "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app." + }, + "LifecycleConfigArns" : { + "type" : "array", + "description" : "A list of LifecycleConfigArns available for use with CodeEditor apps.", + "uniqueItems" : false, + "minItems" : 0, + "maxItems" : 30, + "items" : { + "$ref" : "#/definitions/StudioLifecycleConfigArn" + } + } + } + }, + "StudioLifecycleConfigArn" : { + "type" : "string", + "description" : "The Amazon Resource Name (ARN) of the Lifecycle Configuration to attach to the Resource.", + "maxLength" : 256, + "pattern" : "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*" + }, + "CustomPosixUserConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Uid" : { + "type" : "integer", + "minimum" : 10000, + "maximum" : 4000000 + }, + "Gid" : { + "type" : "integer", + "minimum" : 1001, + "maximum" : 4000000 + } + }, + "required" : [ "Uid", "Gid" ] + }, + "CustomFileSystemConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "EFSFileSystemConfig" : { + "$ref" : "#/definitions/EFSFileSystemConfig" + } + } + }, + "EFSFileSystemConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "FileSystemPath" : { + "type" : "string", + "pattern" : "^\\/\\S*$", + "minLength" : 1, + "maxLength" : 256 + }, + "FileSystemId" : { + "type" : "string", + "minLength" : 11, + "maxLength" : 21, + "pattern" : "^(fs-[0-9a-f]{8,})$" + } + }, + "required" : [ "FileSystemId" ] + }, "CustomImage" : { "type" : "object", "description" : "A custom SageMaker image.", @@ -406,10 +599,10 @@ } }, "required" : [ "AuthMode", "DefaultUserSettings", "DomainName", "SubnetIds", "VpcId" ], - "createOnlyProperties" : [ "/properties/AppNetworkAccessType", "/properties/AuthMode", "/properties/DomainName", "/properties/DomainSettings/RStudioServerProDomainSettings/DefaultResourceSpec", "/properties/KmsKeyId", "/properties/SubnetIds", "/properties/VpcId", "/properties/Tags" ], + "createOnlyProperties" : [ "/properties/AuthMode", "/properties/DomainName", "/properties/DomainSettings/RStudioServerProDomainSettings/DefaultResourceSpec", "/properties/KmsKeyId", "/properties/VpcId", "/properties/Tags" ], "writeOnlyProperties" : [ "/properties/Tags" ], "primaryIdentifier" : [ "/properties/DomainId" ], - "readOnlyProperties" : [ "/properties/DomainArn", "/properties/Url", "/properties/DomainId", "/properties/HomeEfsFileSystemId", "/properties/SecurityGroupIdForDomainBoundary", "/properties/SingleSignOnManagedApplicationInstanceId" ], + "readOnlyProperties" : [ "/properties/DomainArn", "/properties/Url", "/properties/DomainId", "/properties/HomeEfsFileSystemId", "/properties/SecurityGroupIdForDomainBoundary", "/properties/SingleSignOnManagedApplicationInstanceId", "/properties/SingleSignOnApplicationArn" ], "handlers" : { "create" : { "permissions" : [ "sagemaker:CreateApp", "sagemaker:CreateDomain", "sagemaker:DescribeDomain", "sagemaker:DescribeImage", "sagemaker:DescribeImageVersion", "iam:CreateServiceLinkedRole", "iam:PassRole", "efs:CreateFileSystem", "kms:CreateGrant", "kms:Decrypt", "kms:DescribeKey", "kms:GenerateDataKeyWithoutPlainText" ] diff --git a/aws-cloudformation-schema/aws-sagemaker-featuregroup.json b/aws-cloudformation-schema/aws-sagemaker-featuregroup.json index 2662dbbbae..0f6b04f0ae 100644 --- a/aws-cloudformation-schema/aws-sagemaker-featuregroup.json +++ b/aws-cloudformation-schema/aws-sagemaker-featuregroup.json @@ -28,6 +28,7 @@ "type" : "array", "description" : "An Array of Feature Definition", "uniqueItems" : false, + "insertionOrder" : false, "minItems" : 1, "maxItems" : 2500, "items" : { @@ -43,6 +44,9 @@ }, "EnableOnlineStore" : { "type" : "boolean" + }, + "StorageType" : { + "$ref" : "#/definitions/StorageType" } } }, @@ -89,6 +93,7 @@ "type" : "array", "description" : "An array of key-value pair to apply to this resource.", "uniqueItems" : false, + "insertionOrder" : false, "maxItems" : 50, "items" : { "$ref" : "#/definitions/Tag" @@ -117,6 +122,10 @@ "type" : "string", "maxLength" : 2048 }, + "StorageType" : { + "type" : "string", + "enum" : [ "Standard", "InMemory" ] + }, "OnlineStoreSecurityConfig" : { "type" : "object", "additionalProperties" : false, @@ -206,5 +215,12 @@ "list" : { "permissions" : [ "sagemaker:ListFeatureGroups" ] } + }, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : false, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-sagemaker-userprofile.json b/aws-cloudformation-schema/aws-sagemaker-userprofile.json index 05c5ee9a1c..da774b5834 100644 --- a/aws-cloudformation-schema/aws-sagemaker-userprofile.json +++ b/aws-cloudformation-schema/aws-sagemaker-userprofile.json @@ -74,6 +74,37 @@ "RStudioServerProAppSettings" : { "$ref" : "#/definitions/RStudioServerProAppSettings" }, + "JupyterLabAppSettings" : { + "$ref" : "#/definitions/JupyterLabAppSettings" + }, + "SpaceStorageSettings" : { + "$ref" : "#/definitions/DefaultSpaceStorageSettings" + }, + "CodeEditorAppSettings" : { + "$ref" : "#/definitions/CodeEditorAppSettings" + }, + "DefaultLandingUri" : { + "type" : "string", + "description" : "Defines which Amazon SageMaker application users are directed to by default.", + "maxLength" : 1023 + }, + "StudioWebPortal" : { + "type" : "string", + "description" : "Indicates whether the Studio experience is available to users. If not, users cannot access Studio.", + "enum" : [ "ENABLED", "DISABLED" ] + }, + "CustomPosixUserConfig" : { + "$ref" : "#/definitions/CustomPosixUserConfig" + }, + "CustomFileSystemConfigs" : { + "type" : "array", + "uniqueItems" : true, + "minItems" : 0, + "maxItems" : 2, + "items" : { + "$ref" : "#/definitions/CustomFileSystemConfig" + } + }, "SecurityGroups" : { "type" : "array", "description" : "The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication.", @@ -109,7 +140,7 @@ "InstanceType" : { "type" : "string", "description" : "The instance type that the image version runs on.", - "enum" : [ "system", "ml.t3.micro", "ml.t3.small", "ml.t3.medium", "ml.t3.large", "ml.t3.xlarge", "ml.t3.2xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.8xlarge", "ml.m5.12xlarge", "ml.m5.16xlarge", "ml.m5.24xlarge", "ml.c5.large", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.12xlarge", "ml.c5.18xlarge", "ml.c5.24xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.r5.large", "ml.r5.xlarge", "ml.r5.2xlarge", "ml.r5.4xlarge", "ml.r5.8xlarge", "ml.r5.12xlarge", "ml.r5.16xlarge", "ml.r5.24xlarge", "ml.p3dn.24xlarge", "ml.m5d.large", "ml.m5d.xlarge", "ml.m5d.2xlarge", "ml.m5d.4xlarge", "ml.m5d.8xlarge", "ml.m5d.12xlarge", "ml.m5d.16xlarge", "ml.m5d.24xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.12xlarge", "ml.g5.16xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge", "ml.p4d.24xlarge", "ml.p4de.24xlarge", "ml.geospatial.interactive" ] + "enum" : [ "system", "ml.t3.micro", "ml.t3.small", "ml.t3.medium", "ml.t3.large", "ml.t3.xlarge", "ml.t3.2xlarge", "ml.m5.large", "ml.m5.xlarge", "ml.m5.2xlarge", "ml.m5.4xlarge", "ml.m5.8xlarge", "ml.m5.12xlarge", "ml.m5.16xlarge", "ml.m5.24xlarge", "ml.c5.large", "ml.c5.xlarge", "ml.c5.2xlarge", "ml.c5.4xlarge", "ml.c5.9xlarge", "ml.c5.12xlarge", "ml.c5.18xlarge", "ml.c5.24xlarge", "ml.p3.2xlarge", "ml.p3.8xlarge", "ml.p3.16xlarge", "ml.g4dn.xlarge", "ml.g4dn.2xlarge", "ml.g4dn.4xlarge", "ml.g4dn.8xlarge", "ml.g4dn.12xlarge", "ml.g4dn.16xlarge", "ml.r5.large", "ml.r5.xlarge", "ml.r5.2xlarge", "ml.r5.4xlarge", "ml.r5.8xlarge", "ml.r5.12xlarge", "ml.r5.16xlarge", "ml.r5.24xlarge", "ml.p3dn.24xlarge", "ml.m5d.large", "ml.m5d.xlarge", "ml.m5d.2xlarge", "ml.m5d.4xlarge", "ml.m5d.8xlarge", "ml.m5d.12xlarge", "ml.m5d.16xlarge", "ml.m5d.24xlarge", "ml.g5.xlarge", "ml.g5.2xlarge", "ml.g5.4xlarge", "ml.g5.8xlarge", "ml.g5.12xlarge", "ml.g5.16xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge", "ml.p4d.24xlarge", "ml.p4de.24xlarge", "ml.geospatial.interactive", "ml.trn1.2xlarge", "ml.trn1.32xlarge", "ml.trn1n.32xlarge" ] }, "SageMakerImageArn" : { "type" : "string", @@ -146,6 +177,163 @@ } } }, + "JupyterLabAppSettings" : { + "type" : "object", + "description" : "The JupyterLab app settings.", + "additionalProperties" : false, + "properties" : { + "DefaultResourceSpec" : { + "$ref" : "#/definitions/ResourceSpec", + "description" : "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app." + }, + "LifecycleConfigArns" : { + "type" : "array", + "description" : "A list of LifecycleConfigArns available for use with JupyterLab apps.", + "uniqueItems" : false, + "minItems" : 0, + "maxItems" : 30, + "items" : { + "$ref" : "#/definitions/StudioLifecycleConfigArn" + } + }, + "CodeRepositories" : { + "type" : "array", + "description" : "A list of CodeRepositories available for use with JupyterLab apps.", + "uniqueItems" : false, + "minItems" : 0, + "maxItems" : 30, + "items" : { + "$ref" : "#/definitions/CodeRepository" + } + }, + "CustomImages" : { + "type" : "array", + "description" : "A list of custom images available for use for JupyterLab apps", + "uniqueItems" : false, + "minItems" : 0, + "maxItems" : 30, + "items" : { + "$ref" : "#/definitions/CustomImage" + } + } + } + }, + "CodeRepository" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "RepositoryUrl" : { + "type" : "string", + "description" : "A CodeRepository (valid URL) to be used within Jupyter's Git extension.", + "maxLength" : 256, + "pattern" : "^https://([.\\-_a-zA-Z0-9]+/?){3,1016}$" + } + }, + "required" : [ "RepositoryUrl" ] + }, + "DefaultSpaceStorageSettings" : { + "type" : "object", + "description" : "Default storage settings for a space.", + "additionalProperties" : false, + "properties" : { + "DefaultEbsStorageSettings" : { + "$ref" : "#/definitions/DefaultEbsStorageSettings" + } + } + }, + "DefaultEbsStorageSettings" : { + "type" : "object", + "description" : "Properties related to the Amazon Elastic Block Store volume.", + "additionalProperties" : false, + "properties" : { + "DefaultEbsVolumeSizeInGb" : { + "description" : "Default size of the Amazon EBS volume in Gb", + "$ref" : "#/definitions/SpaceEbsVolumeSizeInGb" + }, + "MaximumEbsVolumeSizeInGb" : { + "description" : "Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb.", + "$ref" : "#/definitions/SpaceEbsVolumeSizeInGb" + } + }, + "required" : [ "DefaultEbsVolumeSizeInGb", "MaximumEbsVolumeSizeInGb" ] + }, + "SpaceEbsVolumeSizeInGb" : { + "type" : "integer", + "minimum" : 5, + "maximum" : 16384 + }, + "CodeEditorAppSettings" : { + "type" : "object", + "description" : "The CodeEditor app settings.", + "additionalProperties" : false, + "properties" : { + "DefaultResourceSpec" : { + "$ref" : "#/definitions/ResourceSpec", + "description" : "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app." + }, + "LifecycleConfigArns" : { + "type" : "array", + "description" : "A list of LifecycleConfigArns available for use with CodeEditor apps.", + "uniqueItems" : false, + "minItems" : 0, + "maxItems" : 30, + "items" : { + "$ref" : "#/definitions/StudioLifecycleConfigArn" + } + } + } + }, + "StudioLifecycleConfigArn" : { + "type" : "string", + "description" : "The Amazon Resource Name (ARN) of the Lifecycle Configuration to attach to the Resource.", + "maxLength" : 256, + "pattern" : "arn:aws[a-z\\-]*:sagemaker:[a-z0-9\\-]*:[0-9]{12}:studio-lifecycle-config/.*" + }, + "CustomPosixUserConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Uid" : { + "type" : "integer", + "minimum" : 10000, + "maximum" : 4000000 + }, + "Gid" : { + "type" : "integer", + "minimum" : 1001, + "maximum" : 4000000 + } + }, + "required" : [ "Uid", "Gid" ] + }, + "CustomFileSystemConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "EFSFileSystemConfig" : { + "$ref" : "#/definitions/EFSFileSystemConfig" + } + } + }, + "EFSFileSystemConfig" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "FileSystemPath" : { + "type" : "string", + "pattern" : "^\\/\\S*$", + "minLength" : 1, + "maxLength" : 256 + }, + "FileSystemId" : { + "type" : "string", + "minLength" : 11, + "maxLength" : 21, + "pattern" : "^(fs-[0-9a-f]{8,})$" + } + }, + "required" : [ "FileSystemId" ] + }, "CustomImage" : { "type" : "object", "description" : "A custom SageMaker image.", diff --git a/aws-cloudformation-schema/aws-securityhub-hub.json b/aws-cloudformation-schema/aws-securityhub-hub.json index 144b8f4b02..7dfa09c524 100644 --- a/aws-cloudformation-schema/aws-securityhub-hub.json +++ b/aws-cloudformation-schema/aws-securityhub-hub.json @@ -1,24 +1,75 @@ { "typeName" : "AWS::SecurityHub::Hub", - "description" : "Resource Type definition for AWS::SecurityHub::Hub", - "additionalProperties" : false, + "description" : "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n", + "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-securityhub", + "definitions" : { + "Tags" : { + "description" : "A key-value pair to associate with a resource.", + "type" : "object", + "additionalProperties" : false, + "patternProperties" : { + "^[a-zA-Z0-9-_]{1,128}$" : { + "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 + } + } + } + }, "properties" : { - "ControlFindingGenerator" : { - "type" : "string" + "ARN" : { + "description" : "An ARN is automatically created for the customer.", + "type" : "string", + "pattern" : "^arn:.*" }, "EnableDefaultStandards" : { + "description" : "Whether to enable the security standards that Security Hub has designated as automatically enabled.", "type" : "boolean" }, + "ControlFindingGenerator" : { + "description" : "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards.", + "type" : "string", + "pattern" : "^(SECURITY_CONTROL|STANDARD_CONTROL)$" + }, "AutoEnableControls" : { + "description" : "Whether to automatically enable new controls when they are added to standards that are enabled", "type" : "boolean" }, - "Id" : { - "type" : "string" - }, "Tags" : { - "type" : "object" + "$ref" : "#/definitions/Tags" + }, + "SubscribedAt" : { + "description" : "The date and time when Security Hub was enabled in the account.", + "type" : "string" } }, - "primaryIdentifier" : [ "/properties/Id" ], - "readOnlyProperties" : [ "/properties/Id" ] + "additionalProperties" : false, + "primaryIdentifier" : [ "/properties/ARN" ], + "readOnlyProperties" : [ "/properties/ARN", "/properties/SubscribedAt" ], + "writeOnlyProperties" : [ "/properties/EnableDefaultStandards" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags" + }, + "handlers" : { + "create" : { + "permissions" : [ "securityhub:EnableSecurityHub", "securityhub:UpdateSecurityHubConfiguration", "securityhub:TagResource", "securityhub:ListTagsForResource" ] + }, + "read" : { + "permissions" : [ "securityhub:DescribeHub", "securityhub:ListTagsForResource" ] + }, + "update" : { + "permissions" : [ "securityhub:DescribeHub", "securityhub:UpdateSecurityHubConfiguration", "securityhub:TagResource", "securityhub:UntagResource", "securityhub:ListTagsForResource" ] + }, + "delete" : { + "permissions" : [ "securityhub:DisableSecurityHub" ] + }, + "list" : { + "permissions" : [ "securityhub:DescribeHub", "securityhub:ListTagsForResource" ] + } + } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-servicecatalogappregistry-application.json b/aws-cloudformation-schema/aws-servicecatalogappregistry-application.json index e2a78c1d9e..814df6dce9 100644 --- a/aws-cloudformation-schema/aws-servicecatalogappregistry-application.json +++ b/aws-cloudformation-schema/aws-servicecatalogappregistry-application.json @@ -39,11 +39,30 @@ }, "Tags" : { "$ref" : "#/definitions/Tags" + }, + "ApplicationTagKey" : { + "type" : "string", + "description" : "The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value.", + "maxLength" : 128, + "pattern" : "\\w+" + }, + "ApplicationTagValue" : { + "type" : "string", + "description" : "The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. ", + "maxLength" : 256, + "pattern" : "\\[a-zA-Z0-9_-:/]+" + }, + "ApplicationName" : { + "type" : "string", + "description" : "The name of the application. ", + "minLength" : 1, + "maxLength" : 256, + "pattern" : "\\w+" } }, "additionalProperties" : false, "required" : [ "Name" ], - "readOnlyProperties" : [ "/properties/Id", "/properties/Arn" ], + "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/ApplicationName", "/properties/ApplicationTagKey", "/properties/ApplicationTagValue" ], "primaryIdentifier" : [ "/properties/Id" ], "additionalIdentifiers" : [ [ "/properties/Name" ] ], "tagging" : { diff --git a/aws-cloudformation-schema/aws-signer-signingprofile.json b/aws-cloudformation-schema/aws-signer-signingprofile.json index 77589945d1..a1d98ac69e 100644 --- a/aws-cloudformation-schema/aws-signer-signingprofile.json +++ b/aws-cloudformation-schema/aws-signer-signingprofile.json @@ -9,7 +9,7 @@ }, "Arn" : { "type" : "string", - "pattern" : "^arn:aws(-(cn|gov))?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$" + "pattern" : "^arn:aws(-(cn|us-gov))?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$" }, "ProfileVersion" : { "type" : "string", diff --git a/aws-cloudformation-schema/aws-sns-subscription.json b/aws-cloudformation-schema/aws-sns-subscription.json index 3549793ea5..00a4f92fff 100644 --- a/aws-cloudformation-schema/aws-sns-subscription.json +++ b/aws-cloudformation-schema/aws-sns-subscription.json @@ -3,6 +3,9 @@ "description" : "Resource Type definition for AWS::SNS::Subscription", "additionalProperties" : false, "properties" : { + "ReplayPolicy" : { + "type" : "object" + }, "RawMessageDelivery" : { "type" : "boolean" }, diff --git a/aws-cloudformation-schema/aws-sns-topic.json b/aws-cloudformation-schema/aws-sns-topic.json index 6a66201c75..643a85387c 100644 --- a/aws-cloudformation-schema/aws-sns-topic.json +++ b/aws-cloudformation-schema/aws-sns-topic.json @@ -121,14 +121,7 @@ "description" : "The IAM role ARN to be used when logging failed message deliveries in Amazon CloudWatch" } }, - "required" : [ "Protocol" ], - "anyOf" : [ { - "required" : [ "SuccessFeedbackRoleArn" ] - }, { - "required" : [ "SuccessFeedbackSampleRate" ] - }, { - "required" : [ "FailureFeedbackRoleArn" ] - } ] + "required" : [ "Protocol" ] } }, "tagging" : { diff --git a/aws-cloudformation-schema/aws-ssm-association.json b/aws-cloudformation-schema/aws-ssm-association.json index d5788840fd..d97ec7da0c 100644 --- a/aws-cloudformation-schema/aws-ssm-association.json +++ b/aws-cloudformation-schema/aws-ssm-association.json @@ -171,19 +171,20 @@ }, "required" : [ "Name" ], "readOnlyProperties" : [ "/properties/AssociationId" ], + "writeOnlyProperties" : [ "/properties/WaitForSuccessTimeoutSeconds" ], "primaryIdentifier" : [ "/properties/AssociationId" ], "tagging" : { "taggable" : false }, "handlers" : { "create" : { - "permissions" : [ "ec2:DescribeInstanceStatus", "iam:PassRole", "ssm:CreateAssociation", "ssm:DescribeAssociation" ] + "permissions" : [ "ec2:DescribeInstanceStatus", "iam:PassRole", "iam:CreateServiceLinkedRole", "ssm:CreateAssociation", "ssm:DescribeAssociation", "ssm:GetCalendarState" ] }, "delete" : { "permissions" : [ "ssm:DeleteAssociation" ] }, "update" : { - "permissions" : [ "iam:PassRole", "ssm:UpdateAssociation" ] + "permissions" : [ "iam:PassRole", "ssm:UpdateAssociation", "ssm:GetCalendarState" ] }, "read" : { "permissions" : [ "ssm:DescribeAssociation", "resource-groups:GetGroupQuery", "resource-groups:ListGroups", "resource-groups:ListGroupResources" ] diff --git a/aws-cloudformation-user-guide b/aws-cloudformation-user-guide index 6c68a17aef..19dc52cd3f 160000 --- a/aws-cloudformation-user-guide +++ b/aws-cloudformation-user-guide @@ -1 +1 @@ -Subproject commit 6c68a17aef7f0ccd1f6786f19da341d8c92737e7 +Subproject commit 19dc52cd3f2007d6d268b65b739ffb5ebf8c1e76 diff --git a/provider/cmd/cf2pulumi/schema-full.json b/provider/cmd/cf2pulumi/schema-full.json index f17eaa99d7..c4d793aa3b 100644 --- a/provider/cmd/cf2pulumi/schema-full.json +++ b/provider/cmd/cf2pulumi/schema-full.json @@ -40,6 +40,7 @@ "autoscaling": "AutoScaling", "autoscalingplans": "AutoScalingPlans", "aws-native": "AwsNative", + "b2bi": "B2bi", "backup": "Backup", "backupgateway": "BackupGateway", "batch": "Batch", @@ -478,7 +479,7 @@ "properties": { "unusedAccessAge": { "type": "integer", - "description": "The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days." + "description": "The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days." } }, "type": "object" @@ -11675,7 +11676,11 @@ "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupVCpuCountRequest" } }, - "type": "object" + "type": "object", + "required": [ + "memoryMiB", + "vCpuCount" + ] }, "aws-native:autoscaling:AutoScalingGroupInstancesDistribution": { "properties": { @@ -12511,6 +12516,480 @@ "targetValue" ] }, + "aws-native:b2bi:CapabilityConfiguration0Properties": { + "properties": { + "edi": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiConfiguration" + } + }, + "type": "object", + "required": [ + "edi" + ] + }, + "aws-native:b2bi:CapabilityConfigurationProperties": { + "properties": { + "edi": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiConfiguration" + } + }, + "type": "object", + "required": [ + "edi" + ] + }, + "aws-native:b2bi:CapabilityEdiConfiguration": { + "properties": { + "inputLocation": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + }, + "outputLocation": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + }, + "transformerId": { + "type": "string" + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiTypeProperties" + } + }, + "type": "object", + "required": [ + "inputLocation", + "outputLocation", + "transformerId", + "type" + ] + }, + "aws-native:b2bi:CapabilityEdiType0Properties": { + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Details" + } + }, + "type": "object", + "required": [ + "x12Details" + ] + }, + "aws-native:b2bi:CapabilityEdiTypeProperties": { + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Details" + } + }, + "type": "object", + "required": [ + "x12Details" + ] + }, + "aws-native:b2bi:CapabilityS3Location": { + "properties": { + "bucketName": { + "type": "string" + }, + "key": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:b2bi:CapabilityTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:b2bi:CapabilityType": { + "type": "string", + "enum": [ + { + "name": "Edi", + "value": "edi" + } + ] + }, + "aws-native:b2bi:CapabilityX12Details": { + "properties": { + "transactionSet": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12TransactionSet" + }, + "version": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Version" + } + }, + "type": "object" + }, + "aws-native:b2bi:CapabilityX12TransactionSet": { + "type": "string", + "enum": [ + { + "name": "X12110", + "value": "X12_110" + }, + { + "name": "X12180", + "value": "X12_180" + }, + { + "name": "X12204", + "value": "X12_204" + }, + { + "name": "X12210", + "value": "X12_210" + }, + { + "name": "X12214", + "value": "X12_214" + }, + { + "name": "X12215", + "value": "X12_215" + }, + { + "name": "X12310", + "value": "X12_310" + }, + { + "name": "X12315", + "value": "X12_315" + }, + { + "name": "X12322", + "value": "X12_322" + }, + { + "name": "X12404", + "value": "X12_404" + }, + { + "name": "X12410", + "value": "X12_410" + }, + { + "name": "X12820", + "value": "X12_820" + }, + { + "name": "X12824", + "value": "X12_824" + }, + { + "name": "X12830", + "value": "X12_830" + }, + { + "name": "X12846", + "value": "X12_846" + }, + { + "name": "X12850", + "value": "X12_850" + }, + { + "name": "X12852", + "value": "X12_852" + }, + { + "name": "X12855", + "value": "X12_855" + }, + { + "name": "X12856", + "value": "X12_856" + }, + { + "name": "X12860", + "value": "X12_860" + }, + { + "name": "X12861", + "value": "X12_861" + }, + { + "name": "X12864", + "value": "X12_864" + }, + { + "name": "X12940", + "value": "X12_940" + }, + { + "name": "X12990", + "value": "X12_990" + }, + { + "name": "X12997", + "value": "X12_997" + } + ] + }, + "aws-native:b2bi:CapabilityX12Version": { + "type": "string", + "enum": [ + { + "name": "Version4010", + "value": "VERSION_4010" + }, + { + "name": "Version4030", + "value": "VERSION_4030" + }, + { + "name": "Version5010", + "value": "VERSION_5010" + } + ] + }, + "aws-native:b2bi:PartnershipTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:b2bi:ProfileLogging": { + "type": "string", + "enum": [ + { + "name": "Enabled", + "value": "ENABLED" + }, + { + "name": "Disabled", + "value": "DISABLED" + } + ] + }, + "aws-native:b2bi:ProfileTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:b2bi:TransformerEdiType0Properties": { + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Details" + } + }, + "type": "object", + "required": [ + "x12Details" + ] + }, + "aws-native:b2bi:TransformerEdiTypeProperties": { + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Details" + } + }, + "type": "object", + "required": [ + "x12Details" + ] + }, + "aws-native:b2bi:TransformerFileFormat": { + "type": "string", + "enum": [ + { + "name": "Xml", + "value": "XML" + }, + { + "name": "Json", + "value": "JSON" + } + ] + }, + "aws-native:b2bi:TransformerStatus": { + "type": "string", + "enum": [ + { + "name": "Active", + "value": "active" + }, + { + "name": "Inactive", + "value": "inactive" + } + ] + }, + "aws-native:b2bi:TransformerTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:b2bi:TransformerX12Details": { + "properties": { + "transactionSet": { + "$ref": "#/types/aws-native:b2bi:TransformerX12TransactionSet" + }, + "version": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Version" + } + }, + "type": "object" + }, + "aws-native:b2bi:TransformerX12TransactionSet": { + "type": "string", + "enum": [ + { + "name": "X12110", + "value": "X12_110" + }, + { + "name": "X12180", + "value": "X12_180" + }, + { + "name": "X12204", + "value": "X12_204" + }, + { + "name": "X12210", + "value": "X12_210" + }, + { + "name": "X12214", + "value": "X12_214" + }, + { + "name": "X12215", + "value": "X12_215" + }, + { + "name": "X12310", + "value": "X12_310" + }, + { + "name": "X12315", + "value": "X12_315" + }, + { + "name": "X12322", + "value": "X12_322" + }, + { + "name": "X12404", + "value": "X12_404" + }, + { + "name": "X12410", + "value": "X12_410" + }, + { + "name": "X12820", + "value": "X12_820" + }, + { + "name": "X12824", + "value": "X12_824" + }, + { + "name": "X12830", + "value": "X12_830" + }, + { + "name": "X12846", + "value": "X12_846" + }, + { + "name": "X12850", + "value": "X12_850" + }, + { + "name": "X12852", + "value": "X12_852" + }, + { + "name": "X12855", + "value": "X12_855" + }, + { + "name": "X12856", + "value": "X12_856" + }, + { + "name": "X12860", + "value": "X12_860" + }, + { + "name": "X12861", + "value": "X12_861" + }, + { + "name": "X12864", + "value": "X12_864" + }, + { + "name": "X12940", + "value": "X12_940" + }, + { + "name": "X12990", + "value": "X12_990" + }, + { + "name": "X12997", + "value": "X12_997" + } + ] + }, + "aws-native:b2bi:TransformerX12Version": { + "type": "string", + "enum": [ + { + "name": "Version4010", + "value": "VERSION_4010" + }, + { + "name": "Version4030", + "value": "VERSION_4030" + }, + { + "name": "Version5010", + "value": "VERSION_5010" + } + ] + }, "aws-native:backup:BackupPlanAdvancedBackupSettingResourceType": { "properties": { "backupOptions": { @@ -13167,17 +13646,6 @@ }, "type": "object" }, - "aws-native:batch:JobDefinitionAuthorizationConfig": { - "properties": { - "accessPointId": { - "type": "string" - }, - "iam": { - "type": "string" - } - }, - "type": "object" - }, "aws-native:batch:JobDefinitionContainerProperties": { "properties": { "command": { @@ -13193,13 +13661,13 @@ } }, "ephemeralStorage": { - "$ref": "#/types/aws-native:batch:JobDefinitionEphemeralStorage" + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesEphemeralStorageProperties" }, "executionRoleArn": { "type": "string" }, "fargatePlatformConfiguration": { - "$ref": "#/types/aws-native:batch:JobDefinitionFargatePlatformConfiguration" + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties" }, "image": { "type": "string" @@ -13211,10 +13679,10 @@ "type": "string" }, "linuxParameters": { - "$ref": "#/types/aws-native:batch:JobDefinitionLinuxParameters" + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesLinuxParametersProperties" }, "logConfiguration": { - "$ref": "#/types/aws-native:batch:JobDefinitionLogConfiguration" + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesLogConfigurationProperties" }, "memory": { "type": "integer" @@ -13222,11 +13690,11 @@ "mountPoints": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionMountPoints" + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" } }, "networkConfiguration": { - "$ref": "#/types/aws-native:batch:JobDefinitionNetworkConfiguration" + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesNetworkConfigurationProperties" }, "privileged": { "type": "boolean" @@ -13241,7 +13709,7 @@ } }, "runtimePlatform": { - "$ref": "#/types/aws-native:batch:JobDefinitionRuntimePlatform" + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesRuntimePlatformProperties" }, "secrets": { "type": "array", @@ -13264,7 +13732,7 @@ "volumes": { "type": "array", "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionVolumes" + "$ref": "#/types/aws-native:batch:JobDefinitionVolume" } } }, @@ -13273,6 +13741,93 @@ "image" ] }, + "aws-native:batch:JobDefinitionContainerPropertiesEphemeralStorageProperties": { + "properties": { + "sizeInGiB": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "sizeInGiB" + ] + }, + "aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties": { + "properties": { + "platformVersion": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionContainerPropertiesLinuxParametersProperties": { + "properties": { + "devices": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionDevice" + } + }, + "initProcessEnabled": { + "type": "boolean" + }, + "maxSwap": { + "type": "integer" + }, + "sharedMemorySize": { + "type": "integer" + }, + "swappiness": { + "type": "integer" + }, + "tmpfs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionTmpfs" + } + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionContainerPropertiesLogConfigurationProperties": { + "properties": { + "logDriver": { + "type": "string" + }, + "options": { + "$ref": "pulumi.json#/Any" + }, + "secretOptions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionSecret" + } + } + }, + "type": "object", + "required": [ + "logDriver" + ] + }, + "aws-native:batch:JobDefinitionContainerPropertiesNetworkConfigurationProperties": { + "properties": { + "assignPublicIp": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionContainerPropertiesRuntimePlatformProperties": { + "properties": { + "cpuArchitecture": { + "type": "string" + }, + "operatingSystemFamily": { + "type": "string" + } + }, + "type": "object" + }, "aws-native:batch:JobDefinitionDevice": { "properties": { "containerPath": { @@ -13290,10 +13845,21 @@ }, "type": "object" }, + "aws-native:batch:JobDefinitionEfsAuthorizationConfig": { + "properties": { + "accessPointId": { + "type": "string" + }, + "iam": { + "type": "string" + } + }, + "type": "object" + }, "aws-native:batch:JobDefinitionEfsVolumeConfiguration": { "properties": { "authorizationConfig": { - "$ref": "#/types/aws-native:batch:JobDefinitionAuthorizationConfig" + "$ref": "#/types/aws-native:batch:JobDefinitionEfsAuthorizationConfig" }, "fileSystemId": { "type": "string" @@ -13438,10 +14004,47 @@ }, "type": "object" }, + "aws-native:batch:JobDefinitionEksMetadata": { + "properties": { + "labels": { + "$ref": "pulumi.json#/Any" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksPodProperties": { + "properties": { + "containers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" + } + }, + "dnsPolicy": { + "type": "string" + }, + "hostNetwork": { + "type": "boolean" + }, + "metadata": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksMetadata" + }, + "serviceAccountName": { + "type": "string" + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksVolume" + } + } + }, + "type": "object" + }, "aws-native:batch:JobDefinitionEksProperties": { "properties": { "podProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionPodProperties" + "$ref": "#/types/aws-native:batch:JobDefinitionEksPodProperties" } }, "type": "object" @@ -13491,17 +14094,6 @@ }, "type": "object" }, - "aws-native:batch:JobDefinitionEphemeralStorage": { - "properties": { - "sizeInGiB": { - "type": "integer" - } - }, - "type": "object", - "required": [ - "sizeInGiB" - ] - }, "aws-native:batch:JobDefinitionEvaluateOnExit": { "properties": { "action": { @@ -13522,72 +14114,23 @@ "action" ] }, - "aws-native:batch:JobDefinitionFargatePlatformConfiguration": { + "aws-native:batch:JobDefinitionHost": { "properties": { - "platformVersion": { + "sourcePath": { "type": "string" } }, "type": "object" }, - "aws-native:batch:JobDefinitionLinuxParameters": { + "aws-native:batch:JobDefinitionJobTimeout": { "properties": { - "devices": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionDevice" - } - }, - "initProcessEnabled": { - "type": "boolean" - }, - "maxSwap": { - "type": "integer" - }, - "sharedMemorySize": { - "type": "integer" - }, - "swappiness": { + "attemptDurationSeconds": { "type": "integer" - }, - "tmpfs": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionTmpfs" - } - } - }, - "type": "object" - }, - "aws-native:batch:JobDefinitionLogConfiguration": { - "properties": { - "logDriver": { - "type": "string" - }, - "options": { - "$ref": "pulumi.json#/Any" - }, - "secretOptions": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionSecret" - } - } - }, - "type": "object", - "required": [ - "logDriver" - ] - }, - "aws-native:batch:JobDefinitionMetadata": { - "properties": { - "labels": { - "$ref": "pulumi.json#/Any" } }, "type": "object" }, - "aws-native:batch:JobDefinitionMountPoints": { + "aws-native:batch:JobDefinitionMountPoint": { "properties": { "containerPath": { "type": "string" @@ -13601,14 +14144,6 @@ }, "type": "object" }, - "aws-native:batch:JobDefinitionNetworkConfiguration": { - "properties": { - "assignPublicIp": { - "type": "string" - } - }, - "type": "object" - }, "aws-native:batch:JobDefinitionNodeProperties": { "properties": { "mainNode": { @@ -13645,35 +14180,6 @@ "targetNodes" ] }, - "aws-native:batch:JobDefinitionPodProperties": { - "properties": { - "containers": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" - } - }, - "dnsPolicy": { - "type": "string" - }, - "hostNetwork": { - "type": "boolean" - }, - "metadata": { - "$ref": "#/types/aws-native:batch:JobDefinitionMetadata" - }, - "serviceAccountName": { - "type": "string" - }, - "volumes": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksVolume" - } - } - }, - "type": "object" - }, "aws-native:batch:JobDefinitionResourceRequirement": { "properties": { "type": { @@ -13699,17 +14205,6 @@ }, "type": "object" }, - "aws-native:batch:JobDefinitionRuntimePlatform": { - "properties": { - "cpuArchitecture": { - "type": "string" - }, - "operatingSystemFamily": { - "type": "string" - } - }, - "type": "object" - }, "aws-native:batch:JobDefinitionSecret": { "properties": { "name": { @@ -13725,14 +14220,6 @@ "valueFrom" ] }, - "aws-native:batch:JobDefinitionTimeout": { - "properties": { - "attemptDurationSeconds": { - "type": "integer" - } - }, - "type": "object" - }, "aws-native:batch:JobDefinitionTmpfs": { "properties": { "containerPath": { @@ -13773,13 +14260,13 @@ "softLimit" ] }, - "aws-native:batch:JobDefinitionVolumes": { + "aws-native:batch:JobDefinitionVolume": { "properties": { "efsVolumeConfiguration": { "$ref": "#/types/aws-native:batch:JobDefinitionEfsVolumeConfiguration" }, "host": { - "$ref": "#/types/aws-native:batch:JobDefinitionVolumesHost" + "$ref": "#/types/aws-native:batch:JobDefinitionHost" }, "name": { "type": "string" @@ -13787,14 +14274,6 @@ }, "type": "object" }, - "aws-native:batch:JobDefinitionVolumesHost": { - "properties": { - "sourcePath": { - "type": "string" - } - }, - "type": "object" - }, "aws-native:batch:JobQueueComputeEnvironmentOrder": { "properties": { "computeEnvironment": { @@ -15146,6 +15625,9 @@ "items": { "$ref": "#/types/aws-native:cleanrooms:CollaborationMemberAbility" } + }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration" } }, "type": "object", @@ -15155,6 +15637,28 @@ "memberAbilities" ] }, + "aws-native:cleanrooms:CollaborationPaymentConfiguration": { + "properties": { + "queryCompute": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationQueryComputePaymentConfig" + } + }, + "type": "object", + "required": [ + "queryCompute" + ] + }, + "aws-native:cleanrooms:CollaborationQueryComputePaymentConfig": { + "properties": { + "isResponsible": { + "type": "boolean" + } + }, + "type": "object", + "required": [ + "isResponsible" + ] + }, "aws-native:cleanrooms:CollaborationQueryLogStatus": { "type": "string", "enum": [ @@ -15582,6 +16086,17 @@ "value" ] }, + "aws-native:cleanrooms:MembershipPaymentConfiguration": { + "properties": { + "queryCompute": { + "$ref": "#/types/aws-native:cleanrooms:MembershipQueryComputePaymentConfig" + } + }, + "type": "object", + "required": [ + "queryCompute" + ] + }, "aws-native:cleanrooms:MembershipProtectedQueryOutputConfiguration": { "properties": { "s3": { @@ -15625,6 +16140,17 @@ "resultFormat" ] }, + "aws-native:cleanrooms:MembershipQueryComputePaymentConfig": { + "properties": { + "isResponsible": { + "type": "boolean" + } + }, + "type": "object", + "required": [ + "isResponsible" + ] + }, "aws-native:cleanrooms:MembershipQueryLogStatus": { "type": "string", "enum": [ @@ -17225,6 +17751,21 @@ "name" ] }, + "aws-native:cloudfront:KeyValueStoreImportSource": { + "properties": { + "sourceArn": { + "type": "string" + }, + "sourceType": { + "type": "string" + } + }, + "type": "object", + "required": [ + "sourceArn", + "sourceType" + ] + }, "aws-native:cloudfront:MonitoringSubscription": { "properties": { "realtimeMetricsSubscriptionConfig": { @@ -19044,6 +19585,21 @@ "value" ] }, + "aws-native:codedeploy:DeploymentConfigMinimumHealthyHostsPerZone": { + "properties": { + "type": { + "type": "string" + }, + "value": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "type", + "value" + ] + }, "aws-native:codedeploy:DeploymentConfigTimeBasedCanary": { "properties": { "canaryInterval": { @@ -19091,6 +19647,20 @@ "type" ] }, + "aws-native:codedeploy:DeploymentConfigZonalConfig": { + "properties": { + "firstZoneMonitorDurationInSeconds": { + "type": "integer" + }, + "minimumHealthyHostsPerZone": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigMinimumHealthyHostsPerZone" + }, + "monitorDurationInSeconds": { + "type": "integer" + } + }, + "type": "object" + }, "aws-native:codedeploy:DeploymentGroupAlarm": { "properties": { "name": { @@ -19767,6 +20337,48 @@ "type" ] }, + "aws-native:codepipeline:PipelineGitConfiguration": { + "properties": { + "push": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codepipeline:PipelineGitPushFilter" + } + }, + "sourceActionName": { + "type": "string" + } + }, + "type": "object", + "required": [ + "sourceActionName" + ] + }, + "aws-native:codepipeline:PipelineGitPushFilter": { + "properties": { + "tags": { + "$ref": "#/types/aws-native:codepipeline:PipelineGitTagFilterCriteria" + } + }, + "type": "object" + }, + "aws-native:codepipeline:PipelineGitTagFilterCriteria": { + "properties": { + "excludes": { + "type": "array", + "items": { + "type": "string" + } + }, + "includes": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, "aws-native:codepipeline:PipelineInputArtifact": { "properties": { "name": { @@ -19843,6 +20455,37 @@ "value" ] }, + "aws-native:codepipeline:PipelineTriggerDeclaration": { + "properties": { + "gitConfiguration": { + "$ref": "#/types/aws-native:codepipeline:PipelineGitConfiguration" + }, + "providerType": { + "type": "string" + } + }, + "type": "object", + "required": [ + "providerType" + ] + }, + "aws-native:codepipeline:PipelineVariableDeclaration": { + "properties": { + "defaultValue": { + "type": "string" + }, + "description": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "type": "object", + "required": [ + "name" + ] + }, "aws-native:codepipeline:WebhookAuthConfiguration": { "properties": { "allowedIpRange": { @@ -22749,6 +23392,44 @@ }, "type": "object" }, + "aws-native:configuration:ConfigurationRecorderRecordingMode": { + "properties": { + "recordingFrequency": { + "type": "string" + }, + "recordingModeOverrides": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:configuration:ConfigurationRecorderRecordingModeOverride" + } + } + }, + "type": "object", + "required": [ + "recordingFrequency" + ] + }, + "aws-native:configuration:ConfigurationRecorderRecordingModeOverride": { + "properties": { + "description": { + "type": "string" + }, + "recordingFrequency": { + "type": "string" + }, + "resourceTypes": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object", + "required": [ + "recordingFrequency", + "resourceTypes" + ] + }, "aws-native:configuration:ConfigurationRecorderRecordingStrategy": { "properties": { "useOnly": { @@ -23805,6 +24486,7 @@ }, "type": "object", "required": [ + "encryptionConfig", "prefix", "retentionPeriodHours" ] @@ -23849,6 +24531,24 @@ } ] }, + "aws-native:connect:InstanceTag": { + "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:connect:IntegrationAssociationIntegrationType": { "description": "Specifies the integration type to be associated with the instance", "type": "string", @@ -23860,6 +24560,10 @@ { "name": "LambdaFunction", "value": "LAMBDA_FUNCTION" + }, + { + "name": "Application", + "value": "APPLICATION" } ] }, @@ -24199,6 +24903,18 @@ "$ref": "#/types/aws-native:connect:RuleAssignContactCategoryAction" } }, + "createCaseActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleCreateCaseAction" + } + }, + "endAssociatedTaskActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleEndAssociatedTasksAction" + } + }, "eventBridgeActions": { "type": "array", "items": { @@ -24216,6 +24932,12 @@ "items": { "$ref": "#/types/aws-native:connect:RuleTaskAction" } + }, + "updateCaseActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleUpdateCaseAction" + } } }, "type": "object" @@ -24224,6 +24946,30 @@ "description": "The definition for assigning contact category action.", "type": "object" }, + "aws-native:connect:RuleCreateCaseAction": { + "description": "The definition for create case action.", + "properties": { + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleField" + } + }, + "templateId": { + "type": "string", + "description": "The Id of template." + } + }, + "type": "object", + "required": [ + "fields", + "templateId" + ] + }, + "aws-native:connect:RuleEndAssociatedTasksAction": { + "description": "The definition for ending associated task action.", + "type": "object" + }, "aws-native:connect:RuleEventBridgeAction": { "description": "The definition for event bridge action.", "properties": { @@ -24237,6 +24983,41 @@ "name" ] }, + "aws-native:connect:RuleField": { + "description": "The field of the case.", + "properties": { + "id": { + "type": "string", + "description": "The Id of the field" + }, + "value": { + "$ref": "#/types/aws-native:connect:RuleFieldValue" + } + }, + "type": "object", + "required": [ + "id", + "value" + ] + }, + "aws-native:connect:RuleFieldValue": { + "description": "The value of the field.", + "properties": { + "booleanValue": { + "type": "boolean" + }, + "doubleValue": { + "type": "number" + }, + "emptyValue": { + "$ref": "pulumi.json#/Any" + }, + "stringValue": { + "type": "string" + } + }, + "type": "object" + }, "aws-native:connect:RuleNotificationRecipientType": { "description": "The type of notification recipient.", "properties": { @@ -24419,7 +25200,30 @@ { "name": "OnMetricDataUpdate", "value": "OnMetricDataUpdate" + }, + { + "name": "OnCaseCreate", + "value": "OnCaseCreate" + }, + { + "name": "OnCasesUpdate", + "value": "OnCasesUpdate" + } + ] + }, + "aws-native:connect:RuleUpdateCaseAction": { + "description": "The definition for update case action.", + "properties": { + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleField" + } } + }, + "type": "object", + "required": [ + "fields" ] }, "aws-native:connect:SecurityProfileTag": { @@ -30552,6 +31356,75 @@ "value" ] }, + "aws-native:dms:DataProviderDmsSslModeValue": { + "type": "string", + "enum": [ + { + "name": "None", + "value": "none" + }, + { + "name": "Require", + "value": "require" + }, + { + "name": "VerifyCa", + "value": "verify_ca" + }, + { + "name": "VerifyFull", + "value": "verify_full" + } + ] + }, + "aws-native:dms:DataProviderEngine": { + "description": "The property describes a data engine for the data provider.", + "type": "string", + "enum": [ + { + "name": "Postgresql", + "value": "postgresql" + }, + { + "name": "Mysql", + "value": "mysql" + }, + { + "name": "Oracle", + "value": "oracle" + }, + { + "name": "Sqlserver", + "value": "sqlserver" + }, + { + "name": "Aurora", + "value": "aurora" + }, + { + "name": "AuroraPostgresql", + "value": "aurora_postgresql" + } + ] + }, + "aws-native:dms:DataProviderTag": { + "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:dms:EndpointDocDbSettings": { "properties": { "docsToInvestigate": { @@ -30646,6 +31519,15 @@ "currentLsn": { "type": "string" }, + "keepCsvFiles": { + "type": "boolean" + }, + "loadTimeout": { + "type": "integer" + }, + "maxFileSize": { + "type": "integer" + }, "maxKBytesPerRead": { "type": "integer" }, @@ -30657,6 +31539,9 @@ }, "setDataCaptureChanges": { "type": "boolean" + }, + "writeBufferSize": { + "type": "integer" } }, "type": "object" @@ -31357,6 +32242,81 @@ "value" ] }, + "aws-native:dms:InstanceProfileNetworkType": { + "description": "The property describes a network type for the instance profile.", + "type": "string", + "enum": [ + { + "name": "Ipv4", + "value": "IPV4" + }, + { + "name": "Ipv6", + "value": "IPV6" + }, + { + "name": "Dual", + "value": "DUAL" + } + ] + }, + "aws-native:dms:InstanceProfileTag": { + "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:dms:MigrationProjectDataProviderDescriptor": { + "description": "It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject", + "properties": { + "dataProviderArn": { + "type": "string" + }, + "dataProviderIdentifier": { + "type": "string" + }, + "dataProviderName": { + "type": "string" + }, + "secretsManagerAccessRoleArn": { + "type": "string" + }, + "secretsManagerSecretId": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:dms:MigrationProjectTag": { + "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:dms:ReplicationConfigComputeConfig": { "description": "Configuration parameters for provisioning a AWS DMS Serverless replication", "properties": { @@ -31477,6 +32437,146 @@ "value" ] }, + "aws-native:dms:SchemaConversionApplicationAttributesProperties": { + "description": "The property describes schema conversion application attributes for the migration project.", + "properties": { + "s3BucketPath": { + "type": "string" + }, + "s3BucketRoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:dms:Settings0Properties": { + "description": "PostgreSqlSettings property identifier.", + "properties": { + "postgreSqlSettings": { + "$ref": "#/types/aws-native:dms:Settings0PropertiesPostgreSqlSettingsProperties" + } + }, + "type": "object" + }, + "aws-native:dms:Settings0PropertiesPostgreSqlSettingsProperties": { + "properties": { + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + }, + "type": "object" + }, + "aws-native:dms:Settings1Properties": { + "description": "MySqlSettings property identifier.", + "properties": { + "mySqlSettings": { + "$ref": "#/types/aws-native:dms:Settings1PropertiesMySqlSettingsProperties" + } + }, + "type": "object" + }, + "aws-native:dms:Settings1PropertiesMySqlSettingsProperties": { + "properties": { + "certificateArn": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + }, + "type": "object" + }, + "aws-native:dms:Settings2Properties": { + "description": "OracleSettings property identifier.", + "properties": { + "oracleSettings": { + "$ref": "#/types/aws-native:dms:Settings2PropertiesOracleSettingsProperties" + } + }, + "type": "object" + }, + "aws-native:dms:Settings2PropertiesOracleSettingsProperties": { + "properties": { + "asmServer": { + "type": "string" + }, + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "secretsManagerOracleAsmAccessRoleArn": { + "type": "string" + }, + "secretsManagerOracleAsmSecretId": { + "type": "string" + }, + "secretsManagerSecurityDbEncryptionAccessRoleArn": { + "type": "string" + }, + "secretsManagerSecurityDbEncryptionSecretId": { + "type": "string" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + }, + "type": "object" + }, + "aws-native:dms:Settings3Properties": { + "description": "MicrosoftSqlServerSettings property identifier.", + "properties": { + "microsoftSqlServerSettings": { + "$ref": "#/types/aws-native:dms:Settings3PropertiesMicrosoftSqlServerSettingsProperties" + } + }, + "type": "object" + }, + "aws-native:dms:Settings3PropertiesMicrosoftSqlServerSettingsProperties": { + "properties": { + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + }, + "type": "object" + }, "aws-native:docdb:DbClusterParameterGroupTag": { "properties": { "key": { @@ -33467,7 +34567,7 @@ "$ref": "#/types/aws-native:ec2:InstanceEbs" }, "noDevice": { - "$ref": "#/types/aws-native:ec2:InstanceNoDevice" + "$ref": "pulumi.json#/Any" }, "virtualName": { "type": "string" @@ -33675,9 +34775,6 @@ "deviceIndex" ] }, - "aws-native:ec2:InstanceNoDevice": { - "type": "object" - }, "aws-native:ec2:InstancePrivateDnsNameOptions": { "properties": { "enableResourceNameDnsARecord": { @@ -36041,6 +37138,20 @@ "value" ] }, + "aws-native:ec2:SnapshotBlockPublicAccessState": { + "description": "The state of EBS Snapshot Block Public Access.", + "type": "string", + "enum": [ + { + "name": "BlockAllSharing", + "value": "block-all-sharing" + }, + { + "name": "BlockNewSharing", + "value": "block-new-sharing" + } + ] + }, "aws-native:ec2:SpotFleetAcceleratorCountRequest": { "properties": { "max": { @@ -37731,6 +38842,10 @@ "aws-native:ec2:VerifiedAccessTrustProviderDeviceOptions": { "description": "The options for device identity based trust providers.", "properties": { + "publicSigningKeyUrl": { + "type": "string", + "description": "URL Verified Access will use to verify authenticity of the device tokens." + }, "tenantId": { "type": "string", "description": "The ID of the tenant application with the device-identity provider." @@ -38114,6 +39229,9 @@ "type": "string", "replaceOnChanges": true }, + "managedDraining": { + "$ref": "#/types/aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedDraining" + }, "managedScaling": { "$ref": "#/types/aws-native:ecs:CapacityProviderManagedScaling" }, @@ -38126,6 +39244,19 @@ "autoScalingGroupArn" ] }, + "aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedDraining": { + "type": "string", + "enum": [ + { + "name": "Disabled", + "value": "DISABLED" + }, + { + "name": "Enabled", + "value": "ENABLED" + } + ] + }, "aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedTerminationProtection": { "type": "string", "enum": [ @@ -39715,6 +40846,39 @@ "value" ] }, + "aws-native:eks:ClusterAccessConfig": { + "description": "An object representing the Access Config to use for the cluster.", + "properties": { + "authenticationMode": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfigAuthenticationMode", + "description": "Specify the authentication mode that should be used to create your cluster." + }, + "bootstrapClusterCreatorAdminPermissions": { + "type": "boolean", + "description": "Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster.", + "replaceOnChanges": true + } + }, + "type": "object" + }, + "aws-native:eks:ClusterAccessConfigAuthenticationMode": { + "description": "Specify the authentication mode that should be used to create your cluster.", + "type": "string", + "enum": [ + { + "name": "ConfigMap", + "value": "CONFIG_MAP" + }, + { + "name": "ApiAndConfigMap", + "value": "API_AND_CONFIG_MAP" + }, + { + "name": "Api", + "value": "API" + } + ] + }, "aws-native:eks:ClusterControlPlanePlacement": { "description": "Specify the placement group of the control plane machines for your cluster.", "properties": { @@ -42302,6 +43466,20 @@ "allocationStrategy" ] }, + "aws-native:emr:ClusterPlacementGroupConfig": { + "properties": { + "instanceRole": { + "type": "string" + }, + "placementStrategy": { + "type": "string" + } + }, + "type": "object", + "required": [ + "instanceRole" + ] + }, "aws-native:emr:ClusterPlacementType": { "properties": { "availabilityZone": { @@ -42895,6 +44073,20 @@ } ] }, + "aws-native:emr:StudioIdcUserAssignment": { + "description": "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio.", + "type": "string", + "enum": [ + { + "name": "Required", + "value": "REQUIRED" + }, + { + "name": "Optional", + "value": "OPTIONAL" + } + ] + }, "aws-native:emr:StudioSessionMappingIdentityType": { "description": "Specifies whether the identity to map to the Studio is a user or a group.", "type": "string", @@ -45008,6 +46200,47 @@ "description": "The actions for the experiment.", "type": "object" }, + "aws-native:fis:ExperimentTemplateExperimentOptions": { + "properties": { + "accountTargeting": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptionsAccountTargeting", + "description": "The account targeting setting for the experiment template." + }, + "emptyTargetResolutionMode": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode", + "description": "The target resolution failure mode for the experiment template." + } + }, + "type": "object" + }, + "aws-native:fis:ExperimentTemplateExperimentOptionsAccountTargeting": { + "description": "The account targeting setting for the experiment template.", + "type": "string", + "enum": [ + { + "name": "MultiAccount", + "value": "multi-account" + }, + { + "name": "SingleAccount", + "value": "single-account" + } + ] + }, + "aws-native:fis:ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode": { + "description": "The target resolution failure mode for the experiment template.", + "type": "string", + "enum": [ + { + "name": "Fail", + "value": "fail" + }, + { + "name": "Skip", + "value": "skip" + } + ] + }, "aws-native:fis:ExperimentTemplateLogConfiguration": { "properties": { "cloudWatchLogsConfiguration": { @@ -47294,6 +48527,20 @@ "cost" ] }, + "aws-native:gamelift:FleetApplyCapacity": { + "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", + "type": "string", + "enum": [ + { + "name": "OnUpdate", + "value": "ON_UPDATE" + }, + { + "name": "OnCreateAndUpdate", + "value": "ON_CREATE_AND_UPDATE" + } + ] + }, "aws-native:gamelift:FleetCertificateConfiguration": { "description": "Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.", "properties": { @@ -52692,6 +53939,60 @@ } ] }, + "aws-native:imagebuilder:ImagePipelineWorkflowConfiguration": { + "description": "The workflow configuration of the image", + "properties": { + "onFailure": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfigurationOnFailure", + "description": "Define execution decision in case of workflow failure" + }, + "parallelGroup": { + "type": "string", + "description": "The parallel group name" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowParameter" + }, + "description": "The parameters associated with the workflow" + }, + "workflowArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow" + } + }, + "type": "object" + }, + "aws-native:imagebuilder:ImagePipelineWorkflowConfigurationOnFailure": { + "description": "Define execution decision in case of workflow failure", + "type": "string", + "enum": [ + { + "name": "Continue", + "value": "CONTINUE" + }, + { + "name": "Abort", + "value": "ABORT" + } + ] + }, + "aws-native:imagebuilder:ImagePipelineWorkflowParameter": { + "description": "A parameter associated with the workflow", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, "aws-native:imagebuilder:ImageRecipeAdditionalInstanceConfiguration": { "description": "Specify additional settings and launch scripts for your build instances.", "properties": { @@ -52876,6 +54177,60 @@ }, "type": "object" }, + "aws-native:imagebuilder:ImageWorkflowConfiguration": { + "description": "The workflow configuration of the image", + "properties": { + "onFailure": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfigurationOnFailure", + "description": "Define execution decision in case of workflow failure" + }, + "parallelGroup": { + "type": "string", + "description": "The parallel group name" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowParameter" + }, + "description": "The parameters associated with the workflow" + }, + "workflowArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow" + } + }, + "type": "object" + }, + "aws-native:imagebuilder:ImageWorkflowConfigurationOnFailure": { + "description": "Define execution decision in case of workflow failure", + "type": "string", + "enum": [ + { + "name": "Continue", + "value": "CONTINUE" + }, + { + "name": "Abort", + "value": "ABORT" + } + ] + }, + "aws-native:imagebuilder:ImageWorkflowParameter": { + "description": "A parameter associated with the workflow", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, "aws-native:imagebuilder:InfrastructureConfigurationInstanceMetadataOptions": { "description": "The instance metadata option settings for the infrastructure configuration.", "properties": { @@ -53185,6 +54540,24 @@ } ] }, + "aws-native:imagebuilder:WorkflowType": { + "description": "The type of the workflow denotes whether the workflow is used to build, test, or distribute.", + "type": "string", + "enum": [ + { + "name": "Build", + "value": "BUILD" + }, + { + "name": "Test", + "value": "TEST" + }, + { + "name": "Distribution", + "value": "DISTRIBUTION" + } + ] + }, "aws-native:index/Region:Region": { "description": "A Region represents any valid Amazon region that may be targeted with deployments.", "type": "string", @@ -55631,6 +57004,33 @@ } ] }, + "aws-native:iot:CertificateProviderOperation": { + "type": "string", + "enum": [ + { + "name": "CreateCertificateFromCsr", + "value": "CreateCertificateFromCsr" + } + ] + }, + "aws-native:iot:CertificateProviderTag": { + "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 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + }, + "value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 1 to 255 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:iot:CertificateStatus": { "type": "string", "enum": [ @@ -67241,6 +68641,10 @@ "name": "RecordDeAggregation", "value": "RecordDeAggregation" }, + { + "name": "Decompression", + "value": "Decompression" + }, { "name": "Lambda", "value": "Lambda" @@ -68320,6 +69724,7 @@ ] }, "aws-native:lambda:EventInvokeConfigDestinationConfig": { + "description": "A destination for events after they have been sent to a function for processing.", "properties": { "onFailure": { "$ref": "#/types/aws-native:lambda:EventInvokeConfigOnFailure" @@ -68331,9 +69736,11 @@ "type": "object" }, "aws-native:lambda:EventInvokeConfigOnFailure": { + "description": "The destination configuration for failed invocations.", "properties": { "destination": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the destination resource." } }, "type": "object", @@ -68342,9 +69749,11 @@ ] }, "aws-native:lambda:EventInvokeConfigOnSuccess": { + "description": "The destination configuration for successful invocations.", "properties": { "destination": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the destination resource." } }, "type": "object", @@ -84387,6 +85796,32 @@ "value" ] }, + "aws-native:osis:PipelineBufferOptions": { + "description": "Key-value pairs to configure buffering.", + "properties": { + "persistentBufferEnabled": { + "type": "boolean", + "description": "Whether persistent buffering should be enabled." + } + }, + "type": "object", + "required": [ + "persistentBufferEnabled" + ] + }, + "aws-native:osis:PipelineEncryptionAtRestOptions": { + "description": "Key-value pairs to configure encryption at rest.", + "properties": { + "kmsKeyArn": { + "type": "string", + "description": "The KMS key to use for encrypting data. By default an AWS owned key is used" + } + }, + "type": "object", + "required": [ + "kmsKeyArn" + ] + }, "aws-native:osis:PipelineLogPublishingOptions": { "description": "Key-value pairs to configure log publishing.", "properties": { @@ -84408,7 +85843,10 @@ "type": "string" } }, - "type": "object" + "type": "object", + "required": [ + "logGroup" + ] }, "aws-native:osis:PipelineTag": { "description": "A key-value pair to associate with a resource.", @@ -84463,7 +85901,10 @@ "description": "A list of subnet IDs associated with the VPC endpoint." } }, - "type": "object" + "type": "object", + "required": [ + "subnetIds" + ] }, "aws-native:panorama:ApplicationInstanceHealthStatus": { "type": "string", @@ -127800,6 +129241,18 @@ { "name": "BucketKeyStatus", "value": "BucketKeyStatus" + }, + { + "name": "ChecksumAlgorithm", + "value": "ChecksumAlgorithm" + }, + { + "name": "ObjectAccessControlList", + "value": "ObjectAccessControlList" + }, + { + "name": "ObjectOwner", + "value": "ObjectOwner" } ] }, @@ -127862,6 +129315,9 @@ }, "logFilePrefix": { "type": "string" + }, + "targetObjectKeyFormat": { + "$ref": "#/types/aws-native:s3:BucketTargetObjectKeyFormat" } }, "type": "object" @@ -128685,6 +130141,10 @@ "value" ] }, + "aws-native:s3:BucketTargetObjectKeyFormat": { + "description": "Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix.", + "type": "object" + }, "aws-native:s3:BucketTiering": { "properties": { "accessTier": { @@ -129365,7 +130825,7 @@ ] }, "aws-native:s3express:DirectoryBucketDataRedundancy": { - "description": "Specifies the number of Avilability Zone that's used for redundancy for the bucket.", + "description": "Specifies the number of Availability Zone that's used for redundancy for the bucket.", "type": "string", "enum": [ { @@ -130063,6 +131523,18 @@ { "name": "MlGeospatialInteractive", "value": "ml.geospatial.interactive" + }, + { + "name": "MlTrn12xlarge", + "value": "ml.trn1.2xlarge" + }, + { + "name": "MlTrn132xlarge", + "value": "ml.trn1.32xlarge" + }, + { + "name": "MlTrn1n32xlarge", + "value": "ml.trn1n.32xlarge" } ] }, @@ -130673,6 +132145,43 @@ } ] }, + "aws-native:sagemaker:DomainCodeEditorAppSettings": { + "description": "The CodeEditor app settings.", + "properties": { + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:DomainResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with CodeEditor apps." + } + }, + "type": "object" + }, + "aws-native:sagemaker:DomainCodeRepository": { + "properties": { + "repositoryUrl": { + "type": "string", + "description": "A CodeRepository (valid URL) to be used within Jupyter's Git extension." + } + }, + "type": "object", + "required": [ + "repositoryUrl" + ] + }, + "aws-native:sagemaker:DomainCustomFileSystemConfig": { + "properties": { + "efsFileSystemConfig": { + "$ref": "#/types/aws-native:sagemaker:DomainEfsFileSystemConfig" + } + }, + "type": "object" + }, "aws-native:sagemaker:DomainCustomImage": { "description": "A custom SageMaker image.", "properties": { @@ -130695,6 +132204,39 @@ "imageName" ] }, + "aws-native:sagemaker:DomainCustomPosixUserConfig": { + "properties": { + "gid": { + "type": "integer" + }, + "uid": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "gid", + "uid" + ] + }, + "aws-native:sagemaker:DomainDefaultEbsStorageSettings": { + "description": "Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS", + "properties": { + "defaultEbsVolumeSizeInGb": { + "type": "integer", + "description": "Default size of the Amazon EBS volume in Gb" + }, + "maximumEbsVolumeSizeInGb": { + "type": "integer", + "description": "Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb." + } + }, + "type": "object", + "required": [ + "defaultEbsVolumeSizeInGb", + "maximumEbsVolumeSizeInGb" + ] + }, "aws-native:sagemaker:DomainDefaultSpaceSettings": { "description": "A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the Create/Update Domain API is called.", "properties": { @@ -130723,6 +132265,60 @@ "executionRole" ] }, + "aws-native:sagemaker:DomainDefaultSpaceStorageSettings": { + "description": "Default storage settings for a space.", + "properties": { + "defaultEbsStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainDefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "aws-native:sagemaker:DomainEfsFileSystemConfig": { + "properties": { + "fileSystemId": { + "type": "string" + }, + "fileSystemPath": { + "type": "string" + } + }, + "type": "object", + "required": [ + "fileSystemId" + ] + }, + "aws-native:sagemaker:DomainJupyterLabAppSettings": { + "description": "The JupyterLab app settings.", + "properties": { + "codeRepositories": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCodeRepository" + }, + "description": "A list of CodeRepositories available for use with JupyterLab apps." + }, + "customImages": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomImage" + }, + "description": "A list of custom images for use for JupyterLab apps." + }, + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:DomainResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with JupyterLab apps." + } + }, + "type": "object" + }, "aws-native:sagemaker:DomainJupyterServerAppSettings": { "description": "The JupyterServer app settings.", "properties": { @@ -131096,6 +132692,18 @@ { "name": "MlGeospatialInteractive", "value": "ml.geospatial.interactive" + }, + { + "name": "MlTrn12xlarge", + "value": "ml.trn1.2xlarge" + }, + { + "name": "MlTrn132xlarge", + "value": "ml.trn1.32xlarge" + }, + { + "name": "MlTrn1n32xlarge", + "value": "ml.trn1n.32xlarge" } ] }, @@ -131165,10 +132773,29 @@ "aws-native:sagemaker:DomainUserSettings": { "description": "A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called.", "properties": { + "codeEditorAppSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainCodeEditorAppSettings" + }, + "customFileSystemConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomFileSystemConfig" + } + }, + "customPosixUserConfig": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomPosixUserConfig" + }, + "defaultLandingUri": { + "type": "string", + "description": "Defines which Amazon SageMaker application users are directed to by default." + }, "executionRole": { "type": "string", "description": "The execution role for the user." }, + "jupyterLabAppSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainJupyterLabAppSettings" + }, "jupyterServerAppSettings": { "$ref": "#/types/aws-native:sagemaker:DomainJupyterServerAppSettings", "description": "The Jupyter server's app settings." @@ -131193,6 +132820,13 @@ "sharingSettings": { "$ref": "#/types/aws-native:sagemaker:DomainSharingSettings", "description": "The sharing settings." + }, + "spaceStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainDefaultSpaceStorageSettings" + }, + "studioWebPortal": { + "$ref": "#/types/aws-native:sagemaker:DomainUserSettingsStudioWebPortal", + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio." } }, "type": "object", @@ -131200,6 +132834,20 @@ "executionRole" ] }, + "aws-native:sagemaker:DomainUserSettingsStudioWebPortal": { + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio.", + "type": "string", + "enum": [ + { + "name": "Enabled", + "value": "ENABLED" + }, + { + "name": "Disabled", + "value": "DISABLED" + } + ] + }, "aws-native:sagemaker:EndpointAlarm": { "properties": { "alarmName": { @@ -131776,6 +133424,19 @@ "s3Uri" ] }, + "aws-native:sagemaker:FeatureGroupStorageType": { + "type": "string", + "enum": [ + { + "name": "Standard", + "value": "Standard" + }, + { + "name": "InMemory", + "value": "InMemory" + } + ] + }, "aws-native:sagemaker:FeatureGroupTableFormat": { "description": "Format for the offline store feature group. Iceberg is the optimal format for feature groups shared between offline and online stores.", "type": "string", @@ -136147,6 +137808,9 @@ }, "securityConfig": { "$ref": "#/types/aws-native:sagemaker:FeatureGroupOnlineStoreSecurityConfig" + }, + "storageType": { + "$ref": "#/types/aws-native:sagemaker:FeatureGroupStorageType" } }, "type": "object" @@ -136673,6 +138337,43 @@ "value" ] }, + "aws-native:sagemaker:UserProfileCodeEditorAppSettings": { + "description": "The CodeEditor app settings.", + "properties": { + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:UserProfileResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with CodeEditor apps." + } + }, + "type": "object" + }, + "aws-native:sagemaker:UserProfileCodeRepository": { + "properties": { + "repositoryUrl": { + "type": "string", + "description": "A CodeRepository (valid URL) to be used within Jupyter's Git extension." + } + }, + "type": "object", + "required": [ + "repositoryUrl" + ] + }, + "aws-native:sagemaker:UserProfileCustomFileSystemConfig": { + "properties": { + "efsFileSystemConfig": { + "$ref": "#/types/aws-native:sagemaker:UserProfileEfsFileSystemConfig" + } + }, + "type": "object" + }, "aws-native:sagemaker:UserProfileCustomImage": { "description": "A custom SageMaker image.", "properties": { @@ -136695,6 +138396,93 @@ "imageName" ] }, + "aws-native:sagemaker:UserProfileCustomPosixUserConfig": { + "properties": { + "gid": { + "type": "integer" + }, + "uid": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "gid", + "uid" + ] + }, + "aws-native:sagemaker:UserProfileDefaultEbsStorageSettings": { + "description": "Properties related to the Amazon Elastic Block Store volume.", + "properties": { + "defaultEbsVolumeSizeInGb": { + "type": "integer", + "description": "Default size of the Amazon EBS volume in Gb" + }, + "maximumEbsVolumeSizeInGb": { + "type": "integer", + "description": "Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb." + } + }, + "type": "object", + "required": [ + "defaultEbsVolumeSizeInGb", + "maximumEbsVolumeSizeInGb" + ] + }, + "aws-native:sagemaker:UserProfileDefaultSpaceStorageSettings": { + "description": "Default storage settings for a space.", + "properties": { + "defaultEbsStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileDefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "aws-native:sagemaker:UserProfileEfsFileSystemConfig": { + "properties": { + "fileSystemId": { + "type": "string" + }, + "fileSystemPath": { + "type": "string" + } + }, + "type": "object", + "required": [ + "fileSystemId" + ] + }, + "aws-native:sagemaker:UserProfileJupyterLabAppSettings": { + "description": "The JupyterLab app settings.", + "properties": { + "codeRepositories": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCodeRepository" + }, + "description": "A list of CodeRepositories available for use with JupyterLab apps." + }, + "customImages": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomImage" + }, + "description": "A list of custom images available for use for JupyterLab apps" + }, + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:UserProfileResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with JupyterLab apps." + } + }, + "type": "object" + }, "aws-native:sagemaker:UserProfileJupyterServerAppSettings": { "description": "The JupyterServer app settings.", "properties": { @@ -137025,6 +138813,18 @@ { "name": "MlGeospatialInteractive", "value": "ml.geospatial.interactive" + }, + { + "name": "MlTrn12xlarge", + "value": "ml.trn1.2xlarge" + }, + { + "name": "MlTrn132xlarge", + "value": "ml.trn1.32xlarge" + }, + { + "name": "MlTrn1n32xlarge", + "value": "ml.trn1n.32xlarge" } ] }, @@ -137078,10 +138878,29 @@ "aws-native:sagemaker:UserProfileUserSettings": { "description": "A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called.", "properties": { + "codeEditorAppSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCodeEditorAppSettings" + }, + "customFileSystemConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomFileSystemConfig" + } + }, + "customPosixUserConfig": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomPosixUserConfig" + }, + "defaultLandingUri": { + "type": "string", + "description": "Defines which Amazon SageMaker application users are directed to by default." + }, "executionRole": { "type": "string", "description": "The user profile Amazon Resource Name (ARN)." }, + "jupyterLabAppSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileJupyterLabAppSettings" + }, "jupyterServerAppSettings": { "$ref": "#/types/aws-native:sagemaker:UserProfileJupyterServerAppSettings", "description": "The Jupyter server's app settings." @@ -137103,10 +138922,31 @@ "sharingSettings": { "$ref": "#/types/aws-native:sagemaker:UserProfileSharingSettings", "description": "The sharing settings." + }, + "spaceStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileDefaultSpaceStorageSettings" + }, + "studioWebPortal": { + "$ref": "#/types/aws-native:sagemaker:UserProfileUserSettingsStudioWebPortal", + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio." } }, "type": "object" }, + "aws-native:sagemaker:UserProfileUserSettingsStudioWebPortal": { + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio.", + "type": "string", + "enum": [ + { + "name": "Enabled", + "value": "ENABLED" + }, + { + "name": "Disabled", + "value": "DISABLED" + } + ] + }, "aws-native:sagemaker:WorkteamCognitoMemberDefinition": { "properties": { "cognitoClientId": { @@ -138319,6 +140159,10 @@ }, "type": "object" }, + "aws-native:securityhub:HubTags": { + "description": "A key-value pair to associate with a resource.", + "type": "object" + }, "aws-native:securityhub:StandardsControl": { "description": "An individual StandardsControl within the Standard.", "properties": { @@ -155920,6 +157764,9 @@ "graphQlDns": { "type": "string" }, + "graphQlEndpointArn": { + "type": "string" + }, "graphQlUrl": { "type": "string" }, @@ -155969,6 +157816,7 @@ "arn", "authenticationType", "graphQlDns", + "graphQlEndpointArn", "graphQlUrl", "name", "realtimeDns", @@ -157762,6 +159610,339 @@ ], "deprecationMessage": "ScalingPlan is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." }, + "aws-native:b2bi:Capability": { + "description": "Definition of AWS::B2BI::Capability Resource Type", + "properties": { + "capabilityArn": { + "type": "string" + }, + "capabilityId": { + "type": "string" + }, + "configuration": { + "$ref": "#/types/aws-native:b2bi:CapabilityConfigurationProperties" + }, + "createdAt": { + "type": "string" + }, + "instructionsDocuments": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + } + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityTag" + } + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityType", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "capabilityArn", + "capabilityId", + "configuration", + "createdAt", + "modifiedAt", + "name", + "type" + ], + "inputProperties": { + "configuration": { + "$ref": "#/types/aws-native:b2bi:CapabilityConfigurationProperties" + }, + "instructionsDocuments": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + } + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityTag" + } + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityType" + } + }, + "requiredInputs": [ + "configuration", + "type" + ] + }, + "aws-native:b2bi:Partnership": { + "description": "Definition of AWS::B2BI::Partnership Resource Type", + "properties": { + "capabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "createdAt": { + "type": "string" + }, + "email": { + "type": "string", + "replaceOnChanges": true + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "partnershipArn": { + "type": "string" + }, + "partnershipId": { + "type": "string" + }, + "phone": { + "type": "string", + "replaceOnChanges": true + }, + "profileId": { + "type": "string", + "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:PartnershipTag" + } + }, + "tradingPartnerId": { + "type": "string" + } + }, + "type": "object", + "required": [ + "createdAt", + "email", + "modifiedAt", + "name", + "partnershipArn", + "partnershipId", + "profileId", + "tradingPartnerId" + ], + "inputProperties": { + "capabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "email": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "profileId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:PartnershipTag" + } + } + }, + "requiredInputs": [ + "email", + "profileId" + ] + }, + "aws-native:b2bi:Profile": { + "description": "Definition of AWS::B2BI::Profile Resource Type", + "properties": { + "businessName": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "email": { + "type": "string" + }, + "logGroupName": { + "type": "string" + }, + "logging": { + "$ref": "#/types/aws-native:b2bi:ProfileLogging", + "replaceOnChanges": true + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "profileArn": { + "type": "string" + }, + "profileId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:ProfileTag" + } + } + }, + "type": "object", + "required": [ + "businessName", + "createdAt", + "logGroupName", + "logging", + "modifiedAt", + "name", + "phone", + "profileArn", + "profileId" + ], + "inputProperties": { + "businessName": { + "type": "string" + }, + "email": { + "type": "string" + }, + "logging": { + "$ref": "#/types/aws-native:b2bi:ProfileLogging" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:ProfileTag" + } + } + }, + "requiredInputs": [ + "businessName", + "logging", + "phone" + ] + }, + "aws-native:b2bi:Transformer": { + "description": "Definition of AWS::B2BI::Transformer Resource Type", + "properties": { + "createdAt": { + "type": "string" + }, + "ediType": { + "$ref": "#/types/aws-native:b2bi:TransformerEdiTypeProperties" + }, + "fileFormat": { + "$ref": "#/types/aws-native:b2bi:TransformerFileFormat" + }, + "mappingTemplate": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sampleDocument": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:b2bi:TransformerStatus" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:TransformerTag" + } + }, + "transformerArn": { + "type": "string" + }, + "transformerId": { + "type": "string" + } + }, + "type": "object", + "required": [ + "createdAt", + "ediType", + "fileFormat", + "mappingTemplate", + "name", + "status", + "transformerArn", + "transformerId" + ], + "inputProperties": { + "ediType": { + "$ref": "#/types/aws-native:b2bi:TransformerEdiTypeProperties" + }, + "fileFormat": { + "$ref": "#/types/aws-native:b2bi:TransformerFileFormat" + }, + "mappingTemplate": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sampleDocument": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:b2bi:TransformerStatus" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:TransformerTag" + } + } + }, + "requiredInputs": [ + "ediType", + "fileFormat", + "mappingTemplate", + "status" + ] + }, "aws-native:backup:BackupPlan": { "description": "Resource Type definition for AWS::Backup::BackupPlan", "properties": { @@ -158345,50 +160526,76 @@ "aws-native:batch:JobDefinition": { "description": "Resource Type definition for AWS::Batch::JobDefinition", "properties": { + "containerOrchestrationType": { + "type": "string" + }, "containerProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties" + "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties", + "replaceOnChanges": true }, "eksProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksProperties" + "$ref": "#/types/aws-native:batch:JobDefinitionEksProperties", + "replaceOnChanges": true + }, + "jobDefinitionArn": { + "type": "string" }, "jobDefinitionName": { "type": "string", "replaceOnChanges": true }, "nodeProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionNodeProperties" + "$ref": "#/types/aws-native:batch:JobDefinitionNodeProperties", + "replaceOnChanges": true }, "parameters": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "replaceOnChanges": true }, "platformCapabilities": { "type": "array", "items": { "type": "string" - } + }, + "replaceOnChanges": true }, "propagateTags": { - "type": "boolean" + "type": "boolean", + "replaceOnChanges": true }, "retryStrategy": { - "$ref": "#/types/aws-native:batch:JobDefinitionRetryStrategy" + "$ref": "#/types/aws-native:batch:JobDefinitionRetryStrategy", + "replaceOnChanges": true }, - "schedulingPriority": { + "revision": { "type": "integer" }, + "schedulingPriority": { + "type": "integer", + "replaceOnChanges": true + }, + "status": { + "type": "string" + }, "tags": { "$ref": "pulumi.json#/Any", - "replaceOnChanges": true + "description": "A key-value pair to associate with a resource." }, "timeout": { - "$ref": "#/types/aws-native:batch:JobDefinitionTimeout" + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout", + "replaceOnChanges": true }, "type": { - "type": "string" + "type": "string", + "replaceOnChanges": true } }, "type": "object", "required": [ + "containerOrchestrationType", + "jobDefinitionArn", + "revision", + "status", "type" ], "inputProperties": { @@ -158423,10 +160630,11 @@ "type": "integer" }, "tags": { - "$ref": "pulumi.json#/Any" + "$ref": "pulumi.json#/Any", + "description": "A key-value pair to associate with a resource." }, "timeout": { - "$ref": "#/types/aws-native:batch:JobDefinitionTimeout" + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout" }, "type": { "type": "string" @@ -158434,8 +160642,7 @@ }, "requiredInputs": [ "type" - ], - "deprecationMessage": "JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + ] }, "aws-native:batch:JobQueue": { "description": "Resource Type definition for AWS::Batch::JobQueue", @@ -158637,6 +160844,11 @@ "aws-native:billingconductor:CustomLineItem": { "description": "A custom line item is an one time charge that is applied to a specific billing group's bill.", "properties": { + "accountId": { + "type": "string", + "description": "The account which this custom line item will be charged to", + "replaceOnChanges": true + }, "arn": { "type": "string", "description": "ARN" @@ -158695,6 +160907,10 @@ "productCode" ], "inputProperties": { + "accountId": { + "type": "string", + "description": "The account which this custom line item will be charged to" + }, "billingGroupArn": { "type": "string", "description": "Billing Group ARN" @@ -159305,8 +161521,7 @@ "requiredInputs": [ "monitorName", "monitorType" - ], - "deprecationMessage": "AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + ] }, "aws-native:ce:AnomalySubscription": { "description": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified", @@ -159410,8 +161625,7 @@ "monitorArnList", "subscribers", "subscriptionName" - ], - "deprecationMessage": "AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + ] }, "aws-native:ce:CostCategory": { "description": "Cost Category enables you to map your cost and usage into meaningful categories. You can use Cost Category to organize your costs using a rule-based engine.", @@ -159930,6 +162144,10 @@ }, "replaceOnChanges": true }, + "creatorPaymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration", + "replaceOnChanges": true + }, "dataEncryptionMetadata": { "$ref": "#/types/aws-native:cleanrooms:CollaborationDataEncryptionMetadata", "replaceOnChanges": true @@ -159980,6 +162198,9 @@ "$ref": "#/types/aws-native:cleanrooms:CollaborationMemberAbility" } }, + "creatorPaymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration" + }, "dataEncryptionMetadata": { "$ref": "#/types/aws-native:cleanrooms:CollaborationDataEncryptionMetadata" }, @@ -160202,6 +162423,9 @@ "membershipIdentifier": { "type": "string" }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:MembershipPaymentConfiguration" + }, "queryLogStatus": { "$ref": "#/types/aws-native:cleanrooms:MembershipQueryLogStatus" }, @@ -160229,6 +162453,9 @@ "defaultResultConfiguration": { "$ref": "#/types/aws-native:cleanrooms:MembershipProtectedQueryResultConfiguration" }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:MembershipPaymentConfiguration" + }, "queryLogStatus": { "$ref": "#/types/aws-native:cleanrooms:MembershipQueryLogStatus" }, @@ -160298,6 +162525,7 @@ "type": "object", "required": [ "arn", + "imageId", "instanceType" ], "inputProperties": { @@ -160339,6 +162567,7 @@ } }, "requiredInputs": [ + "imageId", "instanceType" ], "deprecationMessage": "EnvironmentEc2 is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." @@ -161568,6 +163797,45 @@ "keyGroupConfig" ] }, + "aws-native:cloudfront:KeyValueStore": { + "description": "Resource Type definition for AWS::CloudFront::KeyValueStore", + "properties": { + "arn": { + "type": "string" + }, + "comment": { + "type": "string" + }, + "importSource": { + "$ref": "#/types/aws-native:cloudfront:KeyValueStoreImportSource" + }, + "name": { + "type": "string", + "replaceOnChanges": true + }, + "status": { + "type": "string" + } + }, + "type": "object", + "required": [ + "arn", + "name", + "status" + ], + "inputProperties": { + "comment": { + "type": "string" + }, + "importSource": { + "$ref": "#/types/aws-native:cloudfront:KeyValueStoreImportSource" + }, + "name": { + "type": "string" + } + }, + "deprecationMessage": "KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + }, "aws-native:cloudfront:MonitoringSubscription": { "description": "Resource Type definition for AWS::CloudFront::MonitoringSubscription", "properties": { @@ -161877,6 +164145,14 @@ "type": "string", "description": "The ARN of the event data store." }, + "federationEnabled": { + "type": "boolean", + "description": "Indicates whether federation is enabled on an event data store." + }, + "federationRoleArn": { + "type": "string", + "description": "The ARN of the role used for event data store federation." + }, "ingestionEnabled": { "type": "boolean", "description": "Indicates whether the event data store is ingesting events." @@ -161950,6 +164226,14 @@ "type": "string", "description": "The mode that the event data store will use to charge for event storage." }, + "federationEnabled": { + "type": "boolean", + "description": "Indicates whether federation is enabled on an event data store." + }, + "federationRoleArn": { + "type": "string", + "description": "The ARN of the role used for event data store federation." + }, "ingestionEnabled": { "type": "boolean", "description": "Indicates whether the event data store is ingesting events." @@ -163438,6 +165722,11 @@ "$ref": "#/types/aws-native:codedeploy:DeploymentConfigTrafficRoutingConfig", "description": "The configuration that specifies how the deployment traffic is routed.", "replaceOnChanges": true + }, + "zonalConfig": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigZonalConfig", + "description": "The zonal deployment config that specifies how the zonal deployment behaves", + "replaceOnChanges": true } }, "type": "object", @@ -163457,6 +165746,10 @@ "trafficRoutingConfig": { "$ref": "#/types/aws-native:codedeploy:DeploymentConfigTrafficRoutingConfig", "description": "The configuration that specifies how the deployment traffic is routed." + }, + "zonalConfig": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigZonalConfig", + "description": "The zonal deployment config that specifies how the zonal deployment behaves" } } }, @@ -163534,6 +165827,9 @@ "$ref": "#/types/aws-native:codedeploy:DeploymentGroupTag" } }, + "terminationHookEnabled": { + "type": "boolean" + }, "triggerConfigurations": { "type": "array", "items": { @@ -163616,6 +165912,9 @@ "$ref": "#/types/aws-native:codedeploy:DeploymentGroupTag" } }, + "terminationHookEnabled": { + "type": "boolean" + }, "triggerConfigurations": { "type": "array", "items": { @@ -163906,6 +166205,9 @@ "type": "string", "replaceOnChanges": true }, + "pipelineType": { + "type": "string" + }, "restartExecutionOnUpdate": { "type": "boolean" }, @@ -163924,6 +166226,18 @@ "$ref": "#/types/aws-native:codepipeline:PipelineTag" } }, + "triggers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codepipeline:PipelineTriggerDeclaration" + } + }, + "variables": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codepipeline:PipelineVariableDeclaration" + } + }, "version": { "type": "string" } @@ -163953,6 +166267,9 @@ "name": { "type": "string" }, + "pipelineType": { + "type": "string" + }, "restartExecutionOnUpdate": { "type": "boolean" }, @@ -163970,6 +166287,18 @@ "items": { "$ref": "#/types/aws-native:codepipeline:PipelineTag" } + }, + "triggers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codepipeline:PipelineTriggerDeclaration" + } + }, + "variables": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codepipeline:PipelineVariableDeclaration" + } } }, "requiredInputs": [ @@ -165899,6 +168228,9 @@ "recordingGroup": { "$ref": "#/types/aws-native:configuration:ConfigurationRecorderRecordingGroup" }, + "recordingMode": { + "$ref": "#/types/aws-native:configuration:ConfigurationRecorderRecordingMode" + }, "roleArn": { "type": "string" } @@ -165914,6 +168246,9 @@ "recordingGroup": { "$ref": "#/types/aws-native:configuration:ConfigurationRecorderRecordingGroup" }, + "recordingMode": { + "$ref": "#/types/aws-native:configuration:ConfigurationRecorderRecordingMode" + }, "roleArn": { "type": "string" } @@ -166727,6 +169062,13 @@ "serviceRole": { "type": "string", "description": "Service linked role created as part of instance creation." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:InstanceTag" + }, + "description": "An array of key-value pairs to apply to this resource." } }, "type": "object", @@ -166754,6 +169096,13 @@ "instanceAlias": { "type": "string", "description": "Alias of the new directory created as part of new instance creation." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:InstanceTag" + }, + "description": "An array of key-value pairs to apply to this resource." } }, "requiredInputs": [ @@ -171866,6 +174215,118 @@ }, "deprecationMessage": "Certificate is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." }, + "aws-native:dms:DataProvider": { + "description": "Resource schema for AWS::DMS::DataProvider", + "properties": { + "dataProviderArn": { + "type": "string", + "description": "The data provider ARN." + }, + "dataProviderCreationTime": { + "type": "string", + "description": "The data provider creation time." + }, + "dataProviderIdentifier": { + "type": "string", + "description": "The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn" + }, + "dataProviderName": { + "type": "string", + "description": "The property describes a name to identify the data provider." + }, + "description": { + "type": "string", + "description": "The optional description of the data provider." + }, + "engine": { + "$ref": "#/types/aws-native:dms:DataProviderEngine", + "description": "The property describes a data engine for the data provider." + }, + "exactSettings": { + "type": "boolean", + "description": "The property describes the exact settings which can be modified" + }, + "settings": { + "oneOf": [ + { + "$ref": "#/types/aws-native:dms:Settings0Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings1Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings2Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings3Properties" + } + ], + "description": "The property identifies the exact type of settings for the data provider." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:DataProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "type": "object", + "required": [ + "dataProviderArn", + "dataProviderCreationTime", + "engine" + ], + "inputProperties": { + "dataProviderIdentifier": { + "type": "string", + "description": "The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn" + }, + "dataProviderName": { + "type": "string", + "description": "The property describes a name to identify the data provider." + }, + "description": { + "type": "string", + "description": "The optional description of the data provider." + }, + "engine": { + "$ref": "#/types/aws-native:dms:DataProviderEngine", + "description": "The property describes a data engine for the data provider." + }, + "exactSettings": { + "type": "boolean", + "description": "The property describes the exact settings which can be modified" + }, + "settings": { + "oneOf": [ + { + "$ref": "#/types/aws-native:dms:Settings0Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings1Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings2Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings3Properties" + } + ], + "description": "The property identifies the exact type of settings for the data provider." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:DataProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "requiredInputs": [ + "engine" + ] + }, "aws-native:dms:Endpoint": { "description": "Resource Type definition for AWS::DMS::Endpoint", "properties": { @@ -172158,6 +174619,247 @@ ], "deprecationMessage": "EventSubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." }, + "aws-native:dms:InstanceProfile": { + "description": "Resource schema for AWS::DMS::InstanceProfile.", + "properties": { + "availabilityZone": { + "type": "string", + "description": "The property describes an availability zone of the instance profile." + }, + "description": { + "type": "string", + "description": "The optional description of the instance profile." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an ARN of the instance profile." + }, + "instanceProfileCreationTime": { + "type": "string", + "description": "The property describes a creating time of the instance profile." + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes a name for the instance profile." + }, + "kmsKeyArn": { + "type": "string", + "description": "The property describes kms key arn for the instance profile." + }, + "networkType": { + "$ref": "#/types/aws-native:dms:InstanceProfileNetworkType", + "description": "The property describes a network type for the instance profile." + }, + "publiclyAccessible": { + "type": "boolean", + "description": "The property describes the publicly accessible of the instance profile" + }, + "subnetGroupIdentifier": { + "type": "string", + "description": "The property describes a subnet group identifier for the instance profile." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:InstanceProfileTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "vpcSecurityGroups": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The property describes vps security groups for the instance profile." + } + }, + "type": "object", + "required": [ + "instanceProfileArn", + "instanceProfileCreationTime" + ], + "inputProperties": { + "availabilityZone": { + "type": "string", + "description": "The property describes an availability zone of the instance profile." + }, + "description": { + "type": "string", + "description": "The optional description of the instance profile." + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes a name for the instance profile." + }, + "kmsKeyArn": { + "type": "string", + "description": "The property describes kms key arn for the instance profile." + }, + "networkType": { + "$ref": "#/types/aws-native:dms:InstanceProfileNetworkType", + "description": "The property describes a network type for the instance profile." + }, + "publiclyAccessible": { + "type": "boolean", + "description": "The property describes the publicly accessible of the instance profile" + }, + "subnetGroupIdentifier": { + "type": "string", + "description": "The property describes a subnet group identifier for the instance profile." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:InstanceProfileTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "vpcSecurityGroups": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The property describes vps security groups for the instance profile." + } + } + }, + "aws-native:dms:MigrationProject": { + "description": "Resource schema for AWS::DMS::MigrationProject", + "properties": { + "description": { + "type": "string", + "description": "The optional description of the migration project." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an instance profile arn for the migration project. For read" + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an instance profile identifier for the migration project. For create" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes an instance profile name for the migration project. For read" + }, + "migrationProjectArn": { + "type": "string", + "description": "The property describes an ARN of the migration project." + }, + "migrationProjectCreationTime": { + "type": "string", + "description": "The property describes a creating time of the migration project." + }, + "migrationProjectIdentifier": { + "type": "string", + "description": "The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn" + }, + "migrationProjectName": { + "type": "string", + "description": "The property describes a name to identify the migration project." + }, + "schemaConversionApplicationAttributes": { + "$ref": "#/types/aws-native:dms:SchemaConversionApplicationAttributesProperties", + "description": "The property describes schema conversion application attributes for the migration project." + }, + "sourceDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes source data provider descriptors for the migration project." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "targetDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes target data provider descriptors for the migration project." + }, + "transformationRules": { + "type": "string", + "description": "The property describes transformation rules for the migration project." + } + }, + "type": "object", + "required": [ + "migrationProjectArn" + ], + "inputProperties": { + "description": { + "type": "string", + "description": "The optional description of the migration project." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an instance profile arn for the migration project. For read" + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an instance profile identifier for the migration project. For create" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes an instance profile name for the migration project. For read" + }, + "migrationProjectCreationTime": { + "type": "string", + "description": "The property describes a creating time of the migration project." + }, + "migrationProjectIdentifier": { + "type": "string", + "description": "The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn" + }, + "migrationProjectName": { + "type": "string", + "description": "The property describes a name to identify the migration project." + }, + "schemaConversionApplicationAttributes": { + "$ref": "#/types/aws-native:dms:SchemaConversionApplicationAttributesProperties", + "description": "The property describes schema conversion application attributes for the migration project." + }, + "sourceDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes source data provider descriptors for the migration project." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "targetDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes target data provider descriptors for the migration project." + }, + "transformationRules": { + "type": "string", + "description": "The property describes transformation rules for the migration project." + } + } + }, "aws-native:dms:ReplicationConfig": { "description": "A replication configuration that you later provide to configure and start a AWS DMS Serverless replication", "properties": { @@ -172182,7 +174884,8 @@ }, "resourceIdentifier": { "type": "string", - "description": "A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource" + "description": "A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource", + "replaceOnChanges": true }, "sourceEndpointArn": { "type": "string", @@ -174703,6 +177406,9 @@ "type": "string", "replaceOnChanges": true }, + "instanceId": { + "type": "string" + }, "instanceInitiatedShutdownBehavior": { "type": "string" }, @@ -174824,6 +177530,7 @@ }, "type": "object", "required": [ + "instanceId", "privateDnsName", "privateIp", "publicDnsName", @@ -177189,6 +179896,10 @@ "type": "string", "description": "The primary identifier of the resource generated by the service." }, + "coreNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the core network." + }, "destinationCidrBlock": { "type": "string", "description": "The IPv4 CIDR block used for the destination match.", @@ -177256,6 +179967,10 @@ "type": "string", "description": "The ID of the carrier gateway." }, + "coreNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the core network." + }, "destinationCidrBlock": { "type": "string", "description": "The IPv4 CIDR block used for the destination match." @@ -177436,37 +180151,46 @@ "properties": { "cidrIp": { "type": "string", + "description": "The IPv4 ranges", "replaceOnChanges": true }, "cidrIpv6": { "type": "string", + "description": "[VPC only] The IPv6 ranges", "replaceOnChanges": true }, "description": { - "type": "string" + "type": "string", + "description": "Resource Type definition for an egress (outbound) security group rule." }, "destinationPrefixListId": { "type": "string", + "description": "[EC2-VPC only] The ID of a prefix list.", "replaceOnChanges": true }, "destinationSecurityGroupId": { "type": "string", + "description": "You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6).", "replaceOnChanges": true }, "fromPort": { "type": "integer", + "description": "The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.", "replaceOnChanges": true }, "groupId": { "type": "string", + "description": "The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.", "replaceOnChanges": true }, "ipProtocol": { "type": "string", + "description": "[VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed.", "replaceOnChanges": true }, "toPort": { "type": "integer", + "description": "The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.", "replaceOnChanges": true } }, @@ -177477,38 +180201,46 @@ ], "inputProperties": { "cidrIp": { - "type": "string" + "type": "string", + "description": "The IPv4 ranges" }, "cidrIpv6": { - "type": "string" + "type": "string", + "description": "[VPC only] The IPv6 ranges" }, "description": { - "type": "string" + "type": "string", + "description": "Resource Type definition for an egress (outbound) security group rule." }, "destinationPrefixListId": { - "type": "string" + "type": "string", + "description": "[EC2-VPC only] The ID of a prefix list." }, "destinationSecurityGroupId": { - "type": "string" + "type": "string", + "description": "You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6)." }, "fromPort": { - "type": "integer" + "type": "integer", + "description": "The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes." }, "groupId": { - "type": "string" + "type": "string", + "description": "The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID." }, "ipProtocol": { - "type": "string" + "type": "string", + "description": "[VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed." }, "toPort": { - "type": "integer" + "type": "integer", + "description": "The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes." } }, "requiredInputs": [ "groupId", "ipProtocol" - ], - "deprecationMessage": "SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + ] }, "aws-native:ec2:SecurityGroupIngress": { "description": "Resource Type definition for AWS::EC2::SecurityGroupIngress", @@ -177608,6 +180340,33 @@ ], "deprecationMessage": "SecurityGroupIngress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." }, + "aws-native:ec2:SnapshotBlockPublicAccess": { + "description": "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess", + "properties": { + "accountId": { + "type": "string", + "description": "The identifier for the specified AWS account." + }, + "state": { + "$ref": "#/types/aws-native:ec2:SnapshotBlockPublicAccessState", + "description": "The state of EBS Snapshot Block Public Access." + } + }, + "type": "object", + "required": [ + "accountId", + "state" + ], + "inputProperties": { + "state": { + "$ref": "#/types/aws-native:ec2:SnapshotBlockPublicAccessState", + "description": "The state of EBS Snapshot Block Public Access." + } + }, + "requiredInputs": [ + "state" + ] + }, "aws-native:ec2:SpotFleet": { "description": "Resource Type definition for AWS::EC2::SpotFleet", "properties": { @@ -181698,6 +184457,9 @@ "aws-native:eks:Cluster": { "description": "An object representing an Amazon EKS cluster.", "properties": { + "accessConfig": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfig" + }, "arn": { "type": "string", "description": "The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod." @@ -181777,6 +184539,9 @@ "roleArn" ], "inputProperties": { + "accessConfig": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfig" + }, "encryptionConfig": { "type": "array", "items": { @@ -183196,10 +185961,8 @@ "required": [ "arn", "createTime", - "endpoint", "engine", "fullEngineVersion", - "readerEndpoint", "serverlessCacheName", "status" ], @@ -183215,6 +185978,9 @@ "type": "string", "description": "The description of the Serverless Cache." }, + "endpoint": { + "$ref": "#/types/aws-native:elasticache:ServerlessCacheEndpoint" + }, "engine": { "type": "string", "description": "The engine name of the Serverless Cache." @@ -183231,6 +185997,9 @@ "type": "string", "description": "The major engine version of the Serverless Cache." }, + "readerEndpoint": { + "$ref": "#/types/aws-native:elasticache:ServerlessCacheEndpoint" + }, "securityGroupIds": { "type": "array", "items": { @@ -184809,10 +187578,18 @@ "type": "string", "replaceOnChanges": true }, + "ebsRootVolumeIops": { + "type": "integer", + "replaceOnChanges": true + }, "ebsRootVolumeSize": { "type": "integer", "replaceOnChanges": true }, + "ebsRootVolumeThroughput": { + "type": "integer", + "replaceOnChanges": true + }, "instances": { "$ref": "#/types/aws-native:emr:ClusterJobFlowInstancesConfig" }, @@ -184846,6 +187623,13 @@ "type": "string", "replaceOnChanges": true }, + "placementGroupConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:emr:ClusterPlacementGroupConfig" + }, + "replaceOnChanges": true + }, "releaseLabel": { "type": "string", "replaceOnChanges": true @@ -184921,9 +187705,15 @@ "customAmiId": { "type": "string" }, + "ebsRootVolumeIops": { + "type": "integer" + }, "ebsRootVolumeSize": { "type": "integer" }, + "ebsRootVolumeThroughput": { + "type": "integer" + }, "instances": { "$ref": "#/types/aws-native:emr:ClusterJobFlowInstancesConfig" }, @@ -184948,6 +187738,12 @@ "osReleaseLabel": { "type": "string" }, + "placementGroupConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:emr:ClusterPlacementGroupConfig" + } + }, "releaseLabel": { "type": "string" }, @@ -185276,11 +188072,26 @@ "type": "string", "description": "A detailed description of the Studio." }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3.", + "replaceOnChanges": true + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId.", "replaceOnChanges": true }, + "idcInstanceArn": { + "type": "string", + "description": "The ARN of the IAM Identity Center instance to create the Studio application.", + "replaceOnChanges": true + }, + "idcUserAssignment": { + "$ref": "#/types/aws-native:emr:StudioIdcUserAssignment", + "description": "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio.", + "replaceOnChanges": true + }, "idpAuthUrl": { "type": "string", "description": "Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL." @@ -185316,6 +188127,11 @@ }, "description": "A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters." }, + "trustedIdentityPropagationEnabled": { + "type": "boolean", + "description": "A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false.", + "replaceOnChanges": true + }, "url": { "type": "string", "description": "The unique Studio access URL." @@ -185363,10 +188179,22 @@ "type": "string", "description": "A detailed description of the Studio." }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3." + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId." }, + "idcInstanceArn": { + "type": "string", + "description": "The ARN of the IAM Identity Center instance to create the Studio application." + }, + "idcUserAssignment": { + "$ref": "#/types/aws-native:emr:StudioIdcUserAssignment", + "description": "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio." + }, "idpAuthUrl": { "type": "string", "description": "Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL." @@ -185397,6 +188225,10 @@ }, "description": "A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters." }, + "trustedIdentityPropagationEnabled": { + "type": "boolean", + "description": "A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false." + }, "userRole": { "type": "string", "description": "The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies." @@ -186428,74 +189260,92 @@ "description": "Resource Type definition for AWS::EventSchemas::Discoverer", "properties": { "crossAccount": { - "type": "boolean" + "type": "boolean", + "description": "Defines whether event schemas from other accounts are discovered. Default is True." }, "description": { - "type": "string" + "type": "string", + "description": "A description for the discoverer." }, "discovererArn": { - "type": "string" + "type": "string", + "description": "The ARN of the discoverer." }, "discovererId": { - "type": "string" + "type": "string", + "description": "The Id of the discoverer." }, "sourceArn": { "type": "string", + "description": "The ARN of the event bus.", "replaceOnChanges": true }, + "state": { + "type": "string", + "description": "Defines the current state of the discoverer." + }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:DiscovererTagsEntry" - } + }, + "description": "Tags associated with the resource." } }, "type": "object", "required": [ "discovererArn", "discovererId", - "sourceArn" + "sourceArn", + "state" ], "inputProperties": { "crossAccount": { - "type": "boolean" + "type": "boolean", + "description": "Defines whether event schemas from other accounts are discovered. Default is True." }, "description": { - "type": "string" + "type": "string", + "description": "A description for the discoverer." }, "sourceArn": { - "type": "string" + "type": "string", + "description": "The ARN of the event bus." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:DiscovererTagsEntry" - } + }, + "description": "Tags associated with the resource." } }, "requiredInputs": [ "sourceArn" - ], - "deprecationMessage": "Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + ] }, "aws-native:eventschemas:Registry": { "description": "Resource Type definition for AWS::EventSchemas::Registry", "properties": { "description": { - "type": "string" + "type": "string", + "description": "A description of the registry to be created." }, "registryArn": { - "type": "string" + "type": "string", + "description": "The ARN of the registry." }, "registryName": { "type": "string", + "description": "The name of the schema registry.", "replaceOnChanges": true }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:RegistryTagsEntry" - } + }, + "description": "Tags associated with the resource." } }, "type": "object", @@ -186504,19 +189354,21 @@ ], "inputProperties": { "description": { - "type": "string" + "type": "string", + "description": "A description of the registry to be created." }, "registryName": { - "type": "string" + "type": "string", + "description": "The name of the schema registry." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:RegistryTagsEntry" - } + }, + "description": "Tags associated with the resource." } - }, - "deprecationMessage": "Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + } }, "aws-native:eventschemas:RegistryPolicy": { "description": "Resource Type definition for AWS::EventSchemas::RegistryPolicy", @@ -186556,72 +189408,95 @@ "description": "Resource Type definition for AWS::EventSchemas::Schema", "properties": { "content": { - "type": "string" + "type": "string", + "description": "The source of the schema definition." }, "description": { - "type": "string" + "type": "string", + "description": "A description of the schema." + }, + "lastModified": { + "type": "string", + "description": "The last modified time of the schema." }, "registryName": { "type": "string", + "description": "The name of the schema registry.", "replaceOnChanges": true }, "schemaArn": { - "type": "string" + "type": "string", + "description": "The ARN of the schema." }, "schemaName": { "type": "string", + "description": "The name of the schema.", "replaceOnChanges": true }, "schemaVersion": { - "type": "string" + "type": "string", + "description": "The version number of the schema." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:SchemaTagsEntry" - } + }, + "description": "Tags associated with the resource." }, "type": { - "type": "string" + "type": "string", + "description": "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." + }, + "versionCreatedDate": { + "type": "string", + "description": "The date the schema version was created." } }, "type": "object", "required": [ "content", + "lastModified", "registryName", "schemaArn", "schemaVersion", - "type" + "type", + "versionCreatedDate" ], "inputProperties": { "content": { - "type": "string" + "type": "string", + "description": "The source of the schema definition." }, "description": { - "type": "string" + "type": "string", + "description": "A description of the schema." }, "registryName": { - "type": "string" + "type": "string", + "description": "The name of the schema registry." }, "schemaName": { - "type": "string" + "type": "string", + "description": "The name of the schema." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:SchemaTagsEntry" - } + }, + "description": "Tags associated with the resource." }, "type": { - "type": "string" + "type": "string", + "description": "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." } }, "requiredInputs": [ "content", "registryName", "type" - ], - "deprecationMessage": "Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + ] }, "aws-native:evidently:Experiment": { "description": "Resource Type definition for AWS::Evidently::Experiment.", @@ -187175,6 +190050,9 @@ "description": { "type": "string" }, + "experimentOptions": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptions" + }, "logConfiguration": { "$ref": "#/types/aws-native:fis:ExperimentTemplateLogConfiguration" }, @@ -187210,6 +190088,9 @@ "description": { "type": "string" }, + "experimentOptions": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptions" + }, "logConfiguration": { "$ref": "#/types/aws-native:fis:ExperimentTemplateLogConfiguration" }, @@ -187237,6 +190118,50 @@ "targets" ] }, + "aws-native:fis:TargetAccountConfiguration": { + "description": "Resource schema for AWS::FIS::TargetAccountConfiguration", + "properties": { + "accountId": { + "type": "string", + "replaceOnChanges": true + }, + "description": { + "type": "string" + }, + "experimentTemplateId": { + "type": "string", + "replaceOnChanges": true + }, + "roleArn": { + "type": "string" + } + }, + "type": "object", + "required": [ + "accountId", + "experimentTemplateId", + "roleArn" + ], + "inputProperties": { + "accountId": { + "type": "string" + }, + "description": { + "type": "string" + }, + "experimentTemplateId": { + "type": "string" + }, + "roleArn": { + "type": "string" + } + }, + "requiredInputs": [ + "accountId", + "experimentTemplateId", + "roleArn" + ] + }, "aws-native:fms:NotificationChannel": { "description": "Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs.", "properties": { @@ -188691,6 +191616,11 @@ "$ref": "#/types/aws-native:gamelift:FleetAnywhereConfiguration", "description": "Configuration for Anywhere fleet." }, + "applyCapacity": { + "$ref": "#/types/aws-native:gamelift:FleetApplyCapacity", + "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", + "replaceOnChanges": true + }, "buildId": { "type": "string", "description": "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.", @@ -188833,6 +191763,10 @@ "$ref": "#/types/aws-native:gamelift:FleetAnywhereConfiguration", "description": "Configuration for Anywhere fleet." }, + "applyCapacity": { + "$ref": "#/types/aws-native:gamelift:FleetApplyCapacity", + "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer." + }, "buildId": { "type": "string", "description": "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created." @@ -193619,7 +196553,8 @@ "properties": { "groupId": { "type": "string", - "description": "The unique identifier for a group in the identity store." + "description": "The unique identifier for a group in the identity store.", + "replaceOnChanges": true }, "identityStoreId": { "type": "string", @@ -193628,7 +196563,8 @@ }, "memberId": { "$ref": "#/types/aws-native:identitystore:GroupMembershipMemberId", - "description": "An object containing the identifier of a group member." + "description": "An object containing the identifier of a group member.", + "replaceOnChanges": true }, "membershipId": { "type": "string", @@ -194027,6 +196963,10 @@ "description": "Collects additional information about the image being created, including the operating system (OS) version and package list.", "replaceOnChanges": true }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageId": { "type": "string", "description": "The AMI ID of the EC2 AMI in current region." @@ -194063,6 +197003,14 @@ "$ref": "pulumi.json#/Any", "description": "The tags associated with the image.", "replaceOnChanges": true + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfiguration" + }, + "description": "Workflows to define the image build process", + "replaceOnChanges": true } }, "type": "object", @@ -194085,6 +197033,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -194104,6 +197056,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags associated with the image." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } } }, @@ -194130,6 +197089,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -194162,6 +197125,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags of this image pipeline." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } }, "type": "object", @@ -194185,6 +197155,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -194216,6 +197190,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags of this image pipeline." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } } }, @@ -194569,6 +197550,109 @@ "resourceType" ] }, + "aws-native:imagebuilder:Workflow": { + "description": "Resource schema for AWS::ImageBuilder::Workflow", + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow." + }, + "changeDescription": { + "type": "string", + "description": "The change description of the workflow.", + "replaceOnChanges": true + }, + "data": { + "type": "string", + "description": "The data of the workflow.", + "replaceOnChanges": true + }, + "description": { + "type": "string", + "description": "The description of the workflow.", + "replaceOnChanges": true + }, + "kmsKeyId": { + "type": "string", + "description": "The KMS key identifier used to encrypt the workflow.", + "replaceOnChanges": true + }, + "name": { + "type": "string", + "description": "The name of the workflow.", + "replaceOnChanges": true + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "The tags associated with the workflow.", + "replaceOnChanges": true + }, + "type": { + "$ref": "#/types/aws-native:imagebuilder:WorkflowType", + "description": "The type of the workflow denotes whether the workflow is used to build, test, or distribute.", + "replaceOnChanges": true + }, + "uri": { + "type": "string", + "description": "The uri of the workflow.", + "replaceOnChanges": true + }, + "version": { + "type": "string", + "description": "The version of the workflow.", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "arn", + "name", + "type", + "version" + ], + "inputProperties": { + "changeDescription": { + "type": "string", + "description": "The change description of the workflow." + }, + "data": { + "type": "string", + "description": "The data of the workflow." + }, + "description": { + "type": "string", + "description": "The description of the workflow." + }, + "kmsKeyId": { + "type": "string", + "description": "The KMS key identifier used to encrypt the workflow." + }, + "name": { + "type": "string", + "description": "The name of the workflow." + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "The tags associated with the workflow." + }, + "type": { + "$ref": "#/types/aws-native:imagebuilder:WorkflowType", + "description": "The type of the workflow denotes whether the workflow is used to build, test, or distribute." + }, + "uri": { + "type": "string", + "description": "The uri of the workflow." + }, + "version": { + "type": "string", + "description": "The version of the workflow." + } + }, + "requiredInputs": [ + "type", + "version" + ] + }, "aws-native:index:ExtensionResource": { "description": "A special resource that enables deploying CloudFormation Extensions (third-party resources). An extension has to be pre-registered in your AWS account in order to use this resource.", "properties": { @@ -195307,6 +198391,65 @@ "status" ] }, + "aws-native:iot:CertificateProvider": { + "description": "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider.", + "properties": { + "accountDefaultForOperations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderOperation" + } + }, + "arn": { + "type": "string" + }, + "certificateProviderName": { + "type": "string", + "replaceOnChanges": true + }, + "lambdaFunctionArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "type": "object", + "required": [ + "accountDefaultForOperations", + "arn", + "lambdaFunctionArn" + ], + "inputProperties": { + "accountDefaultForOperations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderOperation" + } + }, + "certificateProviderName": { + "type": "string" + }, + "lambdaFunctionArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "requiredInputs": [ + "accountDefaultForOperations", + "lambdaFunctionArn" + ] + }, "aws-native:iot:CustomMetric": { "description": "A custom metric published by your devices to Device Defender.", "properties": { @@ -202128,23 +205271,27 @@ ] }, "aws-native:lambda:EventInvokeConfig": { - "description": "Resource Type definition for AWS::Lambda::EventInvokeConfig", + "description": "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias.", "properties": { "destinationConfig": { "$ref": "#/types/aws-native:lambda:EventInvokeConfigDestinationConfig" }, "functionName": { "type": "string", + "description": "The name of the Lambda function.", "replaceOnChanges": true }, "maximumEventAgeInSeconds": { - "type": "integer" + "type": "integer", + "description": "The maximum age of a request that Lambda sends to a function for processing." }, "maximumRetryAttempts": { - "type": "integer" + "type": "integer", + "description": "The maximum number of times to retry when the function returns an error." }, "qualifier": { "type": "string", + "description": "The identifier of a version or alias.", "replaceOnChanges": true } }, @@ -202158,16 +205305,20 @@ "$ref": "#/types/aws-native:lambda:EventInvokeConfigDestinationConfig" }, "functionName": { - "type": "string" + "type": "string", + "description": "The name of the Lambda function." }, "maximumEventAgeInSeconds": { - "type": "integer" + "type": "integer", + "description": "The maximum age of a request that Lambda sends to a function for processing." }, "maximumRetryAttempts": { - "type": "integer" + "type": "integer", + "description": "The maximum number of times to retry when the function returns an error." }, "qualifier": { - "type": "string" + "type": "string", + "description": "The identifier of a version or alias." } }, "requiredInputs": [ @@ -202483,10 +205634,6 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, - "policy": { - "$ref": "pulumi.json#/Any", - "description": "The resource policy of your function" - }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -202611,10 +205758,6 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, - "policy": { - "$ref": "pulumi.json#/Any", - "description": "The resource policy of your function" - }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -205148,28 +208291,28 @@ ] }, "aws-native:logs:Delivery": { - "description": "Resource Type definition for AWS::Logs::Delivery.", + "description": "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html).", "properties": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery." }, "deliveryDestinationArn": { "type": "string", - "description": "The value of the DeliveryDestinationArn property for this object.", + "description": "The ARN of the delivery destination that is associated with this delivery.", "replaceOnChanges": true }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "deliveryId": { "type": "string", - "description": "The value of the Id property for this object." + "description": "The unique ID that identifies this delivery in your account." }, "deliverySourceName": { "type": "string", - "description": "The value of the DeliverySourceName property for this object.", + "description": "The name of the delivery source that is associated with this delivery.", "replaceOnChanges": true }, "tags": { @@ -205177,7 +208320,7 @@ "items": { "$ref": "#/types/aws-native:logs:DeliveryTag" }, - "description": "The value of the Tags property for this object." + "description": "The tags that have been assigned to this delivery." } }, "type": "object", @@ -205191,18 +208334,18 @@ "inputProperties": { "deliveryDestinationArn": { "type": "string", - "description": "The value of the DeliveryDestinationArn property for this object." + "description": "The ARN of the delivery destination that is associated with this delivery." }, "deliverySourceName": { "type": "string", - "description": "The value of the DeliverySourceName property for this object." + "description": "The name of the delivery source that is associated with this delivery." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryTag" }, - "description": "The value of the Tags property for this object." + "description": "The tags that have been assigned to this delivery." } }, "requiredInputs": [ @@ -205211,11 +208354,11 @@ ] }, "aws-native:logs:DeliveryDestination": { - "description": "Resource Type definition for AWS::Logs::DeliveryDestination", + "description": "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations.", "properties": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery destination." }, "deliveryDestinationPolicy": { "$ref": "pulumi.json#/Any", @@ -205223,16 +208366,16 @@ }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "destinationResourceArn": { "type": "string", - "description": "The ARN of the Destination Resource.", + "description": "The ARN of the AWS resource that will receive the logs.", "replaceOnChanges": true }, "name": { "type": "string", - "description": "The unique name of the Delivery Destination.", + "description": "The name of this delivery destination.", "replaceOnChanges": true }, "tags": { @@ -205240,7 +208383,7 @@ "items": { "$ref": "#/types/aws-native:logs:DeliveryDestinationTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery destination." } }, "type": "object", @@ -205256,27 +208399,27 @@ }, "destinationResourceArn": { "type": "string", - "description": "The ARN of the Destination Resource." + "description": "The ARN of the AWS resource that will receive the logs." }, "name": { "type": "string", - "description": "The unique name of the Delivery Destination." + "description": "The name of this delivery destination." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryDestinationTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery destination." } } }, "aws-native:logs:DeliverySource": { - "description": "Resource Type definition for AWS::Logs::DeliverySource.", + "description": " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html).", "properties": { "arn": { "type": "string", - "description": "The ARN of the Aqueduct Source." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery source." }, "logType": { "type": "string", @@ -205296,18 +208439,18 @@ "items": { "type": "string" }, - "description": "List of ARN of the resource that will be sending the logs" + "description": "This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array." }, "service": { "type": "string", - "description": "The service generating the log" + "description": "The AWS service that is sending logs." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliverySourceTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery source." } }, "type": "object", @@ -205335,7 +208478,7 @@ "items": { "$ref": "#/types/aws-native:logs:DeliverySourceTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery source." } } }, @@ -213915,6 +217058,9 @@ "domainEndpointOptions": { "$ref": "#/types/aws-native:opensearchservice:DomainEndpointOptions" }, + "domainEndpointV2": { + "type": "string" + }, "domainEndpoints": { "$ref": "pulumi.json#/Any" }, @@ -213931,6 +217077,9 @@ "engineVersion": { "type": "string" }, + "ipAddressType": { + "type": "string" + }, "logPublishingOptions": { "$ref": "pulumi.json#/Any" }, @@ -213965,6 +217114,7 @@ "arn", "domainArn", "domainEndpoint", + "domainEndpointV2", "domainEndpoints", "serviceSoftwareOptions" ], @@ -213999,6 +217149,9 @@ "engineVersion": { "type": "string" }, + "ipAddressType": { + "type": "string" + }, "logPublishingOptions": { "$ref": "pulumi.json#/Any" }, @@ -215316,6 +218469,12 @@ "aws-native:osis:Pipeline": { "description": "An OpenSearch Ingestion Service Data Prepper pipeline running Data Prepper.", "properties": { + "bufferOptions": { + "$ref": "#/types/aws-native:osis:PipelineBufferOptions" + }, + "encryptionAtRestOptions": { + "$ref": "#/types/aws-native:osis:PipelineEncryptionAtRestOptions" + }, "ingestEndpointUrls": { "type": "array", "items": { @@ -215376,6 +218535,12 @@ "vpcEndpoints" ], "inputProperties": { + "bufferOptions": { + "$ref": "#/types/aws-native:osis:PipelineBufferOptions" + }, + "encryptionAtRestOptions": { + "$ref": "#/types/aws-native:osis:PipelineEncryptionAtRestOptions" + }, "logPublishingOptions": { "$ref": "#/types/aws-native:osis:PipelineLogPublishingOptions" }, @@ -226386,12 +229551,12 @@ }, "bucketName": { "type": "string", - "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", + "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", "replaceOnChanges": true }, "dataRedundancy": { "$ref": "#/types/aws-native:s3express:DirectoryBucketDataRedundancy", - "description": "Specifies the number of Avilability Zone that's used for redundancy for the bucket.", + "description": "Specifies the number of Availability Zone that's used for redundancy for the bucket.", "replaceOnChanges": true }, "locationName": { @@ -226409,11 +229574,11 @@ "inputProperties": { "bucketName": { "type": "string", - "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." }, "dataRedundancy": { "$ref": "#/types/aws-native:s3express:DirectoryBucketDataRedundancy", - "description": "Specifies the number of Avilability Zone that's used for redundancy for the bucket." + "description": "Specifies the number of Availability Zone that's used for redundancy for the bucket." }, "locationName": { "type": "string", @@ -227173,8 +230338,7 @@ "properties": { "appNetworkAccessType": { "$ref": "#/types/aws-native:sagemaker:DomainAppNetworkAccessType", - "description": "Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.", - "replaceOnChanges": true + "description": "Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly." }, "appSecurityGroupManagement": { "$ref": "#/types/aws-native:sagemaker:DomainAppSecurityGroupManagement", @@ -227222,6 +230386,10 @@ "type": "string", "description": "The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app." }, + "singleSignOnApplicationArn": { + "type": "string", + "description": "The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023." + }, "singleSignOnManagedApplicationInstanceId": { "type": "string", "description": "The SSO managed application instance ID." @@ -227231,8 +230399,7 @@ "items": { "type": "string" }, - "description": "The VPC subnets that Studio uses for communication.", - "replaceOnChanges": true + "description": "The VPC subnets that Studio uses for communication." }, "tags": { "type": "array", @@ -227261,6 +230428,7 @@ "domainName", "homeEfsFileSystemId", "securityGroupIdForDomainBoundary", + "singleSignOnApplicationArn", "singleSignOnManagedApplicationInstanceId", "subnetIds", "url", @@ -229929,37 +233097,54 @@ } }, "aws-native:securityhub:Hub": { - "description": "Resource Type definition for AWS::SecurityHub::Hub", + "description": "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n", "properties": { + "arn": { + "type": "string", + "description": "An ARN is automatically created for the customer." + }, "autoEnableControls": { - "type": "boolean" + "type": "boolean", + "description": "Whether to automatically enable new controls when they are added to standards that are enabled" }, "controlFindingGenerator": { - "type": "string" + "type": "string", + "description": "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards." }, "enableDefaultStandards": { - "type": "boolean" + "type": "boolean", + "description": "Whether to enable the security standards that Security Hub has designated as automatically enabled." + }, + "subscribedAt": { + "type": "string", + "description": "The date and time when Security Hub was enabled in the account." }, "tags": { - "$ref": "pulumi.json#/Any" + "$ref": "#/types/aws-native:securityhub:HubTags" } }, "type": "object", + "required": [ + "arn", + "subscribedAt" + ], "inputProperties": { "autoEnableControls": { - "type": "boolean" + "type": "boolean", + "description": "Whether to automatically enable new controls when they are added to standards that are enabled" }, "controlFindingGenerator": { - "type": "string" + "type": "string", + "description": "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards." }, "enableDefaultStandards": { - "type": "boolean" + "type": "boolean", + "description": "Whether to enable the security standards that Security Hub has designated as automatically enabled." }, "tags": { - "$ref": "pulumi.json#/Any" + "$ref": "#/types/aws-native:securityhub:HubTags" } - }, - "deprecationMessage": "Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible." + } }, "aws-native:securityhub:Standard": { "description": "The AWS::SecurityHub::Standard resource represents the implementation of an individual AWS Security Hub Standard in your account. It requires you have SecurityHub enabled before you can enable the Standard.", @@ -230936,6 +234121,18 @@ "aws-native:servicecatalogappregistry:Application": { "description": "Resource Schema for AWS::ServiceCatalogAppRegistry::Application", "properties": { + "applicationName": { + "type": "string", + "description": "The name of the application. " + }, + "applicationTagKey": { + "type": "string", + "description": "The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value." + }, + "applicationTagValue": { + "type": "string", + "description": "The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. " + }, "arn": { "type": "string" }, @@ -230953,6 +234150,9 @@ }, "type": "object", "required": [ + "applicationName", + "applicationTagKey", + "applicationTagValue", "arn", "name" ], @@ -232207,6 +235407,9 @@ "region": { "type": "string" }, + "replayPolicy": { + "$ref": "pulumi.json#/Any" + }, "subscriptionRoleArn": { "type": "string" }, @@ -232245,6 +235448,9 @@ "region": { "type": "string" }, + "replayPolicy": { + "$ref": "pulumi.json#/Any" + }, "subscriptionRoleArn": { "type": "string" }, @@ -242838,6 +246044,9 @@ "graphQlDns": { "type": "string" }, + "graphQlEndpointArn": { + "type": "string" + }, "graphQlUrl": { "type": "string" }, @@ -243769,6 +246978,203 @@ } } }, + "aws-native:b2bi:getCapability": { + "description": "Definition of AWS::B2BI::Capability Resource Type", + "inputs": { + "properties": { + "capabilityId": { + "type": "string" + } + }, + "required": [ + "capabilityId" + ] + }, + "outputs": { + "properties": { + "capabilityArn": { + "type": "string" + }, + "capabilityId": { + "type": "string" + }, + "configuration": { + "$ref": "#/types/aws-native:b2bi:CapabilityConfigurationProperties" + }, + "createdAt": { + "type": "string" + }, + "instructionsDocuments": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + } + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityTag" + } + } + } + } + }, + "aws-native:b2bi:getPartnership": { + "description": "Definition of AWS::B2BI::Partnership Resource Type", + "inputs": { + "properties": { + "partnershipId": { + "type": "string" + } + }, + "required": [ + "partnershipId" + ] + }, + "outputs": { + "properties": { + "capabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "createdAt": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "partnershipArn": { + "type": "string" + }, + "partnershipId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:PartnershipTag" + } + }, + "tradingPartnerId": { + "type": "string" + } + } + } + }, + "aws-native:b2bi:getProfile": { + "description": "Definition of AWS::B2BI::Profile Resource Type", + "inputs": { + "properties": { + "profileId": { + "type": "string" + } + }, + "required": [ + "profileId" + ] + }, + "outputs": { + "properties": { + "businessName": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "email": { + "type": "string" + }, + "logGroupName": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "profileArn": { + "type": "string" + }, + "profileId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:ProfileTag" + } + } + } + } + }, + "aws-native:b2bi:getTransformer": { + "description": "Definition of AWS::B2BI::Transformer Resource Type", + "inputs": { + "properties": { + "transformerId": { + "type": "string" + } + }, + "required": [ + "transformerId" + ] + }, + "outputs": { + "properties": { + "createdAt": { + "type": "string" + }, + "ediType": { + "$ref": "#/types/aws-native:b2bi:TransformerEdiTypeProperties" + }, + "fileFormat": { + "$ref": "#/types/aws-native:b2bi:TransformerFileFormat" + }, + "mappingTemplate": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sampleDocument": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:b2bi:TransformerStatus" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:TransformerTag" + } + }, + "transformerArn": { + "type": "string" + }, + "transformerId": { + "type": "string" + } + } + } + }, "aws-native:backup:getBackupPlan": { "description": "Resource Type definition for AWS::Backup::BackupPlan", "inputs": { @@ -244090,51 +247496,31 @@ "description": "Resource Type definition for AWS::Batch::JobDefinition", "inputs": { "properties": { - "id": { + "jobDefinitionArn": { "type": "string" } }, "required": [ - "id" + "jobDefinitionArn" ] }, "outputs": { "properties": { - "containerProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties" - }, - "eksProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionEksProperties" - }, - "id": { + "containerOrchestrationType": { "type": "string" }, - "nodeProperties": { - "$ref": "#/types/aws-native:batch:JobDefinitionNodeProperties" - }, - "parameters": { - "$ref": "pulumi.json#/Any" - }, - "platformCapabilities": { - "type": "array", - "items": { - "type": "string" - } - }, - "propagateTags": { - "type": "boolean" - }, - "retryStrategy": { - "$ref": "#/types/aws-native:batch:JobDefinitionRetryStrategy" + "jobDefinitionArn": { + "type": "string" }, - "schedulingPriority": { + "revision": { "type": "integer" }, - "timeout": { - "$ref": "#/types/aws-native:batch:JobDefinitionTimeout" - }, - "type": { + "status": { "type": "string" + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "A key-value pair to associate with a resource." } } } @@ -245059,6 +248445,9 @@ "membershipIdentifier": { "type": "string" }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:MembershipPaymentConfiguration" + }, "queryLogStatus": { "$ref": "#/types/aws-native:cleanrooms:MembershipQueryLogStatus" }, @@ -245872,6 +249261,35 @@ } } }, + "aws-native:cloudfront:getKeyValueStore": { + "description": "Resource Type definition for AWS::CloudFront::KeyValueStore", + "inputs": { + "properties": { + "name": { + "type": "string" + } + }, + "required": [ + "name" + ] + }, + "outputs": { + "properties": { + "arn": { + "type": "string" + }, + "comment": { + "type": "string" + }, + "id": { + "type": "string" + }, + "status": { + "type": "string" + } + } + } + }, "aws-native:cloudfront:getMonitoringSubscription": { "description": "Resource Type definition for AWS::CloudFront::MonitoringSubscription", "inputs": { @@ -246129,6 +249547,14 @@ "type": "string", "description": "The ARN of the event data store." }, + "federationEnabled": { + "type": "boolean", + "description": "Indicates whether federation is enabled on an event data store." + }, + "federationRoleArn": { + "type": "string", + "description": "The ARN of the role used for event data store federation." + }, "ingestionEnabled": { "type": "boolean", "description": "Indicates whether the event data store is ingesting events." @@ -247064,6 +250490,9 @@ "$ref": "#/types/aws-native:codedeploy:DeploymentGroupTag" } }, + "terminationHookEnabled": { + "type": "boolean" + }, "triggerConfigurations": { "type": "array", "items": { @@ -247205,6 +250634,9 @@ "id": { "type": "string" }, + "pipelineType": { + "type": "string" + }, "restartExecutionOnUpdate": { "type": "boolean" }, @@ -247223,6 +250655,18 @@ "$ref": "#/types/aws-native:codepipeline:PipelineTag" } }, + "triggers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codepipeline:PipelineTriggerDeclaration" + } + }, + "variables": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codepipeline:PipelineVariableDeclaration" + } + }, "version": { "type": "string" } @@ -248250,6 +251694,9 @@ "recordingGroup": { "$ref": "#/types/aws-native:configuration:ConfigurationRecorderRecordingGroup" }, + "recordingMode": { + "$ref": "#/types/aws-native:configuration:ConfigurationRecorderRecordingMode" + }, "roleArn": { "type": "string" } @@ -248730,6 +252177,13 @@ "serviceRole": { "type": "string", "description": "Service linked role created as part of instance creation." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:InstanceTag" + }, + "description": "An array of key-value pairs to apply to this resource." } } } @@ -251532,6 +254986,68 @@ } } }, + "aws-native:dms:getDataProvider": { + "description": "Resource schema for AWS::DMS::DataProvider", + "inputs": { + "properties": { + "dataProviderArn": { + "type": "string", + "description": "The data provider ARN." + } + }, + "required": [ + "dataProviderArn" + ] + }, + "outputs": { + "properties": { + "dataProviderArn": { + "type": "string", + "description": "The data provider ARN." + }, + "dataProviderCreationTime": { + "type": "string", + "description": "The data provider creation time." + }, + "dataProviderName": { + "type": "string", + "description": "The property describes a name to identify the data provider." + }, + "description": { + "type": "string", + "description": "The optional description of the data provider." + }, + "engine": { + "$ref": "#/types/aws-native:dms:DataProviderEngine", + "description": "The property describes a data engine for the data provider." + }, + "settings": { + "oneOf": [ + { + "$ref": "#/types/aws-native:dms:Settings0Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings1Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings2Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings3Properties" + } + ], + "description": "The property identifies the exact type of settings for the data provider." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:DataProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + } + } + }, "aws-native:dms:getEndpoint": { "description": "Resource Type definition for AWS::DMS::Endpoint", "inputs": { @@ -251686,6 +255202,145 @@ } } }, + "aws-native:dms:getInstanceProfile": { + "description": "Resource schema for AWS::DMS::InstanceProfile.", + "inputs": { + "properties": { + "instanceProfileArn": { + "type": "string", + "description": "The property describes an ARN of the instance profile." + } + }, + "required": [ + "instanceProfileArn" + ] + }, + "outputs": { + "properties": { + "availabilityZone": { + "type": "string", + "description": "The property describes an availability zone of the instance profile." + }, + "description": { + "type": "string", + "description": "The optional description of the instance profile." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an ARN of the instance profile." + }, + "instanceProfileCreationTime": { + "type": "string", + "description": "The property describes a creating time of the instance profile." + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes a name for the instance profile." + }, + "kmsKeyArn": { + "type": "string", + "description": "The property describes kms key arn for the instance profile." + }, + "networkType": { + "$ref": "#/types/aws-native:dms:InstanceProfileNetworkType", + "description": "The property describes a network type for the instance profile." + }, + "publiclyAccessible": { + "type": "boolean", + "description": "The property describes the publicly accessible of the instance profile" + }, + "subnetGroupIdentifier": { + "type": "string", + "description": "The property describes a subnet group identifier for the instance profile." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:InstanceProfileTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "vpcSecurityGroups": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The property describes vps security groups for the instance profile." + } + } + } + }, + "aws-native:dms:getMigrationProject": { + "description": "Resource schema for AWS::DMS::MigrationProject", + "inputs": { + "properties": { + "migrationProjectArn": { + "type": "string", + "description": "The property describes an ARN of the migration project." + } + }, + "required": [ + "migrationProjectArn" + ] + }, + "outputs": { + "properties": { + "description": { + "type": "string", + "description": "The optional description of the migration project." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an instance profile arn for the migration project. For read" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes an instance profile name for the migration project. For read" + }, + "migrationProjectArn": { + "type": "string", + "description": "The property describes an ARN of the migration project." + }, + "migrationProjectCreationTime": { + "type": "string", + "description": "The property describes a creating time of the migration project." + }, + "migrationProjectName": { + "type": "string", + "description": "The property describes a name to identify the migration project." + }, + "schemaConversionApplicationAttributes": { + "$ref": "#/types/aws-native:dms:SchemaConversionApplicationAttributesProperties", + "description": "The property describes schema conversion application attributes for the migration project." + }, + "sourceDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes source data provider descriptors for the migration project." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "targetDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes target data provider descriptors for the migration project." + }, + "transformationRules": { + "type": "string", + "description": "The property describes transformation rules for the migration project." + } + } + } + }, "aws-native:dms:getReplicationConfig": { "description": "A replication configuration that you later provide to configure and start a AWS DMS Serverless replication", "inputs": { @@ -251720,10 +255375,6 @@ "$ref": "#/types/aws-native:dms:ReplicationConfigReplicationType", "description": "The type of AWS DMS Serverless replication to provision using this replication configuration" }, - "resourceIdentifier": { - "type": "string", - "description": "A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource" - }, "sourceEndpointArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the source endpoint for this AWS DMS Serverless replication configuration" @@ -252819,12 +256470,12 @@ "description": "Resource Type definition for AWS::EC2::Instance", "inputs": { "properties": { - "id": { + "instanceId": { "type": "string" } }, "required": [ - "id" + "instanceId" ] }, "outputs": { @@ -252856,7 +256507,7 @@ "iamInstanceProfile": { "type": "string" }, - "id": { + "instanceId": { "type": "string" }, "instanceInitiatedShutdownBehavior": { @@ -254163,6 +257814,10 @@ "type": "string", "description": "The primary identifier of the resource generated by the service." }, + "coreNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the core network." + }, "egressOnlyInternetGatewayId": { "type": "string", "description": "The ID of the egress-only internet gateway." @@ -254277,7 +257932,8 @@ "inputs": { "properties": { "id": { - "type": "string" + "type": "string", + "description": "The Security Group Rule Id" } }, "required": [ @@ -254287,10 +257943,12 @@ "outputs": { "properties": { "description": { - "type": "string" + "type": "string", + "description": "Resource Type definition for an egress (outbound) security group rule." }, "id": { - "type": "string" + "type": "string", + "description": "The Security Group Rule Id" } } } @@ -254318,6 +257976,32 @@ } } }, + "aws-native:ec2:getSnapshotBlockPublicAccess": { + "description": "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess", + "inputs": { + "properties": { + "accountId": { + "type": "string", + "description": "The identifier for the specified AWS account." + } + }, + "required": [ + "accountId" + ] + }, + "outputs": { + "properties": { + "accountId": { + "type": "string", + "description": "The identifier for the specified AWS account." + }, + "state": { + "$ref": "#/types/aws-native:ec2:SnapshotBlockPublicAccessState", + "description": "The state of EBS Snapshot Block Public Access." + } + } + } + }, "aws-native:ec2:getSpotFleet": { "description": "Resource Type definition for AWS::EC2::SpotFleet", "inputs": { @@ -256417,6 +260101,9 @@ }, "outputs": { "properties": { + "accessConfig": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfig" + }, "arn": { "type": "string", "description": "The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod." @@ -258645,33 +262332,43 @@ "description": "Resource Type definition for AWS::EventSchemas::Discoverer", "inputs": { "properties": { - "discovererId": { - "type": "string" + "discovererArn": { + "type": "string", + "description": "The ARN of the discoverer." } }, "required": [ - "discovererId" + "discovererArn" ] }, "outputs": { "properties": { "crossAccount": { - "type": "boolean" + "type": "boolean", + "description": "Defines whether event schemas from other accounts are discovered. Default is True." }, "description": { - "type": "string" + "type": "string", + "description": "A description for the discoverer." }, "discovererArn": { - "type": "string" + "type": "string", + "description": "The ARN of the discoverer." }, "discovererId": { - "type": "string" + "type": "string", + "description": "The Id of the discoverer." + }, + "state": { + "type": "string", + "description": "Defines the current state of the discoverer." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:DiscovererTagsEntry" - } + }, + "description": "Tags associated with the resource." } } } @@ -258680,30 +262377,31 @@ "description": "Resource Type definition for AWS::EventSchemas::Registry", "inputs": { "properties": { - "id": { - "type": "string" + "registryArn": { + "type": "string", + "description": "The ARN of the registry." } }, "required": [ - "id" + "registryArn" ] }, "outputs": { "properties": { "description": { - "type": "string" - }, - "id": { - "type": "string" + "type": "string", + "description": "A description of the registry to be created." }, "registryArn": { - "type": "string" + "type": "string", + "description": "The ARN of the registry." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:RegistryTagsEntry" - } + }, + "description": "Tags associated with the resource." } } } @@ -258741,39 +262439,51 @@ "description": "Resource Type definition for AWS::EventSchemas::Schema", "inputs": { "properties": { - "id": { - "type": "string" + "schemaArn": { + "type": "string", + "description": "The ARN of the schema." } }, "required": [ - "id" + "schemaArn" ] }, "outputs": { "properties": { "content": { - "type": "string" + "type": "string", + "description": "The source of the schema definition." }, "description": { - "type": "string" + "type": "string", + "description": "A description of the schema." }, - "id": { - "type": "string" + "lastModified": { + "type": "string", + "description": "The last modified time of the schema." }, "schemaArn": { - "type": "string" + "type": "string", + "description": "The ARN of the schema." }, "schemaVersion": { - "type": "string" + "type": "string", + "description": "The version number of the schema." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:eventschemas:SchemaTagsEntry" - } + }, + "description": "Tags associated with the resource." }, "type": { - "type": "string" + "type": "string", + "description": "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." + }, + "versionCreatedDate": { + "type": "string", + "description": "The date the schema version was created." } } } @@ -259092,6 +262802,9 @@ "description": { "type": "string" }, + "experimentOptions": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptions" + }, "id": { "type": "string" }, @@ -259113,6 +262826,33 @@ } } }, + "aws-native:fis:getTargetAccountConfiguration": { + "description": "Resource schema for AWS::FIS::TargetAccountConfiguration", + "inputs": { + "properties": { + "accountId": { + "type": "string" + }, + "experimentTemplateId": { + "type": "string" + } + }, + "required": [ + "experimentTemplateId", + "accountId" + ] + }, + "outputs": { + "properties": { + "description": { + "type": "string" + }, + "roleArn": { + "type": "string" + } + } + } + }, "aws-native:fms:getNotificationChannel": { "description": "Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs.", "inputs": { @@ -262847,14 +266587,6 @@ }, "outputs": { "properties": { - "groupId": { - "type": "string", - "description": "The unique identifier for a group in the identity store." - }, - "memberId": { - "$ref": "#/types/aws-native:identitystore:GroupMembershipMemberId", - "description": "An object containing the identifier of a group member." - }, "membershipId": { "type": "string", "description": "The identifier for a GroupMembership in the identity store." @@ -262970,6 +266702,10 @@ "type": "string", "description": "The Amazon Resource Name (ARN) of the image." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageId": { "type": "string", "description": "The AMI ID of the EC2 AMI in current region." @@ -263020,6 +266756,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -263047,6 +266787,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags of this image pipeline." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } } } @@ -263206,6 +266953,28 @@ } } }, + "aws-native:imagebuilder:getWorkflow": { + "description": "Resource schema for AWS::ImageBuilder::Workflow", + "inputs": { + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow." + } + }, + "required": [ + "arn" + ] + }, + "outputs": { + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow." + } + } + } + }, "aws-native:index:cidr": { "inputs": { "properties": { @@ -263783,6 +267552,42 @@ } } }, + "aws-native:iot:getCertificateProvider": { + "description": "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider.", + "inputs": { + "properties": { + "certificateProviderName": { + "type": "string" + } + }, + "required": [ + "certificateProviderName" + ] + }, + "outputs": { + "properties": { + "accountDefaultForOperations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderOperation" + } + }, + "arn": { + "type": "string" + }, + "lambdaFunctionArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + } + } + }, "aws-native:iot:getCustomMetric": { "description": "A custom metric published by your devices to Device Defender.", "inputs": { @@ -267797,15 +271602,21 @@ } }, "aws-native:lambda:getEventInvokeConfig": { - "description": "Resource Type definition for AWS::Lambda::EventInvokeConfig", + "description": "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias.", "inputs": { "properties": { - "id": { - "type": "string" + "functionName": { + "type": "string", + "description": "The name of the Lambda function." + }, + "qualifier": { + "type": "string", + "description": "The identifier of a version or alias." } }, "required": [ - "id" + "functionName", + "qualifier" ] }, "outputs": { @@ -267813,14 +271624,13 @@ "destinationConfig": { "$ref": "#/types/aws-native:lambda:EventInvokeConfigDestinationConfig" }, - "id": { - "type": "string" - }, "maximumEventAgeInSeconds": { - "type": "integer" + "type": "integer", + "description": "The maximum age of a request that Lambda sends to a function for processing." }, "maximumRetryAttempts": { - "type": "integer" + "type": "integer", + "description": "The maximum number of times to retry when the function returns an error." } } } @@ -269261,12 +273071,12 @@ } }, "aws-native:logs:getDelivery": { - "description": "Resource Type definition for AWS::Logs::Delivery.", + "description": "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html).", "inputs": { "properties": { "deliveryId": { "type": "string", - "description": "The value of the Id property for this object." + "description": "The unique ID that identifies this delivery in your account." } }, "required": [ @@ -269277,33 +273087,33 @@ "properties": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery." }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "deliveryId": { "type": "string", - "description": "The value of the Id property for this object." + "description": "The unique ID that identifies this delivery in your account." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryTag" }, - "description": "The value of the Tags property for this object." + "description": "The tags that have been assigned to this delivery." } } } }, "aws-native:logs:getDeliveryDestination": { - "description": "Resource Type definition for AWS::Logs::DeliveryDestination", + "description": "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations.", "inputs": { "properties": { "name": { "type": "string", - "description": "The unique name of the Delivery Destination." + "description": "The name of this delivery destination." } }, "required": [ @@ -269314,7 +273124,7 @@ "properties": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery destination." }, "deliveryDestinationPolicy": { "$ref": "pulumi.json#/Any", @@ -269322,20 +273132,20 @@ }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryDestinationTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery destination." } } } }, "aws-native:logs:getDeliverySource": { - "description": "Resource Type definition for AWS::Logs::DeliverySource.", + "description": " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html).", "inputs": { "properties": { "name": { @@ -269351,7 +273161,7 @@ "properties": { "arn": { "type": "string", - "description": "The ARN of the Aqueduct Source." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery source." }, "logType": { "type": "string", @@ -269362,18 +273172,18 @@ "items": { "type": "string" }, - "description": "List of ARN of the resource that will be sending the logs" + "description": "This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array." }, "service": { "type": "string", - "description": "The service generating the log" + "description": "The AWS service that is sending logs." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliverySourceTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery source." } } } @@ -274057,6 +277867,9 @@ "domainEndpointOptions": { "$ref": "#/types/aws-native:opensearchservice:DomainEndpointOptions" }, + "domainEndpointV2": { + "type": "string" + }, "domainEndpoints": { "$ref": "pulumi.json#/Any" }, @@ -274072,6 +277885,9 @@ "id": { "type": "string" }, + "ipAddressType": { + "type": "string" + }, "logPublishingOptions": { "$ref": "pulumi.json#/Any" }, @@ -274775,6 +278591,12 @@ }, "outputs": { "properties": { + "bufferOptions": { + "$ref": "#/types/aws-native:osis:PipelineBufferOptions" + }, + "encryptionAtRestOptions": { + "$ref": "#/types/aws-native:osis:PipelineEncryptionAtRestOptions" + }, "ingestEndpointUrls": { "type": "array", "items": { @@ -279887,13 +283709,13 @@ "description": "Resource schema for AWS::Route53Resolver::ResolverConfig.", "inputs": { "properties": { - "id": { + "resourceId": { "type": "string", - "description": "Id" + "description": "ResourceId" } }, "required": [ - "id" + "resourceId" ] }, "outputs": { @@ -280602,7 +284424,7 @@ "properties": { "bucketName": { "type": "string", - "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." } }, "required": [ @@ -280978,6 +284800,10 @@ }, "outputs": { "properties": { + "appNetworkAccessType": { + "$ref": "#/types/aws-native:sagemaker:DomainAppNetworkAccessType", + "description": "Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly." + }, "appSecurityGroupManagement": { "$ref": "#/types/aws-native:sagemaker:DomainAppSecurityGroupManagement", "description": "The entity that creates and manages the required security groups for inter-app communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided." @@ -281009,10 +284835,21 @@ "type": "string", "description": "The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app." }, + "singleSignOnApplicationArn": { + "type": "string", + "description": "The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023." + }, "singleSignOnManagedApplicationInstanceId": { "type": "string", "description": "The SSO managed application instance ID." }, + "subnetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The VPC subnets that Studio uses for communication." + }, "url": { "type": "string", "description": "The URL to the created domain." @@ -282255,33 +286092,38 @@ } }, "aws-native:securityhub:getHub": { - "description": "Resource Type definition for AWS::SecurityHub::Hub", + "description": "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n", "inputs": { "properties": { - "id": { - "type": "string" + "arn": { + "type": "string", + "description": "An ARN is automatically created for the customer." } }, "required": [ - "id" + "arn" ] }, "outputs": { "properties": { + "arn": { + "type": "string", + "description": "An ARN is automatically created for the customer." + }, "autoEnableControls": { - "type": "boolean" + "type": "boolean", + "description": "Whether to automatically enable new controls when they are added to standards that are enabled" }, "controlFindingGenerator": { - "type": "string" - }, - "enableDefaultStandards": { - "type": "boolean" + "type": "string", + "description": "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards." }, - "id": { - "type": "string" + "subscribedAt": { + "type": "string", + "description": "The date and time when Security Hub was enabled in the account." }, "tags": { - "$ref": "pulumi.json#/Any" + "$ref": "#/types/aws-native:securityhub:HubTags" } } } @@ -282840,6 +286682,18 @@ }, "outputs": { "properties": { + "applicationName": { + "type": "string", + "description": "The name of the application. " + }, + "applicationTagKey": { + "type": "string", + "description": "The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value." + }, + "applicationTagValue": { + "type": "string", + "description": "The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. " + }, "arn": { "type": "string" }, @@ -283669,6 +287523,9 @@ "region": { "type": "string" }, + "replayPolicy": { + "$ref": "pulumi.json#/Any" + }, "subscriptionRoleArn": { "type": "string" } @@ -284017,9 +287874,6 @@ "$ref": "#/types/aws-native:ssm:AssociationTarget" }, "description": "The targets that the SSM document sends commands to." - }, - "waitForSuccessTimeoutSeconds": { - "type": "integer" } } } diff --git a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt index 9cc84229cd..04394f3d99 100644 --- a/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt +++ b/provider/cmd/pulumi-gen-aws-native/deprecated-types.txt @@ -1,7 +1,6 @@ AWS::Cognito::IdentityPool AWS::GameCast::Application AWS::GameCast::StreamGroup -AWS::Lambda::EventInvokeConfig AWS::SNS::TopicPolicy AWSQS::EKS::Cluster AWSQS::Kubernetes::Get diff --git a/provider/cmd/pulumi-gen-aws-native/supported-types.txt b/provider/cmd/pulumi-gen-aws-native/supported-types.txt index 710ba0fef3..aebef19eaa 100644 --- a/provider/cmd/pulumi-gen-aws-native/supported-types.txt +++ b/provider/cmd/pulumi-gen-aws-native/supported-types.txt @@ -82,6 +82,10 @@ AWS::AutoScaling::LifecycleHook AWS::AutoScaling::ScalingPolicy AWS::AutoScaling::ScheduledAction AWS::AutoScaling::WarmPool +AWS::B2BI::Capability +AWS::B2BI::Partnership +AWS::B2BI::Profile +AWS::B2BI::Transformer AWS::Backup::BackupPlan AWS::Backup::BackupSelection AWS::Backup::BackupVault @@ -91,9 +95,12 @@ AWS::Backup::RestoreTestingPlan AWS::Backup::RestoreTestingSelection AWS::BackupGateway::Hypervisor AWS::Batch::ComputeEnvironment +AWS::Batch::JobDefinition AWS::Batch::JobQueue AWS::Batch::SchedulingPolicy AWS::Budgets::BudgetsAction +AWS::CE::AnomalyMonitor +AWS::CE::AnomalySubscription AWS::CE::CostCategory AWS::Cassandra::Keyspace AWS::Cassandra::Table @@ -193,6 +200,9 @@ AWS::CustomerProfiles::Domain AWS::CustomerProfiles::EventStream AWS::CustomerProfiles::Integration AWS::CustomerProfiles::ObjectType +AWS::DMS::DataProvider +AWS::DMS::InstanceProfile +AWS::DMS::MigrationProject AWS::DMS::ReplicationConfig AWS::DataBrew::Dataset AWS::DataBrew::Job @@ -272,6 +282,8 @@ AWS::EC2::PlacementGroup AWS::EC2::PrefixList AWS::EC2::Route AWS::EC2::RouteTable +AWS::EC2::SecurityGroupEgress +AWS::EC2::SnapshotBlockPublicAccess AWS::EC2::SpotFleet AWS::EC2::Subnet AWS::EC2::SubnetCidrBlock @@ -348,7 +360,10 @@ AWS::ElasticLoadBalancingV2::TrustStoreRevocation AWS::EntityResolution::IdMappingWorkflow AWS::EntityResolution::MatchingWorkflow AWS::EntityResolution::SchemaMapping +AWS::EventSchemas::Discoverer +AWS::EventSchemas::Registry AWS::EventSchemas::RegistryPolicy +AWS::EventSchemas::Schema AWS::Events::ApiDestination AWS::Events::Archive AWS::Events::Connection @@ -361,6 +376,7 @@ AWS::Evidently::Launch AWS::Evidently::Project AWS::Evidently::Segment AWS::FIS::ExperimentTemplate +AWS::FIS::TargetAccountConfiguration AWS::FMS::NotificationChannel AWS::FMS::Policy AWS::FMS::ResourceSet @@ -433,6 +449,7 @@ AWS::ImageBuilder::ImagePipeline AWS::ImageBuilder::ImageRecipe AWS::ImageBuilder::InfrastructureConfiguration AWS::ImageBuilder::LifecyclePolicy +AWS::ImageBuilder::Workflow AWS::Inspector::AssessmentTarget AWS::Inspector::AssessmentTemplate AWS::Inspector::ResourceGroup @@ -443,6 +460,7 @@ AWS::IoT::Authorizer AWS::IoT::BillingGroup AWS::IoT::CACertificate AWS::IoT::Certificate +AWS::IoT::CertificateProvider AWS::IoT::CustomMetric AWS::IoT::Dimension AWS::IoT::DomainConfiguration @@ -812,6 +830,7 @@ AWS::Scheduler::Schedule AWS::Scheduler::ScheduleGroup AWS::SecretsManager::Secret AWS::SecurityHub::AutomationRule +AWS::SecurityHub::Hub AWS::SecurityHub::Standard AWS::ServiceCatalog::CloudFormationProvisionedProduct AWS::ServiceCatalog::ServiceAction diff --git a/provider/cmd/pulumi-resource-aws-native/metadata.json b/provider/cmd/pulumi-resource-aws-native/metadata.json index 3d192c028d..4e3ac9e1eb 100644 --- a/provider/cmd/pulumi-resource-aws-native/metadata.json +++ b/provider/cmd/pulumi-resource-aws-native/metadata.json @@ -7258,6 +7258,326 @@ "autoScalingGroupName" ] }, + "aws-native:b2bi:Capability": { + "cf": "AWS::B2BI::Capability", + "inputs": { + "configuration": { + "$ref": "#/types/aws-native:b2bi:CapabilityConfigurationProperties" + }, + "instructionsDocuments": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + } + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityTag" + } + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityType" + } + }, + "outputs": { + "capabilityArn": { + "type": "string" + }, + "capabilityId": { + "type": "string" + }, + "configuration": { + "$ref": "#/types/aws-native:b2bi:CapabilityConfigurationProperties" + }, + "createdAt": { + "type": "string" + }, + "instructionsDocuments": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + } + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityTag" + } + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityType", + "replaceOnChanges": true + } + }, + "autoNamingSpec": { + "sdkName": "name", + "minLength": 1, + "maxLength": 254 + }, + "required": [ + "configuration", + "type" + ], + "createOnly": [ + "type" + ] + }, + "aws-native:b2bi:Partnership": { + "cf": "AWS::B2BI::Partnership", + "inputs": { + "capabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "email": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "profileId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:PartnershipTag" + } + } + }, + "outputs": { + "capabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "createdAt": { + "type": "string" + }, + "email": { + "type": "string", + "replaceOnChanges": true + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "partnershipArn": { + "type": "string" + }, + "partnershipId": { + "type": "string" + }, + "phone": { + "type": "string", + "replaceOnChanges": true + }, + "profileId": { + "type": "string", + "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:PartnershipTag" + } + }, + "tradingPartnerId": { + "type": "string" + } + }, + "autoNamingSpec": { + "sdkName": "name", + "minLength": 1, + "maxLength": 254 + }, + "required": [ + "email", + "profileId" + ], + "createOnly": [ + "email", + "phone", + "profileId" + ] + }, + "aws-native:b2bi:Profile": { + "cf": "AWS::B2BI::Profile", + "inputs": { + "businessName": { + "type": "string" + }, + "email": { + "type": "string" + }, + "logging": { + "$ref": "#/types/aws-native:b2bi:ProfileLogging" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:ProfileTag" + } + } + }, + "outputs": { + "businessName": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "email": { + "type": "string" + }, + "logGroupName": { + "type": "string" + }, + "logging": { + "$ref": "#/types/aws-native:b2bi:ProfileLogging", + "replaceOnChanges": true + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "profileArn": { + "type": "string" + }, + "profileId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:ProfileTag" + } + } + }, + "autoNamingSpec": { + "sdkName": "name", + "minLength": 1, + "maxLength": 254 + }, + "required": [ + "businessName", + "logging", + "phone" + ], + "createOnly": [ + "logging" + ] + }, + "aws-native:b2bi:Transformer": { + "cf": "AWS::B2BI::Transformer", + "inputs": { + "ediType": { + "$ref": "#/types/aws-native:b2bi:TransformerEdiTypeProperties" + }, + "fileFormat": { + "$ref": "#/types/aws-native:b2bi:TransformerFileFormat" + }, + "mappingTemplate": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sampleDocument": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:b2bi:TransformerStatus" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:TransformerTag" + } + } + }, + "outputs": { + "createdAt": { + "type": "string" + }, + "ediType": { + "$ref": "#/types/aws-native:b2bi:TransformerEdiTypeProperties" + }, + "fileFormat": { + "$ref": "#/types/aws-native:b2bi:TransformerFileFormat" + }, + "mappingTemplate": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sampleDocument": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:b2bi:TransformerStatus" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:TransformerTag" + } + }, + "transformerArn": { + "type": "string" + }, + "transformerId": { + "type": "string" + } + }, + "autoNamingSpec": { + "sdkName": "name", + "minLength": 1, + "maxLength": 254 + }, + "required": [ + "ediType", + "fileFormat", + "mappingTemplate", + "status" + ] + }, "aws-native:backup:BackupPlan": { "cf": "AWS::Backup::BackupPlan", "inputs": { @@ -7859,6 +8179,141 @@ "updatePolicy" ] }, + "aws-native:batch:JobDefinition": { + "cf": "AWS::Batch::JobDefinition", + "inputs": { + "containerProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties" + }, + "eksProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksProperties" + }, + "jobDefinitionName": { + "type": "string" + }, + "nodeProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionNodeProperties" + }, + "parameters": { + "$ref": "pulumi.json#/Any" + }, + "platformCapabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "propagateTags": { + "type": "boolean" + }, + "retryStrategy": { + "$ref": "#/types/aws-native:batch:JobDefinitionRetryStrategy" + }, + "schedulingPriority": { + "type": "integer" + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "A key-value pair to associate with a resource." + }, + "timeout": { + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout" + }, + "type": { + "type": "string" + } + }, + "outputs": { + "containerOrchestrationType": { + "type": "string" + }, + "containerProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties", + "replaceOnChanges": true + }, + "eksProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksProperties", + "replaceOnChanges": true + }, + "jobDefinitionArn": { + "type": "string" + }, + "jobDefinitionName": { + "type": "string", + "replaceOnChanges": true + }, + "nodeProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionNodeProperties", + "replaceOnChanges": true + }, + "parameters": { + "$ref": "pulumi.json#/Any", + "replaceOnChanges": true + }, + "platformCapabilities": { + "type": "array", + "items": { + "type": "string" + }, + "replaceOnChanges": true + }, + "propagateTags": { + "type": "boolean", + "replaceOnChanges": true + }, + "retryStrategy": { + "$ref": "#/types/aws-native:batch:JobDefinitionRetryStrategy", + "replaceOnChanges": true + }, + "revision": { + "type": "integer" + }, + "schedulingPriority": { + "type": "integer", + "replaceOnChanges": true + }, + "status": { + "type": "string" + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "A key-value pair to associate with a resource." + }, + "timeout": { + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout", + "replaceOnChanges": true + }, + "type": { + "type": "string", + "replaceOnChanges": true + } + }, + "autoNamingSpec": { + "sdkName": "jobDefinitionName", + "maxLength": 128 + }, + "required": [ + "type" + ], + "createOnly": [ + "containerProperties", + "eksProperties", + "jobDefinitionName", + "nodeProperties", + "parameters", + "platformCapabilities", + "propagateTags", + "retryStrategy", + "schedulingPriority", + "timeout", + "type" + ], + "writeOnly": [ + "containerProperties/InstanceType", + "nodeProperties/NodeRangeProperties/*/Container/FargatePlatformConfiguration/PlatformVersion", + "nodeProperties/NodeRangeProperties/*/Container/NetworkConfiguration/AssignPublicIp" + ] + }, "aws-native:batch:JobQueue": { "cf": "AWS::Batch::JobQueue", "inputs": { @@ -8224,6 +8679,192 @@ "tableName" ] }, + "aws-native:ce:AnomalyMonitor": { + "cf": "AWS::CE::AnomalyMonitor", + "inputs": { + "monitorDimension": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorMonitorDimension", + "description": "The dimensions to evaluate" + }, + "monitorName": { + "type": "string", + "description": "The name of the monitor." + }, + "monitorSpecification": { + "type": "string" + }, + "monitorType": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorMonitorType" + }, + "resourceTags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorResourceTag" + }, + "description": "Tags to assign to monitor." + } + }, + "outputs": { + "creationDate": { + "type": "string", + "description": "The date when the monitor was created. " + }, + "dimensionalValueCount": { + "type": "integer", + "description": "The value for evaluated dimensions." + }, + "lastEvaluatedDate": { + "type": "string", + "description": "The date when the monitor last evaluated for anomalies." + }, + "lastUpdatedDate": { + "type": "string", + "description": "The date when the monitor was last updated." + }, + "monitorArn": { + "type": "string" + }, + "monitorDimension": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorMonitorDimension", + "description": "The dimensions to evaluate", + "replaceOnChanges": true + }, + "monitorName": { + "type": "string", + "description": "The name of the monitor." + }, + "monitorSpecification": { + "type": "string", + "replaceOnChanges": true + }, + "monitorType": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorMonitorType", + "replaceOnChanges": true + }, + "resourceTags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorResourceTag" + }, + "description": "Tags to assign to monitor.", + "replaceOnChanges": true + } + }, + "required": [ + "monitorName", + "monitorType" + ], + "createOnly": [ + "monitorDimension", + "monitorSpecification", + "monitorType", + "resourceTags" + ], + "writeOnly": [ + "resourceTags" + ] + }, + "aws-native:ce:AnomalySubscription": { + "cf": "AWS::CE::AnomalySubscription", + "inputs": { + "frequency": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionFrequency", + "description": "The frequency at which anomaly reports are sent over email. " + }, + "monitorArnList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of cost anomaly monitors." + }, + "resourceTags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionResourceTag" + }, + "description": "Tags to assign to subscription." + }, + "subscribers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriber" + }, + "description": "A list of subscriber" + }, + "subscriptionName": { + "type": "string", + "description": "The name of the subscription." + }, + "threshold": { + "type": "number", + "description": "The dollar value that triggers a notification if the threshold is exceeded. " + }, + "thresholdExpression": { + "type": "string", + "description": "An Expression object in JSON String format used to specify the anomalies that you want to generate alerts for." + } + }, + "outputs": { + "accountId": { + "type": "string", + "description": "The accountId" + }, + "frequency": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionFrequency", + "description": "The frequency at which anomaly reports are sent over email. " + }, + "monitorArnList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of cost anomaly monitors." + }, + "resourceTags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionResourceTag" + }, + "description": "Tags to assign to subscription.", + "replaceOnChanges": true + }, + "subscribers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriber" + }, + "description": "A list of subscriber" + }, + "subscriptionArn": { + "type": "string" + }, + "subscriptionName": { + "type": "string", + "description": "The name of the subscription." + }, + "threshold": { + "type": "number", + "description": "The dollar value that triggers a notification if the threshold is exceeded. " + }, + "thresholdExpression": { + "type": "string", + "description": "An Expression object in JSON String format used to specify the anomalies that you want to generate alerts for." + } + }, + "required": [ + "frequency", + "monitorArnList", + "subscribers", + "subscriptionName" + ], + "createOnly": [ + "resourceTags" + ], + "writeOnly": [ + "resourceTags" + ] + }, "aws-native:ce:CostCategory": { "cf": "AWS::CE::CostCategory", "inputs": { @@ -8635,6 +9276,9 @@ "$ref": "#/types/aws-native:cleanrooms:CollaborationMemberAbility" } }, + "creatorPaymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration" + }, "dataEncryptionMetadata": { "$ref": "#/types/aws-native:cleanrooms:CollaborationDataEncryptionMetadata" }, @@ -8679,6 +9323,10 @@ }, "replaceOnChanges": true }, + "creatorPaymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration", + "replaceOnChanges": true + }, "dataEncryptionMetadata": { "$ref": "#/types/aws-native:cleanrooms:CollaborationDataEncryptionMetadata", "replaceOnChanges": true @@ -8723,6 +9371,7 @@ "createOnly": [ "creatorDisplayName", "creatorMemberAbilities", + "creatorPaymentConfiguration", "dataEncryptionMetadata", "members", "queryLogStatus" @@ -8904,6 +9553,9 @@ "defaultResultConfiguration": { "$ref": "#/types/aws-native:cleanrooms:MembershipProtectedQueryResultConfiguration" }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:MembershipPaymentConfiguration" + }, "queryLogStatus": { "$ref": "#/types/aws-native:cleanrooms:MembershipQueryLogStatus" }, @@ -8935,6 +9587,9 @@ "membershipIdentifier": { "type": "string" }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:MembershipPaymentConfiguration" + }, "queryLogStatus": { "$ref": "#/types/aws-native:cleanrooms:MembershipQueryLogStatus" }, @@ -10311,71 +10966,87 @@ "type": "string", "description": "The mode that the event data store will use to charge for event storage." }, - "ingestionEnabled": { - "type": "boolean", - "description": "Indicates whether the event data store is ingesting events." - }, - "insightSelectors": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cloudtrail:EventDataStoreInsightSelector" - }, - "description": "Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store." - }, - "insightsDestination": { - "type": "string", - "description": "Specifies the ARN of the event data store that will collect Insights events. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store" - }, - "kmsKeyId": { - "type": "string", - "description": "Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The value can be an alias name prefixed by 'alias/', a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier." - }, - "multiRegionEnabled": { - "type": "boolean", - "description": "Indicates whether the event data store includes events from all regions, or only from the region in which it was created." - }, - "name": { - "type": "string", - "description": "The name of the event data store." - }, - "organizationEnabled": { - "type": "boolean", - "description": "Indicates that an event data store is collecting logged events for an organization." - }, - "retentionPeriod": { - "type": "integer", - "description": "The retention period, in days." - }, - "tags": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cloudtrail:EventDataStoreTag" - } - }, - "terminationProtectionEnabled": { + "federationEnabled": { "type": "boolean", - "description": "Indicates whether the event data store is protected from termination." - } - }, - "outputs": { - "advancedEventSelectors": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:cloudtrail:EventDataStoreAdvancedEventSelector" - }, - "description": "The advanced event selectors that were used to select events for the data store." - }, - "billingMode": { - "type": "string", - "description": "The mode that the event data store will use to charge for event storage." + "description": "Indicates whether federation is enabled on an event data store." }, - "createdTimestamp": { + "federationRoleArn": { "type": "string", - "description": "The timestamp of the event data store's creation." - }, - "eventDataStoreArn": { - "type": "string", - "description": "The ARN of the event data store." + "description": "The ARN of the role used for event data store federation." + }, + "ingestionEnabled": { + "type": "boolean", + "description": "Indicates whether the event data store is ingesting events." + }, + "insightSelectors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cloudtrail:EventDataStoreInsightSelector" + }, + "description": "Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store." + }, + "insightsDestination": { + "type": "string", + "description": "Specifies the ARN of the event data store that will collect Insights events. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store" + }, + "kmsKeyId": { + "type": "string", + "description": "Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The value can be an alias name prefixed by 'alias/', a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier." + }, + "multiRegionEnabled": { + "type": "boolean", + "description": "Indicates whether the event data store includes events from all regions, or only from the region in which it was created." + }, + "name": { + "type": "string", + "description": "The name of the event data store." + }, + "organizationEnabled": { + "type": "boolean", + "description": "Indicates that an event data store is collecting logged events for an organization." + }, + "retentionPeriod": { + "type": "integer", + "description": "The retention period, in days." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cloudtrail:EventDataStoreTag" + } + }, + "terminationProtectionEnabled": { + "type": "boolean", + "description": "Indicates whether the event data store is protected from termination." + } + }, + "outputs": { + "advancedEventSelectors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:cloudtrail:EventDataStoreAdvancedEventSelector" + }, + "description": "The advanced event selectors that were used to select events for the data store." + }, + "billingMode": { + "type": "string", + "description": "The mode that the event data store will use to charge for event storage." + }, + "createdTimestamp": { + "type": "string", + "description": "The timestamp of the event data store's creation." + }, + "eventDataStoreArn": { + "type": "string", + "description": "The ARN of the event data store." + }, + "federationEnabled": { + "type": "boolean", + "description": "Indicates whether federation is enabled on an event data store." + }, + "federationRoleArn": { + "type": "string", + "description": "The ARN of the role used for event data store federation." }, "ingestionEnabled": { "type": "boolean", @@ -11378,6 +12049,10 @@ "trafficRoutingConfig": { "$ref": "#/types/aws-native:codedeploy:DeploymentConfigTrafficRoutingConfig", "description": "The configuration that specifies how the deployment traffic is routed." + }, + "zonalConfig": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigZonalConfig", + "description": "The zonal deployment config that specifies how the zonal deployment behaves" } }, "outputs": { @@ -11400,6 +12075,11 @@ "$ref": "#/types/aws-native:codedeploy:DeploymentConfigTrafficRoutingConfig", "description": "The configuration that specifies how the deployment traffic is routed.", "replaceOnChanges": true + }, + "zonalConfig": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigZonalConfig", + "description": "The zonal deployment config that specifies how the zonal deployment behaves", + "replaceOnChanges": true } }, "autoNamingSpec": { @@ -11409,7 +12089,8 @@ "computePlatform", "deploymentConfigName", "minimumHealthyHosts", - "trafficRoutingConfig" + "trafficRoutingConfig", + "zonalConfig" ] }, "aws-native:codeguruprofiler:ProfilingGroup": { @@ -13814,6 +14495,13 @@ "instanceAlias": { "type": "string", "description": "Alias of the new directory created as part of new instance creation." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:InstanceTag" + }, + "description": "An array of key-value pairs to apply to this resource." } }, "outputs": { @@ -13851,6 +14539,13 @@ "serviceRole": { "type": "string", "description": "Service linked role created as part of instance creation." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:InstanceTag" + }, + "description": "An array of key-value pairs to apply to this resource." } }, "required": [ @@ -18464,6 +19159,372 @@ "password" ] }, + "aws-native:dms:DataProvider": { + "cf": "AWS::DMS::DataProvider", + "inputs": { + "dataProviderIdentifier": { + "type": "string", + "description": "The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn" + }, + "dataProviderName": { + "type": "string", + "description": "The property describes a name to identify the data provider." + }, + "description": { + "type": "string", + "description": "The optional description of the data provider." + }, + "engine": { + "$ref": "#/types/aws-native:dms:DataProviderEngine", + "description": "The property describes a data engine for the data provider." + }, + "exactSettings": { + "type": "boolean", + "description": "The property describes the exact settings which can be modified" + }, + "settings": { + "oneOf": [ + { + "$ref": "#/types/aws-native:dms:Settings0Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings1Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings2Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings3Properties" + } + ], + "description": "The property identifies the exact type of settings for the data provider." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:DataProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "outputs": { + "dataProviderArn": { + "type": "string", + "description": "The data provider ARN." + }, + "dataProviderCreationTime": { + "type": "string", + "description": "The data provider creation time." + }, + "dataProviderIdentifier": { + "type": "string", + "description": "The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn" + }, + "dataProviderName": { + "type": "string", + "description": "The property describes a name to identify the data provider." + }, + "description": { + "type": "string", + "description": "The optional description of the data provider." + }, + "engine": { + "$ref": "#/types/aws-native:dms:DataProviderEngine", + "description": "The property describes a data engine for the data provider." + }, + "exactSettings": { + "type": "boolean", + "description": "The property describes the exact settings which can be modified" + }, + "settings": { + "oneOf": [ + { + "$ref": "#/types/aws-native:dms:Settings0Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings1Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings2Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings3Properties" + } + ], + "description": "The property identifies the exact type of settings for the data provider." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:DataProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "autoNamingSpec": { + "sdkName": "dataProviderName", + "minLength": 1, + "maxLength": 255 + }, + "required": [ + "engine" + ], + "writeOnly": [ + "dataProviderIdentifier", + "exactSettings" + ] + }, + "aws-native:dms:InstanceProfile": { + "cf": "AWS::DMS::InstanceProfile", + "inputs": { + "availabilityZone": { + "type": "string", + "description": "The property describes an availability zone of the instance profile." + }, + "description": { + "type": "string", + "description": "The optional description of the instance profile." + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes a name for the instance profile." + }, + "kmsKeyArn": { + "type": "string", + "description": "The property describes kms key arn for the instance profile." + }, + "networkType": { + "$ref": "#/types/aws-native:dms:InstanceProfileNetworkType", + "description": "The property describes a network type for the instance profile." + }, + "publiclyAccessible": { + "type": "boolean", + "description": "The property describes the publicly accessible of the instance profile" + }, + "subnetGroupIdentifier": { + "type": "string", + "description": "The property describes a subnet group identifier for the instance profile." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:InstanceProfileTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "vpcSecurityGroups": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The property describes vps security groups for the instance profile." + } + }, + "outputs": { + "availabilityZone": { + "type": "string", + "description": "The property describes an availability zone of the instance profile." + }, + "description": { + "type": "string", + "description": "The optional description of the instance profile." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an ARN of the instance profile." + }, + "instanceProfileCreationTime": { + "type": "string", + "description": "The property describes a creating time of the instance profile." + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes a name for the instance profile." + }, + "kmsKeyArn": { + "type": "string", + "description": "The property describes kms key arn for the instance profile." + }, + "networkType": { + "$ref": "#/types/aws-native:dms:InstanceProfileNetworkType", + "description": "The property describes a network type for the instance profile." + }, + "publiclyAccessible": { + "type": "boolean", + "description": "The property describes the publicly accessible of the instance profile" + }, + "subnetGroupIdentifier": { + "type": "string", + "description": "The property describes a subnet group identifier for the instance profile." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:InstanceProfileTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "vpcSecurityGroups": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The property describes vps security groups for the instance profile." + } + }, + "autoNamingSpec": { + "sdkName": "instanceProfileName", + "minLength": 1, + "maxLength": 255 + }, + "writeOnly": [ + "instanceProfileIdentifier" + ] + }, + "aws-native:dms:MigrationProject": { + "cf": "AWS::DMS::MigrationProject", + "inputs": { + "description": { + "type": "string", + "description": "The optional description of the migration project." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an instance profile arn for the migration project. For read" + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an instance profile identifier for the migration project. For create" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes an instance profile name for the migration project. For read" + }, + "migrationProjectCreationTime": { + "type": "string", + "description": "The property describes a creating time of the migration project." + }, + "migrationProjectIdentifier": { + "type": "string", + "description": "The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn" + }, + "migrationProjectName": { + "type": "string", + "description": "The property describes a name to identify the migration project." + }, + "schemaConversionApplicationAttributes": { + "$ref": "#/types/aws-native:dms:SchemaConversionApplicationAttributesProperties", + "description": "The property describes schema conversion application attributes for the migration project." + }, + "sourceDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes source data provider descriptors for the migration project." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "targetDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes target data provider descriptors for the migration project." + }, + "transformationRules": { + "type": "string", + "description": "The property describes transformation rules for the migration project." + } + }, + "outputs": { + "description": { + "type": "string", + "description": "The optional description of the migration project." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an instance profile arn for the migration project. For read" + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an instance profile identifier for the migration project. For create" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes an instance profile name for the migration project. For read" + }, + "migrationProjectArn": { + "type": "string", + "description": "The property describes an ARN of the migration project." + }, + "migrationProjectCreationTime": { + "type": "string", + "description": "The property describes a creating time of the migration project." + }, + "migrationProjectIdentifier": { + "type": "string", + "description": "The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn" + }, + "migrationProjectName": { + "type": "string", + "description": "The property describes a name to identify the migration project." + }, + "schemaConversionApplicationAttributes": { + "$ref": "#/types/aws-native:dms:SchemaConversionApplicationAttributesProperties", + "description": "The property describes schema conversion application attributes for the migration project." + }, + "sourceDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes source data provider descriptors for the migration project." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "targetDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes target data provider descriptors for the migration project." + }, + "transformationRules": { + "type": "string", + "description": "The property describes transformation rules for the migration project." + } + }, + "autoNamingSpec": { + "sdkName": "migrationProjectName", + "minLength": 1, + "maxLength": 255 + }, + "writeOnly": [ + "instanceProfileIdentifier", + "migrationProjectIdentifier", + "sourceDataProviderDescriptors/*/DataProviderIdentifier", + "targetDataProviderDescriptors/*/DataProviderIdentifier" + ] + }, "aws-native:dms:ReplicationConfig": { "cf": "AWS::DMS::ReplicationConfig", "inputs": { @@ -18536,7 +19597,8 @@ }, "resourceIdentifier": { "type": "string", - "description": "A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource" + "description": "A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource", + "replaceOnChanges": true }, "sourceEndpointArn": { "type": "string", @@ -18561,7 +19623,10 @@ "type": "string", "description": "The Amazon Resource Name (ARN) of the target endpoint for this AWS DMS Serverless replication configuration" } - } + }, + "createOnly": [ + "resourceIdentifier" + ] }, "aws-native:docdbelastic:Cluster": { "cf": "AWS::DocDBElastic::Cluster", @@ -22011,6 +23076,10 @@ "type": "string", "description": "The ID of the carrier gateway." }, + "coreNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the core network." + }, "destinationCidrBlock": { "type": "string", "description": "The IPv4 CIDR block used for the destination match." @@ -22073,6 +23142,10 @@ "type": "string", "description": "The primary identifier of the resource generated by the service." }, + "coreNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the core network." + }, "destinationCidrBlock": { "type": "string", "description": "The IPv4 CIDR block used for the destination match.", @@ -22180,6 +23253,129 @@ "vpcId" ] }, + "aws-native:ec2:SecurityGroupEgress": { + "cf": "AWS::EC2::SecurityGroupEgress", + "inputs": { + "cidrIp": { + "type": "string", + "description": "The IPv4 ranges" + }, + "cidrIpv6": { + "type": "string", + "description": "[VPC only] The IPv6 ranges" + }, + "description": { + "type": "string", + "description": "Resource Type definition for an egress (outbound) security group rule." + }, + "destinationPrefixListId": { + "type": "string", + "description": "[EC2-VPC only] The ID of a prefix list." + }, + "destinationSecurityGroupId": { + "type": "string", + "description": "You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6)." + }, + "fromPort": { + "type": "integer", + "description": "The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes." + }, + "groupId": { + "type": "string", + "description": "The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID." + }, + "ipProtocol": { + "type": "string", + "description": "[VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed." + }, + "toPort": { + "type": "integer", + "description": "The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes." + } + }, + "outputs": { + "cidrIp": { + "type": "string", + "description": "The IPv4 ranges", + "replaceOnChanges": true + }, + "cidrIpv6": { + "type": "string", + "description": "[VPC only] The IPv6 ranges", + "replaceOnChanges": true + }, + "description": { + "type": "string", + "description": "Resource Type definition for an egress (outbound) security group rule." + }, + "destinationPrefixListId": { + "type": "string", + "description": "[EC2-VPC only] The ID of a prefix list.", + "replaceOnChanges": true + }, + "destinationSecurityGroupId": { + "type": "string", + "description": "You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6).", + "replaceOnChanges": true + }, + "fromPort": { + "type": "integer", + "description": "The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.", + "replaceOnChanges": true + }, + "groupId": { + "type": "string", + "description": "The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.", + "replaceOnChanges": true + }, + "ipProtocol": { + "type": "string", + "description": "[VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed.", + "replaceOnChanges": true + }, + "toPort": { + "type": "integer", + "description": "The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.", + "replaceOnChanges": true + } + }, + "required": [ + "groupId", + "ipProtocol" + ], + "createOnly": [ + "cidrIp", + "cidrIpv6", + "destinationPrefixListId", + "destinationSecurityGroupId", + "fromPort", + "groupId", + "ipProtocol", + "toPort" + ] + }, + "aws-native:ec2:SnapshotBlockPublicAccess": { + "cf": "AWS::EC2::SnapshotBlockPublicAccess", + "inputs": { + "state": { + "$ref": "#/types/aws-native:ec2:SnapshotBlockPublicAccessState", + "description": "The state of EBS Snapshot Block Public Access." + } + }, + "outputs": { + "accountId": { + "type": "string", + "description": "The identifier for the specified AWS account." + }, + "state": { + "$ref": "#/types/aws-native:ec2:SnapshotBlockPublicAccessState", + "description": "The state of EBS Snapshot Block Public Access." + } + }, + "required": [ + "state" + ] + }, "aws-native:ec2:SpotFleet": { "cf": "AWS::EC2::SpotFleet", "inputs": { @@ -25772,6 +26968,9 @@ "aws-native:eks:Cluster": { "cf": "AWS::EKS::Cluster", "inputs": { + "accessConfig": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfig" + }, "encryptionConfig": { "type": "array", "items": { @@ -25811,6 +27010,9 @@ } }, "outputs": { + "accessConfig": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfig" + }, "arn": { "type": "string", "description": "The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod." @@ -25888,11 +27090,15 @@ "roleArn" ], "createOnly": [ + "accessConfig/BootstrapClusterCreatorAdminPermissions", "encryptionConfig", "kubernetesNetworkConfig", "name", "outpostConfig", "roleArn" + ], + "writeOnly": [ + "accessConfig/BootstrapClusterCreatorAdminPermissions" ] }, "aws-native:eks:FargateProfile": { @@ -26464,6 +27670,9 @@ "type": "string", "description": "The description of the Serverless Cache." }, + "endpoint": { + "$ref": "#/types/aws-native:elasticache:ServerlessCacheEndpoint" + }, "engine": { "type": "string", "description": "The engine name of the Serverless Cache." @@ -26480,6 +27689,9 @@ "type": "string", "description": "The major engine version of the Serverless Cache." }, + "readerEndpoint": { + "$ref": "#/types/aws-native:elasticache:ServerlessCacheEndpoint" + }, "securityGroupIds": { "type": "array", "items": { @@ -27896,10 +29108,22 @@ "type": "string", "description": "A detailed description of the Studio." }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3." + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId." }, + "idcInstanceArn": { + "type": "string", + "description": "The ARN of the IAM Identity Center instance to create the Studio application." + }, + "idcUserAssignment": { + "$ref": "#/types/aws-native:emr:StudioIdcUserAssignment", + "description": "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio." + }, "idpAuthUrl": { "type": "string", "description": "Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL." @@ -27930,6 +29154,10 @@ }, "description": "A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters." }, + "trustedIdentityPropagationEnabled": { + "type": "boolean", + "description": "A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false." + }, "userRole": { "type": "string", "description": "The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies." @@ -27961,11 +29189,26 @@ "type": "string", "description": "A detailed description of the Studio." }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3.", + "replaceOnChanges": true + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId.", "replaceOnChanges": true }, + "idcInstanceArn": { + "type": "string", + "description": "The ARN of the IAM Identity Center instance to create the Studio application.", + "replaceOnChanges": true + }, + "idcUserAssignment": { + "$ref": "#/types/aws-native:emr:StudioIdcUserAssignment", + "description": "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio.", + "replaceOnChanges": true + }, "idpAuthUrl": { "type": "string", "description": "Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL." @@ -28001,6 +29244,11 @@ }, "description": "A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters." }, + "trustedIdentityPropagationEnabled": { + "type": "boolean", + "description": "A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false.", + "replaceOnChanges": true + }, "url": { "type": "string", "description": "The unique Studio access URL." @@ -28037,8 +29285,12 @@ ], "createOnly": [ "authMode", + "encryptionKeyArn", "engineSecurityGroupId", + "idcInstanceArn", + "idcUserAssignment", "serviceRole", + "trustedIdentityPropagationEnabled", "userRole", "vpcId", "workspaceSecurityGroupId" @@ -29000,6 +30252,118 @@ "name" ] }, + "aws-native:eventschemas:Discoverer": { + "cf": "AWS::EventSchemas::Discoverer", + "inputs": { + "crossAccount": { + "type": "boolean", + "description": "Defines whether event schemas from other accounts are discovered. Default is True." + }, + "description": { + "type": "string", + "description": "A description for the discoverer." + }, + "sourceArn": { + "type": "string", + "description": "The ARN of the event bus." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:DiscovererTagsEntry" + }, + "description": "Tags associated with the resource." + } + }, + "outputs": { + "crossAccount": { + "type": "boolean", + "description": "Defines whether event schemas from other accounts are discovered. Default is True." + }, + "description": { + "type": "string", + "description": "A description for the discoverer." + }, + "discovererArn": { + "type": "string", + "description": "The ARN of the discoverer." + }, + "discovererId": { + "type": "string", + "description": "The Id of the discoverer." + }, + "sourceArn": { + "type": "string", + "description": "The ARN of the event bus.", + "replaceOnChanges": true + }, + "state": { + "type": "string", + "description": "Defines the current state of the discoverer." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:DiscovererTagsEntry" + }, + "description": "Tags associated with the resource." + } + }, + "required": [ + "sourceArn" + ], + "createOnly": [ + "sourceArn" + ] + }, + "aws-native:eventschemas:Registry": { + "cf": "AWS::EventSchemas::Registry", + "inputs": { + "description": { + "type": "string", + "description": "A description of the registry to be created." + }, + "registryName": { + "type": "string", + "description": "The name of the schema registry." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:RegistryTagsEntry" + }, + "description": "Tags associated with the resource." + } + }, + "outputs": { + "description": { + "type": "string", + "description": "A description of the registry to be created." + }, + "registryArn": { + "type": "string", + "description": "The ARN of the registry." + }, + "registryName": { + "type": "string", + "description": "The name of the schema registry.", + "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:RegistryTagsEntry" + }, + "description": "Tags associated with the resource." + } + }, + "autoNamingSpec": { + "sdkName": "registryName" + }, + "createOnly": [ + "registryName" + ] + }, "aws-native:eventschemas:RegistryPolicy": { "cf": "AWS::EventSchemas::RegistryPolicy", "inputs": { @@ -29029,6 +30393,97 @@ "registryName" ] }, + "aws-native:eventschemas:Schema": { + "cf": "AWS::EventSchemas::Schema", + "inputs": { + "content": { + "type": "string", + "description": "The source of the schema definition." + }, + "description": { + "type": "string", + "description": "A description of the schema." + }, + "registryName": { + "type": "string", + "description": "The name of the schema registry." + }, + "schemaName": { + "type": "string", + "description": "The name of the schema." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:SchemaTagsEntry" + }, + "description": "Tags associated with the resource." + }, + "type": { + "type": "string", + "description": "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." + } + }, + "outputs": { + "content": { + "type": "string", + "description": "The source of the schema definition." + }, + "description": { + "type": "string", + "description": "A description of the schema." + }, + "lastModified": { + "type": "string", + "description": "The last modified time of the schema." + }, + "registryName": { + "type": "string", + "description": "The name of the schema registry.", + "replaceOnChanges": true + }, + "schemaArn": { + "type": "string", + "description": "The ARN of the schema." + }, + "schemaName": { + "type": "string", + "description": "The name of the schema.", + "replaceOnChanges": true + }, + "schemaVersion": { + "type": "string", + "description": "The version number of the schema." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:SchemaTagsEntry" + }, + "description": "Tags associated with the resource." + }, + "type": { + "type": "string", + "description": "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." + }, + "versionCreatedDate": { + "type": "string", + "description": "The date the schema version was created." + } + }, + "autoNamingSpec": { + "sdkName": "schemaName" + }, + "required": [ + "content", + "registryName", + "type" + ], + "createOnly": [ + "registryName", + "schemaName" + ] + }, "aws-native:evidently:Experiment": { "cf": "AWS::Evidently::Experiment", "inputs": { @@ -29591,6 +31046,9 @@ "description": { "type": "string" }, + "experimentOptions": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptions" + }, "logConfiguration": { "$ref": "#/types/aws-native:fis:ExperimentTemplateLogConfiguration" }, @@ -29617,6 +31075,9 @@ "description": { "type": "string" }, + "experimentOptions": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptions" + }, "logConfiguration": { "$ref": "#/types/aws-native:fis:ExperimentTemplateLogConfiguration" }, @@ -29645,9 +31106,52 @@ "targets" ], "createOnly": [ + "experimentOptions/properties/AccountTargeting", "tags" ] }, + "aws-native:fis:TargetAccountConfiguration": { + "cf": "AWS::FIS::TargetAccountConfiguration", + "inputs": { + "accountId": { + "type": "string" + }, + "description": { + "type": "string" + }, + "experimentTemplateId": { + "type": "string" + }, + "roleArn": { + "type": "string" + } + }, + "outputs": { + "accountId": { + "type": "string", + "replaceOnChanges": true + }, + "description": { + "type": "string" + }, + "experimentTemplateId": { + "type": "string", + "replaceOnChanges": true + }, + "roleArn": { + "type": "string" + } + }, + "required": [ + "accountId", + "experimentTemplateId", + "roleArn" + ], + "createOnly": [ + "accountId", + "experimentTemplateId" + ] + }, "aws-native:fms:NotificationChannel": { "cf": "AWS::FMS::NotificationChannel", "inputs": { @@ -30778,6 +32282,10 @@ "$ref": "#/types/aws-native:gamelift:FleetAnywhereConfiguration", "description": "Configuration for Anywhere fleet." }, + "applyCapacity": { + "$ref": "#/types/aws-native:gamelift:FleetApplyCapacity", + "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer." + }, "buildId": { "type": "string", "description": "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created." @@ -30898,6 +32406,11 @@ "$ref": "#/types/aws-native:gamelift:FleetAnywhereConfiguration", "description": "Configuration for Anywhere fleet." }, + "applyCapacity": { + "$ref": "#/types/aws-native:gamelift:FleetApplyCapacity", + "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", + "replaceOnChanges": true + }, "buildId": { "type": "string", "description": "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.", @@ -31036,6 +32549,7 @@ "maxLength": 1024 }, "createOnly": [ + "applyCapacity", "buildId", "certificateConfiguration", "certificateType", @@ -33908,7 +35422,8 @@ "outputs": { "groupId": { "type": "string", - "description": "The unique identifier for a group in the identity store." + "description": "The unique identifier for a group in the identity store.", + "replaceOnChanges": true }, "identityStoreId": { "type": "string", @@ -33917,7 +35432,8 @@ }, "memberId": { "$ref": "#/types/aws-native:identitystore:GroupMembershipMemberId", - "description": "An object containing the identifier of a group member." + "description": "An object containing the identifier of a group member.", + "replaceOnChanges": true }, "membershipId": { "type": "string", @@ -33930,7 +35446,9 @@ "memberId" ], "createOnly": [ - "identityStoreId" + "groupId", + "identityStoreId", + "memberId" ] }, "aws-native:imagebuilder:Component": { @@ -34324,6 +35842,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -34343,6 +35865,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags associated with the image." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } }, "outputs": { @@ -34365,6 +35894,10 @@ "description": "Collects additional information about the image being created, including the operating system (OS) version and package list.", "replaceOnChanges": true }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageId": { "type": "string", "description": "The AMI ID of the EC2 AMI in current region." @@ -34401,6 +35934,14 @@ "$ref": "pulumi.json#/Any", "description": "The tags associated with the image.", "replaceOnChanges": true + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfiguration" + }, + "description": "Workflows to define the image build process", + "replaceOnChanges": true } }, "createOnly": [ @@ -34411,7 +35952,8 @@ "imageScanningConfiguration", "imageTestsConfiguration", "infrastructureConfigurationArn", - "tags" + "tags", + "workflows" ] }, "aws-native:imagebuilder:ImagePipeline": { @@ -34433,6 +35975,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -34464,6 +36010,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags of this image pipeline." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } }, "outputs": { @@ -34487,6 +36040,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -34519,6 +36076,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags of this image pipeline." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } }, "autoNamingSpec": { @@ -34880,6 +36444,120 @@ "name" ] }, + "aws-native:imagebuilder:Workflow": { + "cf": "AWS::ImageBuilder::Workflow", + "inputs": { + "changeDescription": { + "type": "string", + "description": "The change description of the workflow." + }, + "data": { + "type": "string", + "description": "The data of the workflow." + }, + "description": { + "type": "string", + "description": "The description of the workflow." + }, + "kmsKeyId": { + "type": "string", + "description": "The KMS key identifier used to encrypt the workflow." + }, + "name": { + "type": "string", + "description": "The name of the workflow." + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "The tags associated with the workflow." + }, + "type": { + "$ref": "#/types/aws-native:imagebuilder:WorkflowType", + "description": "The type of the workflow denotes whether the workflow is used to build, test, or distribute." + }, + "uri": { + "type": "string", + "description": "The uri of the workflow." + }, + "version": { + "type": "string", + "description": "The version of the workflow." + } + }, + "outputs": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow." + }, + "changeDescription": { + "type": "string", + "description": "The change description of the workflow.", + "replaceOnChanges": true + }, + "data": { + "type": "string", + "description": "The data of the workflow.", + "replaceOnChanges": true + }, + "description": { + "type": "string", + "description": "The description of the workflow.", + "replaceOnChanges": true + }, + "kmsKeyId": { + "type": "string", + "description": "The KMS key identifier used to encrypt the workflow.", + "replaceOnChanges": true + }, + "name": { + "type": "string", + "description": "The name of the workflow.", + "replaceOnChanges": true + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "The tags associated with the workflow.", + "replaceOnChanges": true + }, + "type": { + "$ref": "#/types/aws-native:imagebuilder:WorkflowType", + "description": "The type of the workflow denotes whether the workflow is used to build, test, or distribute.", + "replaceOnChanges": true + }, + "uri": { + "type": "string", + "description": "The uri of the workflow.", + "replaceOnChanges": true + }, + "version": { + "type": "string", + "description": "The version of the workflow.", + "replaceOnChanges": true + } + }, + "autoNamingSpec": { + "sdkName": "name" + }, + "required": [ + "type", + "version" + ], + "createOnly": [ + "changeDescription", + "data", + "description", + "kmsKeyId", + "name", + "tags", + "type", + "uri", + "version" + ], + "writeOnly": [ + "data", + "uri" + ] + }, "aws-native:index:ExtensionResource": { "cf": "", "inputs": { @@ -35524,6 +37202,67 @@ "caCertificatePem": "CACertificatePem" } }, + "aws-native:iot:CertificateProvider": { + "cf": "AWS::IoT::CertificateProvider", + "inputs": { + "accountDefaultForOperations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderOperation" + } + }, + "certificateProviderName": { + "type": "string" + }, + "lambdaFunctionArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "outputs": { + "accountDefaultForOperations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderOperation" + } + }, + "arn": { + "type": "string" + }, + "certificateProviderName": { + "type": "string", + "replaceOnChanges": true + }, + "lambdaFunctionArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "autoNamingSpec": { + "sdkName": "certificateProviderName", + "minLength": 1, + "maxLength": 128 + }, + "required": [ + "accountDefaultForOperations", + "lambdaFunctionArn" + ], + "createOnly": [ + "certificateProviderName" + ] + }, "aws-native:iot:CustomMetric": { "cf": "AWS::IoT::CustomMetric", "inputs": { @@ -41078,16 +42817,20 @@ "$ref": "#/types/aws-native:lambda:EventInvokeConfigDestinationConfig" }, "functionName": { - "type": "string" + "type": "string", + "description": "The name of the Lambda function." }, "maximumEventAgeInSeconds": { - "type": "integer" + "type": "integer", + "description": "The maximum age of a request that Lambda sends to a function for processing." }, "maximumRetryAttempts": { - "type": "integer" + "type": "integer", + "description": "The maximum number of times to retry when the function returns an error." }, "qualifier": { - "type": "string" + "type": "string", + "description": "The identifier of a version or alias." } }, "outputs": { @@ -41096,16 +42839,20 @@ }, "functionName": { "type": "string", + "description": "The name of the Lambda function.", "replaceOnChanges": true }, "maximumEventAgeInSeconds": { - "type": "integer" + "type": "integer", + "description": "The maximum age of a request that Lambda sends to a function for processing." }, "maximumRetryAttempts": { - "type": "integer" + "type": "integer", + "description": "The maximum number of times to retry when the function returns an error." }, "qualifier": { "type": "string", + "description": "The identifier of a version or alias.", "replaceOnChanges": true } }, @@ -41428,10 +43175,6 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, - "policy": { - "$ref": "pulumi.json#/Any", - "description": "The resource policy of your function" - }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -41550,10 +43293,6 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, - "policy": { - "$ref": "pulumi.json#/Any", - "description": "The resource policy of your function" - }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -41616,7 +43355,6 @@ "code/S3Key", "code/S3ObjectVersion", "code/ZipFile", - "policy", "snapStart", "snapStart/ApplyOn" ] @@ -43986,41 +45724,41 @@ "inputs": { "deliveryDestinationArn": { "type": "string", - "description": "The value of the DeliveryDestinationArn property for this object." + "description": "The ARN of the delivery destination that is associated with this delivery." }, "deliverySourceName": { "type": "string", - "description": "The value of the DeliverySourceName property for this object." + "description": "The name of the delivery source that is associated with this delivery." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryTag" }, - "description": "The value of the Tags property for this object." + "description": "The tags that have been assigned to this delivery." } }, "outputs": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery." }, "deliveryDestinationArn": { "type": "string", - "description": "The value of the DeliveryDestinationArn property for this object.", + "description": "The ARN of the delivery destination that is associated with this delivery.", "replaceOnChanges": true }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "deliveryId": { "type": "string", - "description": "The value of the Id property for this object." + "description": "The unique ID that identifies this delivery in your account." }, "deliverySourceName": { "type": "string", - "description": "The value of the DeliverySourceName property for this object.", + "description": "The name of the delivery source that is associated with this delivery.", "replaceOnChanges": true }, "tags": { @@ -44028,7 +45766,7 @@ "items": { "$ref": "#/types/aws-native:logs:DeliveryTag" }, - "description": "The value of the Tags property for this object." + "description": "The tags that have been assigned to this delivery." } }, "required": [ @@ -44049,24 +45787,24 @@ }, "destinationResourceArn": { "type": "string", - "description": "The ARN of the Destination Resource." + "description": "The ARN of the AWS resource that will receive the logs." }, "name": { "type": "string", - "description": "The unique name of the Delivery Destination." + "description": "The name of this delivery destination." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryDestinationTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery destination." } }, "outputs": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery destination." }, "deliveryDestinationPolicy": { "$ref": "pulumi.json#/Any", @@ -44074,16 +45812,16 @@ }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "destinationResourceArn": { "type": "string", - "description": "The ARN of the Destination Resource.", + "description": "The ARN of the AWS resource that will receive the logs.", "replaceOnChanges": true }, "name": { "type": "string", - "description": "The unique name of the Delivery Destination.", + "description": "The name of this delivery destination.", "replaceOnChanges": true }, "tags": { @@ -44091,7 +45829,7 @@ "items": { "$ref": "#/types/aws-native:logs:DeliveryDestinationTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery destination." } }, "autoNamingSpec": { @@ -44124,13 +45862,13 @@ "items": { "$ref": "#/types/aws-native:logs:DeliverySourceTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery source." } }, "outputs": { "arn": { "type": "string", - "description": "The ARN of the Aqueduct Source." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery source." }, "logType": { "type": "string", @@ -44150,18 +45888,18 @@ "items": { "type": "string" }, - "description": "List of ARN of the resource that will be sending the logs" + "description": "This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array." }, "service": { "type": "string", - "description": "The service generating the log" + "description": "The AWS service that is sending logs." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliverySourceTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery source." } }, "autoNamingSpec": { @@ -51766,6 +53504,9 @@ "engineVersion": { "type": "string" }, + "ipAddressType": { + "type": "string" + }, "logPublishingOptions": { "$ref": "pulumi.json#/Any" }, @@ -51820,6 +53561,9 @@ "domainEndpointOptions": { "$ref": "#/types/aws-native:opensearchservice:DomainEndpointOptions" }, + "domainEndpointV2": { + "type": "string" + }, "domainEndpoints": { "$ref": "pulumi.json#/Any" }, @@ -51836,6 +53580,9 @@ "engineVersion": { "type": "string" }, + "ipAddressType": { + "type": "string" + }, "logPublishingOptions": { "$ref": "pulumi.json#/Any" }, @@ -51877,7 +53624,9 @@ "advancedSecurityOptions/SamlOptions/MasterUserName" ], "irreversibleNames": { + "domainEndpointV2": "DomainEndpointV2", "ebsOptions": "EBSOptions", + "ipAddressType": "IPAddressType", "vpcOptions": "VPCOptions" } }, @@ -52401,6 +54150,12 @@ "aws-native:osis:Pipeline": { "cf": "AWS::OSIS::Pipeline", "inputs": { + "bufferOptions": { + "$ref": "#/types/aws-native:osis:PipelineBufferOptions" + }, + "encryptionAtRestOptions": { + "$ref": "#/types/aws-native:osis:PipelineEncryptionAtRestOptions" + }, "logPublishingOptions": { "$ref": "#/types/aws-native:osis:PipelineLogPublishingOptions" }, @@ -52432,6 +54187,12 @@ } }, "outputs": { + "bufferOptions": { + "$ref": "#/types/aws-native:osis:PipelineBufferOptions" + }, + "encryptionAtRestOptions": { + "$ref": "#/types/aws-native:osis:PipelineEncryptionAtRestOptions" + }, "ingestEndpointUrls": { "type": "array", "items": { @@ -61999,11 +63760,11 @@ "inputs": { "bucketName": { "type": "string", - "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." }, "dataRedundancy": { "$ref": "#/types/aws-native:s3express:DirectoryBucketDataRedundancy", - "description": "Specifies the number of Avilability Zone that's used for redundancy for the bucket." + "description": "Specifies the number of Availability Zone that's used for redundancy for the bucket." }, "locationName": { "type": "string", @@ -62017,12 +63778,12 @@ }, "bucketName": { "type": "string", - "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", + "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", "replaceOnChanges": true }, "dataRedundancy": { "$ref": "#/types/aws-native:s3express:DirectoryBucketDataRedundancy", - "description": "Specifies the number of Avilability Zone that's used for redundancy for the bucket.", + "description": "Specifies the number of Availability Zone that's used for redundancy for the bucket.", "replaceOnChanges": true }, "locationName": { @@ -62822,8 +64583,7 @@ "outputs": { "appNetworkAccessType": { "$ref": "#/types/aws-native:sagemaker:DomainAppNetworkAccessType", - "description": "Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.", - "replaceOnChanges": true + "description": "Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly." }, "appSecurityGroupManagement": { "$ref": "#/types/aws-native:sagemaker:DomainAppSecurityGroupManagement", @@ -62871,6 +64631,10 @@ "type": "string", "description": "The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app." }, + "singleSignOnApplicationArn": { + "type": "string", + "description": "The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023." + }, "singleSignOnManagedApplicationInstanceId": { "type": "string", "description": "The SSO managed application instance ID." @@ -62880,8 +64644,7 @@ "items": { "type": "string" }, - "description": "The VPC subnets that Studio uses for communication.", - "replaceOnChanges": true + "description": "The VPC subnets that Studio uses for communication." }, "tags": { "type": "array", @@ -62912,12 +64675,10 @@ "vpcId" ], "createOnly": [ - "appNetworkAccessType", "authMode", "domainName", "domainSettings/RStudioServerProDomainSettings/DefaultResourceSpec", "kmsKeyId", - "subnetIds", "tags", "vpcId" ], @@ -64951,6 +66712,57 @@ } } }, + "aws-native:securityhub:Hub": { + "cf": "AWS::SecurityHub::Hub", + "inputs": { + "autoEnableControls": { + "type": "boolean", + "description": "Whether to automatically enable new controls when they are added to standards that are enabled" + }, + "controlFindingGenerator": { + "type": "string", + "description": "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards." + }, + "enableDefaultStandards": { + "type": "boolean", + "description": "Whether to enable the security standards that Security Hub has designated as automatically enabled." + }, + "tags": { + "$ref": "#/types/aws-native:securityhub:HubTags" + } + }, + "outputs": { + "arn": { + "type": "string", + "description": "An ARN is automatically created for the customer." + }, + "autoEnableControls": { + "type": "boolean", + "description": "Whether to automatically enable new controls when they are added to standards that are enabled" + }, + "controlFindingGenerator": { + "type": "string", + "description": "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards." + }, + "enableDefaultStandards": { + "type": "boolean", + "description": "Whether to enable the security standards that Security Hub has designated as automatically enabled." + }, + "subscribedAt": { + "type": "string", + "description": "The date and time when Security Hub was enabled in the account." + }, + "tags": { + "$ref": "#/types/aws-native:securityhub:HubTags" + } + }, + "writeOnly": [ + "enableDefaultStandards" + ], + "irreversibleNames": { + "arn": "ARN" + } + }, "aws-native:securityhub:Standard": { "cf": "AWS::SecurityHub::Standard", "inputs": { @@ -65216,6 +67028,18 @@ } }, "outputs": { + "applicationName": { + "type": "string", + "description": "The name of the application. " + }, + "applicationTagKey": { + "type": "string", + "description": "The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value." + }, + "applicationTagValue": { + "type": "string", + "description": "The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. " + }, "arn": { "type": "string" }, @@ -66643,7 +68467,10 @@ }, "autoNamingSpec": { "sdkName": "name" - } + }, + "writeOnly": [ + "waitForSuccessTimeoutSeconds" + ] }, "aws-native:ssm:Document": { "cf": "AWS::SSM::Document", @@ -71517,7 +73344,7 @@ "properties": { "unusedAccessAge": { "type": "integer", - "description": "The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days." + "description": "The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days." } } }, @@ -77480,6 +79307,184 @@ } } }, + "aws-native:b2bi:CapabilityConfiguration0Properties": { + "type": "object", + "properties": { + "edi": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiConfiguration" + } + } + }, + "aws-native:b2bi:CapabilityConfigurationProperties": { + "type": "object", + "properties": { + "edi": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiConfiguration" + } + } + }, + "aws-native:b2bi:CapabilityEdiConfiguration": { + "type": "object", + "properties": { + "inputLocation": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + }, + "outputLocation": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + }, + "transformerId": { + "type": "string" + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiTypeProperties" + } + } + }, + "aws-native:b2bi:CapabilityEdiType0Properties": { + "type": "object", + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Details" + } + }, + "irreversibleNames": { + "x12Details": "X12Details" + } + }, + "aws-native:b2bi:CapabilityEdiTypeProperties": { + "type": "object", + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Details" + } + }, + "irreversibleNames": { + "x12Details": "X12Details" + } + }, + "aws-native:b2bi:CapabilityS3Location": { + "type": "object", + "properties": { + "bucketName": { + "type": "string" + }, + "key": { + "type": "string" + } + } + }, + "aws-native:b2bi:CapabilityTag": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:b2bi:CapabilityType": { + "type": "string" + }, + "aws-native:b2bi:CapabilityX12Details": { + "type": "object", + "properties": { + "transactionSet": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12TransactionSet" + }, + "version": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Version" + } + } + }, + "aws-native:b2bi:CapabilityX12TransactionSet": { + "type": "string" + }, + "aws-native:b2bi:CapabilityX12Version": { + "type": "string" + }, + "aws-native:b2bi:PartnershipTag": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:b2bi:ProfileLogging": { + "type": "string" + }, + "aws-native:b2bi:ProfileTag": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:b2bi:TransformerEdiType0Properties": { + "type": "object", + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Details" + } + }, + "irreversibleNames": { + "x12Details": "X12Details" + } + }, + "aws-native:b2bi:TransformerEdiTypeProperties": { + "type": "object", + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Details" + } + }, + "irreversibleNames": { + "x12Details": "X12Details" + } + }, + "aws-native:b2bi:TransformerFileFormat": { + "type": "string" + }, + "aws-native:b2bi:TransformerStatus": { + "type": "string" + }, + "aws-native:b2bi:TransformerTag": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:b2bi:TransformerX12Details": { + "type": "object", + "properties": { + "transactionSet": { + "$ref": "#/types/aws-native:b2bi:TransformerX12TransactionSet" + }, + "version": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Version" + } + } + }, + "aws-native:b2bi:TransformerX12TransactionSet": { + "type": "string" + }, + "aws-native:b2bi:TransformerX12Version": { + "type": "string" + }, "aws-native:backup:BackupPlanAdvancedBackupSettingResourceType": { "type": "object", "properties": { @@ -78045,6 +80050,586 @@ } } }, + "aws-native:batch:JobDefinitionContainerProperties": { + "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:JobDefinitionContainerPropertiesEphemeralStorageProperties" + }, + "executionRoleArn": { + "type": "string" + }, + "fargatePlatformConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties" + }, + "image": { + "type": "string" + }, + "instanceType": { + "type": "string" + }, + "jobRoleArn": { + "type": "string" + }, + "linuxParameters": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesLinuxParametersProperties" + }, + "logConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesLogConfigurationProperties" + }, + "memory": { + "type": "integer" + }, + "mountPoints": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" + } + }, + "networkConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesNetworkConfigurationProperties" + }, + "privileged": { + "type": "boolean" + }, + "readonlyRootFilesystem": { + "type": "boolean" + }, + "resourceRequirements": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionResourceRequirement" + } + }, + "runtimePlatform": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesRuntimePlatformProperties" + }, + "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:JobDefinitionContainerPropertiesEphemeralStorageProperties": { + "type": "object", + "properties": { + "sizeInGiB": { + "type": "integer" + } + } + }, + "aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties": { + "type": "object", + "properties": { + "platformVersion": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionContainerPropertiesLinuxParametersProperties": { + "type": "object", + "properties": { + "devices": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionDevice" + } + }, + "initProcessEnabled": { + "type": "boolean" + }, + "maxSwap": { + "type": "integer" + }, + "sharedMemorySize": { + "type": "integer" + }, + "swappiness": { + "type": "integer" + }, + "tmpfs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionTmpfs" + } + } + } + }, + "aws-native:batch:JobDefinitionContainerPropertiesLogConfigurationProperties": { + "type": "object", + "properties": { + "logDriver": { + "type": "string" + }, + "options": { + "$ref": "pulumi.json#/Any" + }, + "secretOptions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionSecret" + } + } + } + }, + "aws-native:batch:JobDefinitionContainerPropertiesNetworkConfigurationProperties": { + "type": "object", + "properties": { + "assignPublicIp": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionContainerPropertiesRuntimePlatformProperties": { + "type": "object", + "properties": { + "cpuArchitecture": { + "type": "string" + }, + "operatingSystemFamily": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionDevice": { + "type": "object", + "properties": { + "containerPath": { + "type": "string" + }, + "hostPath": { + "type": "string" + }, + "permissions": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, + "aws-native:batch:JobDefinitionEfsAuthorizationConfig": { + "type": "object", + "properties": { + "accessPointId": { + "type": "string" + }, + "iam": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionEfsVolumeConfiguration": { + "type": "object", + "properties": { + "authorizationConfig": { + "$ref": "#/types/aws-native:batch:JobDefinitionEfsAuthorizationConfig" + }, + "fileSystemId": { + "type": "string" + }, + "rootDirectory": { + "type": "string" + }, + "transitEncryption": { + "type": "string" + }, + "transitEncryptionPort": { + "type": "integer" + } + } + }, + "aws-native:batch:JobDefinitionEksContainer": { + "type": "object", + "properties": { + "args": { + "type": "array", + "items": { + "type": "string" + } + }, + "command": { + "type": "array", + "items": { + "type": "string" + } + }, + "env": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainerEnvironmentVariable" + } + }, + "image": { + "type": "string" + }, + "imagePullPolicy": { + "type": "string" + }, + "name": { + "type": "string" + }, + "resources": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainerResourceRequirements" + }, + "securityContext": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainerSecurityContext" + }, + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainerVolumeMount" + } + } + } + }, + "aws-native:batch:JobDefinitionEksContainerEnvironmentVariable": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionEksContainerResourceRequirements": { + "type": "object", + "properties": { + "limits": { + "$ref": "pulumi.json#/Any" + }, + "requests": { + "$ref": "pulumi.json#/Any" + } + } + }, + "aws-native:batch:JobDefinitionEksContainerSecurityContext": { + "type": "object", + "properties": { + "privileged": { + "type": "boolean" + }, + "readOnlyRootFilesystem": { + "type": "boolean" + }, + "runAsGroup": { + "type": "integer" + }, + "runAsNonRoot": { + "type": "boolean" + }, + "runAsUser": { + "type": "integer" + } + } + }, + "aws-native:batch:JobDefinitionEksContainerVolumeMount": { + "type": "object", + "properties": { + "mountPath": { + "type": "string" + }, + "name": { + "type": "string" + }, + "readOnly": { + "type": "boolean" + } + } + }, + "aws-native:batch:JobDefinitionEksEmptyDir": { + "type": "object", + "properties": { + "medium": { + "type": "string" + }, + "sizeLimit": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionEksHostPath": { + "type": "object", + "properties": { + "path": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionEksMetadata": { + "type": "object", + "properties": { + "labels": { + "$ref": "pulumi.json#/Any" + } + } + }, + "aws-native:batch:JobDefinitionEksPodProperties": { + "type": "object", + "properties": { + "containers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" + } + }, + "dnsPolicy": { + "type": "string" + }, + "hostNetwork": { + "type": "boolean" + }, + "metadata": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksMetadata" + }, + "serviceAccountName": { + "type": "string" + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksVolume" + } + } + } + }, + "aws-native:batch:JobDefinitionEksProperties": { + "type": "object", + "properties": { + "podProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksPodProperties" + } + } + }, + "aws-native:batch:JobDefinitionEksSecret": { + "type": "object", + "properties": { + "optional": { + "type": "boolean" + }, + "secretName": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionEksVolume": { + "type": "object", + "properties": { + "emptyDir": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksEmptyDir" + }, + "hostPath": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksHostPath" + }, + "name": { + "type": "string" + }, + "secret": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksSecret" + } + } + }, + "aws-native:batch:JobDefinitionEnvironment": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionEvaluateOnExit": { + "type": "object", + "properties": { + "action": { + "type": "string" + }, + "onExitCode": { + "type": "string" + }, + "onReason": { + "type": "string" + }, + "onStatusReason": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionHost": { + "type": "object", + "properties": { + "sourcePath": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionJobTimeout": { + "type": "object", + "properties": { + "attemptDurationSeconds": { + "type": "integer" + } + } + }, + "aws-native:batch:JobDefinitionMountPoint": { + "type": "object", + "properties": { + "containerPath": { + "type": "string" + }, + "readOnly": { + "type": "boolean" + }, + "sourceVolume": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionNodeProperties": { + "type": "object", + "properties": { + "mainNode": { + "type": "integer" + }, + "nodeRangeProperties": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionNodeRangeProperty" + } + }, + "numNodes": { + "type": "integer" + } + } + }, + "aws-native:batch:JobDefinitionNodeRangeProperty": { + "type": "object", + "properties": { + "container": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties" + }, + "targetNodes": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionResourceRequirement": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionRetryStrategy": { + "type": "object", + "properties": { + "attempts": { + "type": "integer" + }, + "evaluateOnExit": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEvaluateOnExit" + } + } + } + }, + "aws-native:batch:JobDefinitionSecret": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "valueFrom": { + "type": "string" + } + } + }, + "aws-native:batch:JobDefinitionTmpfs": { + "type": "object", + "properties": { + "containerPath": { + "type": "string" + }, + "mountOptions": { + "type": "array", + "items": { + "type": "string" + } + }, + "size": { + "type": "integer" + } + } + }, + "aws-native:batch:JobDefinitionUlimit": { + "type": "object", + "properties": { + "hardLimit": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "softLimit": { + "type": "integer" + } + } + }, + "aws-native:batch:JobDefinitionVolume": { + "type": "object", + "properties": { + "efsVolumeConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionEfsVolumeConfiguration" + }, + "host": { + "$ref": "#/types/aws-native:batch:JobDefinitionHost" + }, + "name": { + "type": "string" + } + } + }, "aws-native:batch:JobQueueComputeEnvironmentOrder": { "type": "object", "properties": { @@ -78305,6 +80890,61 @@ } } }, + "aws-native:ce:AnomalyMonitorMonitorDimension": { + "type": "string" + }, + "aws-native:ce:AnomalyMonitorMonitorType": { + "type": "string" + }, + "aws-native:ce:AnomalyMonitorResourceTag": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The key name for the tag." + }, + "value": { + "type": "string", + "description": "The value for the tag." + } + } + }, + "aws-native:ce:AnomalySubscriptionFrequency": { + "type": "string" + }, + "aws-native:ce:AnomalySubscriptionResourceTag": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The key name for the tag." + }, + "value": { + "type": "string", + "description": "The value for the tag." + } + } + }, + "aws-native:ce:AnomalySubscriptionSubscriber": { + "type": "object", + "properties": { + "address": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriberStatus" + }, + "type": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriberType" + } + } + }, + "aws-native:ce:AnomalySubscriptionSubscriberStatus": { + "type": "string" + }, + "aws-native:ce:AnomalySubscriptionSubscriberType": { + "type": "string" + }, "aws-native:ce:CostCategoryRuleVersion": { "type": "string" }, @@ -78404,6 +81044,25 @@ "items": { "$ref": "#/types/aws-native:cleanrooms:CollaborationMemberAbility" } + }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration" + } + } + }, + "aws-native:cleanrooms:CollaborationPaymentConfiguration": { + "type": "object", + "properties": { + "queryCompute": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationQueryComputePaymentConfig" + } + } + }, + "aws-native:cleanrooms:CollaborationQueryComputePaymentConfig": { + "type": "object", + "properties": { + "isResponsible": { + "type": "boolean" } } }, @@ -78651,6 +81310,14 @@ } } }, + "aws-native:cleanrooms:MembershipPaymentConfiguration": { + "type": "object", + "properties": { + "queryCompute": { + "$ref": "#/types/aws-native:cleanrooms:MembershipQueryComputePaymentConfig" + } + } + }, "aws-native:cleanrooms:MembershipProtectedQueryOutputConfiguration": { "type": "object", "properties": { @@ -78687,6 +81354,14 @@ } } }, + "aws-native:cleanrooms:MembershipQueryComputePaymentConfig": { + "type": "object", + "properties": { + "isResponsible": { + "type": "boolean" + } + } + }, "aws-native:cleanrooms:MembershipQueryLogStatus": { "type": "string" }, @@ -80660,6 +83335,17 @@ } } }, + "aws-native:codedeploy:DeploymentConfigMinimumHealthyHostsPerZone": { + "type": "object", + "properties": { + "type": { + "type": "string" + }, + "value": { + "type": "integer" + } + } + }, "aws-native:codedeploy:DeploymentConfigTimeBasedCanary": { "type": "object", "properties": { @@ -80696,6 +83382,20 @@ } } }, + "aws-native:codedeploy:DeploymentConfigZonalConfig": { + "type": "object", + "properties": { + "firstZoneMonitorDurationInSeconds": { + "type": "integer" + }, + "minimumHealthyHostsPerZone": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigMinimumHealthyHostsPerZone" + }, + "monitorDurationInSeconds": { + "type": "integer" + } + } + }, "aws-native:codeguruprofiler:AgentPermissionsProperties": { "type": "object", "properties": { @@ -82231,6 +84931,19 @@ "aws-native:connect:InstanceStorageConfigStorageType": { "type": "string" }, + "aws-native:connect:InstanceTag": { + "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:connect:IntegrationAssociationIntegrationType": { "type": "string" }, @@ -82432,6 +85145,18 @@ "$ref": "#/types/aws-native:connect:RuleAssignContactCategoryAction" } }, + "createCaseActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleCreateCaseAction" + } + }, + "endAssociatedTaskActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleEndAssociatedTasksAction" + } + }, "eventBridgeActions": { "type": "array", "items": { @@ -82449,12 +85174,36 @@ "items": { "$ref": "#/types/aws-native:connect:RuleTaskAction" } + }, + "updateCaseActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleUpdateCaseAction" + } } } }, "aws-native:connect:RuleAssignContactCategoryAction": { "type": "object" }, + "aws-native:connect:RuleCreateCaseAction": { + "type": "object", + "properties": { + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleField" + } + }, + "templateId": { + "type": "string", + "description": "The Id of template." + } + } + }, + "aws-native:connect:RuleEndAssociatedTasksAction": { + "type": "object" + }, "aws-native:connect:RuleEventBridgeAction": { "type": "object", "properties": { @@ -82464,6 +85213,35 @@ } } }, + "aws-native:connect:RuleField": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The Id of the field" + }, + "value": { + "$ref": "#/types/aws-native:connect:RuleFieldValue" + } + } + }, + "aws-native:connect:RuleFieldValue": { + "type": "object", + "properties": { + "booleanValue": { + "type": "boolean" + }, + "doubleValue": { + "type": "number" + }, + "emptyValue": { + "$ref": "pulumi.json#/Any" + }, + "stringValue": { + "type": "string" + } + } + }, "aws-native:connect:RuleNotificationRecipientType": { "type": "object", "properties": { @@ -82563,6 +85341,17 @@ "aws-native:connect:RuleTriggerEventSourceEventSourceName": { "type": "string" }, + "aws-native:connect:RuleUpdateCaseAction": { + "type": "object", + "properties": { + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleField" + } + } + } + }, "aws-native:connect:SecurityProfileTag": { "type": "object", "properties": { @@ -85795,6 +88584,74 @@ } } }, + "aws-native:dms:DataProviderDmsSslModeValue": { + "type": "string" + }, + "aws-native:dms:DataProviderEngine": { + "type": "string" + }, + "aws-native:dms:DataProviderTag": { + "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:dms:InstanceProfileNetworkType": { + "type": "string" + }, + "aws-native:dms:InstanceProfileTag": { + "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:dms:MigrationProjectDataProviderDescriptor": { + "type": "object", + "properties": { + "dataProviderArn": { + "type": "string" + }, + "dataProviderIdentifier": { + "type": "string" + }, + "dataProviderName": { + "type": "string" + }, + "secretsManagerAccessRoleArn": { + "type": "string" + }, + "secretsManagerSecretId": { + "type": "string" + } + } + }, + "aws-native:dms:MigrationProjectTag": { + "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:dms:ReplicationConfigComputeConfig": { "type": "object", "properties": { @@ -85849,6 +88706,145 @@ } } }, + "aws-native:dms:SchemaConversionApplicationAttributesProperties": { + "type": "object", + "properties": { + "s3BucketPath": { + "type": "string" + }, + "s3BucketRoleArn": { + "type": "string" + } + }, + "irreversibleNames": { + "s3BucketPath": "S3BucketPath", + "s3BucketRoleArn": "S3BucketRoleArn" + } + }, + "aws-native:dms:Settings0Properties": { + "type": "object", + "properties": { + "postgreSqlSettings": { + "$ref": "#/types/aws-native:dms:Settings0PropertiesPostgreSqlSettingsProperties" + } + } + }, + "aws-native:dms:Settings0PropertiesPostgreSqlSettingsProperties": { + "type": "object", + "properties": { + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + } + }, + "aws-native:dms:Settings1Properties": { + "type": "object", + "properties": { + "mySqlSettings": { + "$ref": "#/types/aws-native:dms:Settings1PropertiesMySqlSettingsProperties" + } + } + }, + "aws-native:dms:Settings1PropertiesMySqlSettingsProperties": { + "type": "object", + "properties": { + "certificateArn": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + } + }, + "aws-native:dms:Settings2Properties": { + "type": "object", + "properties": { + "oracleSettings": { + "$ref": "#/types/aws-native:dms:Settings2PropertiesOracleSettingsProperties" + } + } + }, + "aws-native:dms:Settings2PropertiesOracleSettingsProperties": { + "type": "object", + "properties": { + "asmServer": { + "type": "string" + }, + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "secretsManagerOracleAsmAccessRoleArn": { + "type": "string" + }, + "secretsManagerOracleAsmSecretId": { + "type": "string" + }, + "secretsManagerSecurityDbEncryptionAccessRoleArn": { + "type": "string" + }, + "secretsManagerSecurityDbEncryptionSecretId": { + "type": "string" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + } + }, + "aws-native:dms:Settings3Properties": { + "type": "object", + "properties": { + "microsoftSqlServerSettings": { + "$ref": "#/types/aws-native:dms:Settings3PropertiesMicrosoftSqlServerSettingsProperties" + } + } + }, + "aws-native:dms:Settings3PropertiesMicrosoftSqlServerSettingsProperties": { + "type": "object", + "properties": { + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + } + }, "aws-native:docdbelastic:ClusterTag": { "type": "object", "properties": { @@ -88845,6 +91841,9 @@ } } }, + "aws-native:ec2:SnapshotBlockPublicAccessState": { + "type": "string" + }, "aws-native:ec2:SpotFleetAcceleratorCountRequest": { "type": "object", "properties": { @@ -89921,6 +92920,10 @@ "aws-native:ec2:VerifiedAccessTrustProviderDeviceOptions": { "type": "object", "properties": { + "publicSigningKeyUrl": { + "type": "string", + "description": "URL Verified Access will use to verify authenticity of the device tokens." + }, "tenantId": { "type": "string", "description": "The ID of the tenant application with the device-identity provider." @@ -90160,6 +93163,9 @@ "type": "string", "replaceOnChanges": true }, + "managedDraining": { + "$ref": "#/types/aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedDraining" + }, "managedScaling": { "$ref": "#/types/aws-native:ecs:CapacityProviderManagedScaling" }, @@ -90168,6 +93174,9 @@ } } }, + "aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedDraining": { + "type": "string" + }, "aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedTerminationProtection": { "type": "string" }, @@ -91459,6 +94468,23 @@ } } }, + "aws-native:eks:ClusterAccessConfig": { + "type": "object", + "properties": { + "authenticationMode": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfigAuthenticationMode", + "description": "Specify the authentication mode that should be used to create your cluster." + }, + "bootstrapClusterCreatorAdminPermissions": { + "type": "boolean", + "description": "Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster.", + "replaceOnChanges": true + } + } + }, + "aws-native:eks:ClusterAccessConfigAuthenticationMode": { + "type": "string" + }, "aws-native:eks:ClusterControlPlanePlacement": { "type": "object", "properties": { @@ -92782,6 +95808,9 @@ "aws-native:emr:StudioAuthMode": { "type": "string" }, + "aws-native:emr:StudioIdcUserAssignment": { + "type": "string" + }, "aws-native:emr:StudioSessionMappingIdentityType": { "type": "string" }, @@ -93857,6 +96886,39 @@ } } }, + "aws-native:eventschemas:DiscovererTagsEntry": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:eventschemas:RegistryTagsEntry": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, + "aws-native:eventschemas:SchemaTagsEntry": { + "type": "object", + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + } + }, "aws-native:evidently:ExperimentMetricGoalObject": { "type": "object", "properties": { @@ -94278,6 +97340,25 @@ "aws-native:fis:ExperimentTemplateActionMap": { "type": "object" }, + "aws-native:fis:ExperimentTemplateExperimentOptions": { + "type": "object", + "properties": { + "accountTargeting": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptionsAccountTargeting", + "description": "The account targeting setting for the experiment template." + }, + "emptyTargetResolutionMode": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode", + "description": "The target resolution failure mode for the experiment template." + } + } + }, + "aws-native:fis:ExperimentTemplateExperimentOptionsAccountTargeting": { + "type": "string" + }, + "aws-native:fis:ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode": { + "type": "string" + }, "aws-native:fis:ExperimentTemplateLogConfiguration": { "type": "object", "properties": { @@ -95085,6 +98166,9 @@ } } }, + "aws-native:gamelift:FleetApplyCapacity": { + "type": "string" + }, "aws-native:gamelift:FleetCertificateConfiguration": { "type": "object", "properties": { @@ -97268,6 +100352,47 @@ "aws-native:imagebuilder:ImagePipelineStatus": { "type": "string" }, + "aws-native:imagebuilder:ImagePipelineWorkflowConfiguration": { + "type": "object", + "properties": { + "onFailure": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfigurationOnFailure", + "description": "Define execution decision in case of workflow failure" + }, + "parallelGroup": { + "type": "string", + "description": "The parallel group name" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowParameter" + }, + "description": "The parameters associated with the workflow" + }, + "workflowArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow" + } + } + }, + "aws-native:imagebuilder:ImagePipelineWorkflowConfigurationOnFailure": { + "type": "string" + }, + "aws-native:imagebuilder:ImagePipelineWorkflowParameter": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, "aws-native:imagebuilder:ImageRecipeAdditionalInstanceConfiguration": { "type": "object", "properties": { @@ -97409,6 +100534,47 @@ } } }, + "aws-native:imagebuilder:ImageWorkflowConfiguration": { + "type": "object", + "properties": { + "onFailure": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfigurationOnFailure", + "description": "Define execution decision in case of workflow failure" + }, + "parallelGroup": { + "type": "string", + "description": "The parallel group name" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowParameter" + }, + "description": "The parameters associated with the workflow" + }, + "workflowArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow" + } + } + }, + "aws-native:imagebuilder:ImageWorkflowConfigurationOnFailure": { + "type": "string" + }, + "aws-native:imagebuilder:ImageWorkflowParameter": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "array", + "items": { + "type": "string" + } + } + } + }, "aws-native:imagebuilder:InfrastructureConfigurationInstanceMetadataOptions": { "type": "object", "properties": { @@ -97617,6 +100783,9 @@ "aws-native:imagebuilder:LifecyclePolicyTimeUnit": { "type": "string" }, + "aws-native:imagebuilder:WorkflowType": { + "type": "string" + }, "aws-native:inspector:AssessmentTemplateTag": { "type": "object", "properties": { @@ -98171,6 +101340,22 @@ "aws-native:iot:CertificateMode": { "type": "string" }, + "aws-native:iot:CertificateProviderOperation": { + "type": "string" + }, + "aws-native:iot:CertificateProviderTag": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + }, + "value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 1 to 255 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:iot:CertificateStatus": { "type": "string" }, @@ -105926,7 +109111,8 @@ "type": "object", "properties": { "destination": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the destination resource." } } }, @@ -105934,7 +109120,8 @@ "type": "object", "properties": { "destination": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the destination resource." } } }, @@ -113954,6 +117141,24 @@ } } }, + "aws-native:osis:PipelineBufferOptions": { + "type": "object", + "properties": { + "persistentBufferEnabled": { + "type": "boolean", + "description": "Whether persistent buffering should be enabled." + } + } + }, + "aws-native:osis:PipelineEncryptionAtRestOptions": { + "type": "object", + "properties": { + "kmsKeyArn": { + "type": "string", + "description": "The KMS key to use for encrypting data. By default an AWS owned key is used" + } + } + }, "aws-native:osis:PipelineLogPublishingOptions": { "type": "object", "properties": { @@ -145255,6 +148460,9 @@ }, "logFilePrefix": { "type": "string" + }, + "targetObjectKeyFormat": { + "$ref": "#/types/aws-native:s3:BucketTargetObjectKeyFormat" } } }, @@ -145816,6 +149024,9 @@ } } }, + "aws-native:s3:BucketTargetObjectKeyFormat": { + "type": "object" + }, "aws-native:s3:BucketTiering": { "type": "object", "properties": { @@ -147101,6 +150312,42 @@ "aws-native:sagemaker:DomainAuthMode": { "type": "string" }, + "aws-native:sagemaker:DomainCodeEditorAppSettings": { + "type": "object", + "properties": { + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:DomainResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with CodeEditor apps." + } + } + }, + "aws-native:sagemaker:DomainCodeRepository": { + "type": "object", + "properties": { + "repositoryUrl": { + "type": "string", + "description": "A CodeRepository (valid URL) to be used within Jupyter's Git extension." + } + } + }, + "aws-native:sagemaker:DomainCustomFileSystemConfig": { + "type": "object", + "properties": { + "efsFileSystemConfig": { + "$ref": "#/types/aws-native:sagemaker:DomainEfsFileSystemConfig" + } + }, + "irreversibleNames": { + "efsFileSystemConfig": "EFSFileSystemConfig" + } + }, "aws-native:sagemaker:DomainCustomImage": { "type": "object", "properties": { @@ -147118,6 +150365,30 @@ } } }, + "aws-native:sagemaker:DomainCustomPosixUserConfig": { + "type": "object", + "properties": { + "gid": { + "type": "integer" + }, + "uid": { + "type": "integer" + } + } + }, + "aws-native:sagemaker:DomainDefaultEbsStorageSettings": { + "type": "object", + "properties": { + "defaultEbsVolumeSizeInGb": { + "type": "integer", + "description": "Default size of the Amazon EBS volume in Gb" + }, + "maximumEbsVolumeSizeInGb": { + "type": "integer", + "description": "Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb." + } + } + }, "aws-native:sagemaker:DomainDefaultSpaceSettings": { "type": "object", "properties": { @@ -147142,6 +150413,55 @@ } } }, + "aws-native:sagemaker:DomainDefaultSpaceStorageSettings": { + "type": "object", + "properties": { + "defaultEbsStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainDefaultEbsStorageSettings" + } + } + }, + "aws-native:sagemaker:DomainEfsFileSystemConfig": { + "type": "object", + "properties": { + "fileSystemId": { + "type": "string" + }, + "fileSystemPath": { + "type": "string" + } + } + }, + "aws-native:sagemaker:DomainJupyterLabAppSettings": { + "type": "object", + "properties": { + "codeRepositories": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCodeRepository" + }, + "description": "A list of CodeRepositories available for use with JupyterLab apps." + }, + "customImages": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomImage" + }, + "description": "A list of custom images for use for JupyterLab apps." + }, + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:DomainResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with JupyterLab apps." + } + } + }, "aws-native:sagemaker:DomainJupyterServerAppSettings": { "type": "object", "properties": { @@ -147298,10 +150618,29 @@ "aws-native:sagemaker:DomainUserSettings": { "type": "object", "properties": { + "codeEditorAppSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainCodeEditorAppSettings" + }, + "customFileSystemConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomFileSystemConfig" + } + }, + "customPosixUserConfig": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomPosixUserConfig" + }, + "defaultLandingUri": { + "type": "string", + "description": "Defines which Amazon SageMaker application users are directed to by default." + }, "executionRole": { "type": "string", "description": "The execution role for the user." }, + "jupyterLabAppSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainJupyterLabAppSettings" + }, "jupyterServerAppSettings": { "$ref": "#/types/aws-native:sagemaker:DomainJupyterServerAppSettings", "description": "The Jupyter server's app settings." @@ -147326,9 +150665,19 @@ "sharingSettings": { "$ref": "#/types/aws-native:sagemaker:DomainSharingSettings", "description": "The sharing settings." + }, + "spaceStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainDefaultSpaceStorageSettings" + }, + "studioWebPortal": { + "$ref": "#/types/aws-native:sagemaker:DomainUserSettingsStudioWebPortal", + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio." } } }, + "aws-native:sagemaker:DomainUserSettingsStudioWebPortal": { + "type": "string" + }, "aws-native:sagemaker:FeatureGroupDataCatalogConfig": { "type": "object", "properties": { @@ -147379,6 +150728,9 @@ "s3Uri": "S3Uri" } }, + "aws-native:sagemaker:FeatureGroupStorageType": { + "type": "string" + }, "aws-native:sagemaker:FeatureGroupTableFormat": { "type": "string" }, @@ -150403,6 +153755,9 @@ }, "securityConfig": { "$ref": "#/types/aws-native:sagemaker:FeatureGroupOnlineStoreSecurityConfig" + }, + "storageType": { + "$ref": "#/types/aws-native:sagemaker:FeatureGroupStorageType" } } }, @@ -150613,6 +153968,42 @@ } } }, + "aws-native:sagemaker:UserProfileCodeEditorAppSettings": { + "type": "object", + "properties": { + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:UserProfileResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with CodeEditor apps." + } + } + }, + "aws-native:sagemaker:UserProfileCodeRepository": { + "type": "object", + "properties": { + "repositoryUrl": { + "type": "string", + "description": "A CodeRepository (valid URL) to be used within Jupyter's Git extension." + } + } + }, + "aws-native:sagemaker:UserProfileCustomFileSystemConfig": { + "type": "object", + "properties": { + "efsFileSystemConfig": { + "$ref": "#/types/aws-native:sagemaker:UserProfileEfsFileSystemConfig" + } + }, + "irreversibleNames": { + "efsFileSystemConfig": "EFSFileSystemConfig" + } + }, "aws-native:sagemaker:UserProfileCustomImage": { "type": "object", "properties": { @@ -150630,6 +154021,79 @@ } } }, + "aws-native:sagemaker:UserProfileCustomPosixUserConfig": { + "type": "object", + "properties": { + "gid": { + "type": "integer" + }, + "uid": { + "type": "integer" + } + } + }, + "aws-native:sagemaker:UserProfileDefaultEbsStorageSettings": { + "type": "object", + "properties": { + "defaultEbsVolumeSizeInGb": { + "type": "integer", + "description": "Default size of the Amazon EBS volume in Gb" + }, + "maximumEbsVolumeSizeInGb": { + "type": "integer", + "description": "Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb." + } + } + }, + "aws-native:sagemaker:UserProfileDefaultSpaceStorageSettings": { + "type": "object", + "properties": { + "defaultEbsStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileDefaultEbsStorageSettings" + } + } + }, + "aws-native:sagemaker:UserProfileEfsFileSystemConfig": { + "type": "object", + "properties": { + "fileSystemId": { + "type": "string" + }, + "fileSystemPath": { + "type": "string" + } + } + }, + "aws-native:sagemaker:UserProfileJupyterLabAppSettings": { + "type": "object", + "properties": { + "codeRepositories": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCodeRepository" + }, + "description": "A list of CodeRepositories available for use with JupyterLab apps." + }, + "customImages": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomImage" + }, + "description": "A list of custom images available for use for JupyterLab apps" + }, + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:UserProfileResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with JupyterLab apps." + } + } + }, "aws-native:sagemaker:UserProfileJupyterServerAppSettings": { "type": "object", "properties": { @@ -150733,10 +154197,29 @@ "aws-native:sagemaker:UserProfileUserSettings": { "type": "object", "properties": { + "codeEditorAppSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCodeEditorAppSettings" + }, + "customFileSystemConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomFileSystemConfig" + } + }, + "customPosixUserConfig": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomPosixUserConfig" + }, + "defaultLandingUri": { + "type": "string", + "description": "Defines which Amazon SageMaker application users are directed to by default." + }, "executionRole": { "type": "string", "description": "The user profile Amazon Resource Name (ARN)." }, + "jupyterLabAppSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileJupyterLabAppSettings" + }, "jupyterServerAppSettings": { "$ref": "#/types/aws-native:sagemaker:UserProfileJupyterServerAppSettings", "description": "The Jupyter server's app settings." @@ -150758,9 +154241,19 @@ "sharingSettings": { "$ref": "#/types/aws-native:sagemaker:UserProfileSharingSettings", "description": "The sharing settings." + }, + "spaceStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileDefaultSpaceStorageSettings" + }, + "studioWebPortal": { + "$ref": "#/types/aws-native:sagemaker:UserProfileUserSettingsStudioWebPortal", + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio." } } }, + "aws-native:sagemaker:UserProfileUserSettingsStudioWebPortal": { + "type": "string" + }, "aws-native:scheduler:ScheduleAssignPublicIp": { "type": "string" }, @@ -151549,6 +155042,9 @@ } } }, + "aws-native:securityhub:HubTags": { + "type": "object" + }, "aws-native:securityhub:StandardsControl": { "type": "object", "properties": { @@ -157562,6 +161058,30 @@ "autoScalingGroupName" ] }, + "aws-native:b2bi:getCapability": { + "cf": "AWS::B2BI::Capability", + "ids": [ + "capabilityId" + ] + }, + "aws-native:b2bi:getPartnership": { + "cf": "AWS::B2BI::Partnership", + "ids": [ + "partnershipId" + ] + }, + "aws-native:b2bi:getProfile": { + "cf": "AWS::B2BI::Profile", + "ids": [ + "profileId" + ] + }, + "aws-native:b2bi:getTransformer": { + "cf": "AWS::B2BI::Transformer", + "ids": [ + "transformerId" + ] + }, "aws-native:backup:getBackupPlan": { "cf": "AWS::Backup::BackupPlan", "ids": [ @@ -157617,6 +161137,12 @@ "computeEnvironmentArn" ] }, + "aws-native:batch:getJobDefinition": { + "cf": "AWS::Batch::JobDefinition", + "ids": [ + "jobDefinitionArn" + ] + }, "aws-native:batch:getJobQueue": { "cf": "AWS::Batch::JobQueue", "ids": [ @@ -157649,6 +161175,18 @@ "tableName" ] }, + "aws-native:ce:getAnomalyMonitor": { + "cf": "AWS::CE::AnomalyMonitor", + "ids": [ + "monitorArn" + ] + }, + "aws-native:ce:getAnomalySubscription": { + "cf": "AWS::CE::AnomalySubscription", + "ids": [ + "subscriptionArn" + ] + }, "aws-native:ce:getCostCategory": { "cf": "AWS::CE::CostCategory", "ids": [ @@ -158425,6 +161963,24 @@ "directoryId" ] }, + "aws-native:dms:getDataProvider": { + "cf": "AWS::DMS::DataProvider", + "ids": [ + "dataProviderArn" + ] + }, + "aws-native:dms:getInstanceProfile": { + "cf": "AWS::DMS::InstanceProfile", + "ids": [ + "instanceProfileArn" + ] + }, + "aws-native:dms:getMigrationProject": { + "cf": "AWS::DMS::MigrationProject", + "ids": [ + "migrationProjectArn" + ] + }, "aws-native:dms:getReplicationConfig": { "cf": "AWS::DMS::ReplicationConfig", "ids": [ @@ -158696,6 +162252,18 @@ "routeTableId" ] }, + "aws-native:ec2:getSecurityGroupEgress": { + "cf": "AWS::EC2::SecurityGroupEgress", + "ids": [ + "id" + ] + }, + "aws-native:ec2:getSnapshotBlockPublicAccess": { + "cf": "AWS::EC2::SnapshotBlockPublicAccess", + "ids": [ + "accountId" + ] + }, "aws-native:ec2:getSpotFleet": { "cf": "AWS::EC2::SpotFleet", "ids": [ @@ -159178,12 +162746,30 @@ "arn" ] }, + "aws-native:eventschemas:getDiscoverer": { + "cf": "AWS::EventSchemas::Discoverer", + "ids": [ + "discovererArn" + ] + }, + "aws-native:eventschemas:getRegistry": { + "cf": "AWS::EventSchemas::Registry", + "ids": [ + "registryArn" + ] + }, "aws-native:eventschemas:getRegistryPolicy": { "cf": "AWS::EventSchemas::RegistryPolicy", "ids": [ "id" ] }, + "aws-native:eventschemas:getSchema": { + "cf": "AWS::EventSchemas::Schema", + "ids": [ + "schemaArn" + ] + }, "aws-native:evidently:getExperiment": { "cf": "AWS::Evidently::Experiment", "ids": [ @@ -159226,6 +162812,13 @@ "id" ] }, + "aws-native:fis:getTargetAccountConfiguration": { + "cf": "AWS::FIS::TargetAccountConfiguration", + "ids": [ + "experimentTemplateId", + "accountId" + ] + }, "aws-native:fms:getNotificationChannel": { "cf": "AWS::FMS::NotificationChannel", "ids": [ @@ -159606,6 +163199,12 @@ "arn" ] }, + "aws-native:imagebuilder:getWorkflow": { + "cf": "AWS::ImageBuilder::Workflow", + "ids": [ + "arn" + ] + }, "aws-native:inspector:getAssessmentTarget": { "cf": "AWS::Inspector::AssessmentTarget", "ids": [ @@ -159666,6 +163265,12 @@ "id" ] }, + "aws-native:iot:getCertificateProvider": { + "cf": "AWS::IoT::CertificateProvider", + "ids": [ + "certificateProviderName" + ] + }, "aws-native:iot:getCustomMetric": { "cf": "AWS::IoT::CustomMetric", "ids": [ @@ -160116,7 +163721,8 @@ "aws-native:lambda:getEventInvokeConfig": { "cf": "AWS::Lambda::EventInvokeConfig", "ids": [ - "id" + "functionName", + "qualifier" ] }, "aws-native:lambda:getEventSourceMapping": { @@ -161445,7 +165051,7 @@ "aws-native:route53resolver:getResolverConfig": { "cf": "AWS::Route53Resolver::ResolverConfig", "ids": [ - "id" + "resourceId" ] }, "aws-native:route53resolver:getResolverDnssecConfig": { @@ -161741,6 +165347,12 @@ "ruleArn" ] }, + "aws-native:securityhub:getHub": { + "cf": "AWS::SecurityHub::Hub", + "ids": [ + "arn" + ] + }, "aws-native:securityhub:getStandard": { "cf": "AWS::SecurityHub::Standard", "ids": [ diff --git a/provider/cmd/pulumi-resource-aws-native/schema.json b/provider/cmd/pulumi-resource-aws-native/schema.json index 1aed49d8ec..5cd8a95bfe 100644 --- a/provider/cmd/pulumi-resource-aws-native/schema.json +++ b/provider/cmd/pulumi-resource-aws-native/schema.json @@ -36,6 +36,7 @@ "auditmanager": "AuditManager", "autoscaling": "AutoScaling", "aws-native": "AwsNative", + "b2bi": "B2bi", "backup": "Backup", "backupgateway": "BackupGateway", "batch": "Batch", @@ -448,7 +449,7 @@ "properties": { "unusedAccessAge": { "type": "integer", - "description": "The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days." + "description": "The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days." } }, "type": "object" @@ -8766,7 +8767,11 @@ "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupVCpuCountRequest" } }, - "type": "object" + "type": "object", + "required": [ + "memoryMiB", + "vCpuCount" + ] }, "aws-native:autoscaling:AutoScalingGroupInstancesDistribution": { "properties": { @@ -9385,6 +9390,480 @@ }, "type": "object" }, + "aws-native:b2bi:CapabilityConfiguration0Properties": { + "properties": { + "edi": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiConfiguration" + } + }, + "type": "object", + "required": [ + "edi" + ] + }, + "aws-native:b2bi:CapabilityConfigurationProperties": { + "properties": { + "edi": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiConfiguration" + } + }, + "type": "object", + "required": [ + "edi" + ] + }, + "aws-native:b2bi:CapabilityEdiConfiguration": { + "properties": { + "inputLocation": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + }, + "outputLocation": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + }, + "transformerId": { + "type": "string" + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityEdiTypeProperties" + } + }, + "type": "object", + "required": [ + "inputLocation", + "outputLocation", + "transformerId", + "type" + ] + }, + "aws-native:b2bi:CapabilityEdiType0Properties": { + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Details" + } + }, + "type": "object", + "required": [ + "x12Details" + ] + }, + "aws-native:b2bi:CapabilityEdiTypeProperties": { + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Details" + } + }, + "type": "object", + "required": [ + "x12Details" + ] + }, + "aws-native:b2bi:CapabilityS3Location": { + "properties": { + "bucketName": { + "type": "string" + }, + "key": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:b2bi:CapabilityTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:b2bi:CapabilityType": { + "type": "string", + "enum": [ + { + "name": "Edi", + "value": "edi" + } + ] + }, + "aws-native:b2bi:CapabilityX12Details": { + "properties": { + "transactionSet": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12TransactionSet" + }, + "version": { + "$ref": "#/types/aws-native:b2bi:CapabilityX12Version" + } + }, + "type": "object" + }, + "aws-native:b2bi:CapabilityX12TransactionSet": { + "type": "string", + "enum": [ + { + "name": "X12110", + "value": "X12_110" + }, + { + "name": "X12180", + "value": "X12_180" + }, + { + "name": "X12204", + "value": "X12_204" + }, + { + "name": "X12210", + "value": "X12_210" + }, + { + "name": "X12214", + "value": "X12_214" + }, + { + "name": "X12215", + "value": "X12_215" + }, + { + "name": "X12310", + "value": "X12_310" + }, + { + "name": "X12315", + "value": "X12_315" + }, + { + "name": "X12322", + "value": "X12_322" + }, + { + "name": "X12404", + "value": "X12_404" + }, + { + "name": "X12410", + "value": "X12_410" + }, + { + "name": "X12820", + "value": "X12_820" + }, + { + "name": "X12824", + "value": "X12_824" + }, + { + "name": "X12830", + "value": "X12_830" + }, + { + "name": "X12846", + "value": "X12_846" + }, + { + "name": "X12850", + "value": "X12_850" + }, + { + "name": "X12852", + "value": "X12_852" + }, + { + "name": "X12855", + "value": "X12_855" + }, + { + "name": "X12856", + "value": "X12_856" + }, + { + "name": "X12860", + "value": "X12_860" + }, + { + "name": "X12861", + "value": "X12_861" + }, + { + "name": "X12864", + "value": "X12_864" + }, + { + "name": "X12940", + "value": "X12_940" + }, + { + "name": "X12990", + "value": "X12_990" + }, + { + "name": "X12997", + "value": "X12_997" + } + ] + }, + "aws-native:b2bi:CapabilityX12Version": { + "type": "string", + "enum": [ + { + "name": "Version4010", + "value": "VERSION_4010" + }, + { + "name": "Version4030", + "value": "VERSION_4030" + }, + { + "name": "Version5010", + "value": "VERSION_5010" + } + ] + }, + "aws-native:b2bi:PartnershipTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:b2bi:ProfileLogging": { + "type": "string", + "enum": [ + { + "name": "Enabled", + "value": "ENABLED" + }, + { + "name": "Disabled", + "value": "DISABLED" + } + ] + }, + "aws-native:b2bi:ProfileTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:b2bi:TransformerEdiType0Properties": { + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Details" + } + }, + "type": "object", + "required": [ + "x12Details" + ] + }, + "aws-native:b2bi:TransformerEdiTypeProperties": { + "properties": { + "x12Details": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Details" + } + }, + "type": "object", + "required": [ + "x12Details" + ] + }, + "aws-native:b2bi:TransformerFileFormat": { + "type": "string", + "enum": [ + { + "name": "Xml", + "value": "XML" + }, + { + "name": "Json", + "value": "JSON" + } + ] + }, + "aws-native:b2bi:TransformerStatus": { + "type": "string", + "enum": [ + { + "name": "Active", + "value": "active" + }, + { + "name": "Inactive", + "value": "inactive" + } + ] + }, + "aws-native:b2bi:TransformerTag": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:b2bi:TransformerX12Details": { + "properties": { + "transactionSet": { + "$ref": "#/types/aws-native:b2bi:TransformerX12TransactionSet" + }, + "version": { + "$ref": "#/types/aws-native:b2bi:TransformerX12Version" + } + }, + "type": "object" + }, + "aws-native:b2bi:TransformerX12TransactionSet": { + "type": "string", + "enum": [ + { + "name": "X12110", + "value": "X12_110" + }, + { + "name": "X12180", + "value": "X12_180" + }, + { + "name": "X12204", + "value": "X12_204" + }, + { + "name": "X12210", + "value": "X12_210" + }, + { + "name": "X12214", + "value": "X12_214" + }, + { + "name": "X12215", + "value": "X12_215" + }, + { + "name": "X12310", + "value": "X12_310" + }, + { + "name": "X12315", + "value": "X12_315" + }, + { + "name": "X12322", + "value": "X12_322" + }, + { + "name": "X12404", + "value": "X12_404" + }, + { + "name": "X12410", + "value": "X12_410" + }, + { + "name": "X12820", + "value": "X12_820" + }, + { + "name": "X12824", + "value": "X12_824" + }, + { + "name": "X12830", + "value": "X12_830" + }, + { + "name": "X12846", + "value": "X12_846" + }, + { + "name": "X12850", + "value": "X12_850" + }, + { + "name": "X12852", + "value": "X12_852" + }, + { + "name": "X12855", + "value": "X12_855" + }, + { + "name": "X12856", + "value": "X12_856" + }, + { + "name": "X12860", + "value": "X12_860" + }, + { + "name": "X12861", + "value": "X12_861" + }, + { + "name": "X12864", + "value": "X12_864" + }, + { + "name": "X12940", + "value": "X12_940" + }, + { + "name": "X12990", + "value": "X12_990" + }, + { + "name": "X12997", + "value": "X12_997" + } + ] + }, + "aws-native:b2bi:TransformerX12Version": { + "type": "string", + "enum": [ + { + "name": "Version4010", + "value": "VERSION_4010" + }, + { + "name": "Version4030", + "value": "VERSION_4030" + }, + { + "name": "Version5010", + "value": "VERSION_5010" + } + ] + }, "aws-native:backup:BackupPlanAdvancedBackupSettingResourceType": { "properties": { "backupOptions": { @@ -10041,6 +10520,634 @@ }, "type": "object" }, + "aws-native:batch:JobDefinitionContainerProperties": { + "properties": { + "command": { + "type": "array", + "items": { + "type": "string" + } + }, + "environment": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEnvironment" + } + }, + "ephemeralStorage": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesEphemeralStorageProperties" + }, + "executionRoleArn": { + "type": "string" + }, + "fargatePlatformConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties" + }, + "image": { + "type": "string" + }, + "instanceType": { + "type": "string" + }, + "jobRoleArn": { + "type": "string" + }, + "linuxParameters": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesLinuxParametersProperties" + }, + "logConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesLogConfigurationProperties" + }, + "memory": { + "type": "integer" + }, + "mountPoints": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionMountPoint" + } + }, + "networkConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesNetworkConfigurationProperties" + }, + "privileged": { + "type": "boolean" + }, + "readonlyRootFilesystem": { + "type": "boolean" + }, + "resourceRequirements": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionResourceRequirement" + } + }, + "runtimePlatform": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerPropertiesRuntimePlatformProperties" + }, + "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:JobDefinitionContainerPropertiesEphemeralStorageProperties": { + "properties": { + "sizeInGiB": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "sizeInGiB" + ] + }, + "aws-native:batch:JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties": { + "properties": { + "platformVersion": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionContainerPropertiesLinuxParametersProperties": { + "properties": { + "devices": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionDevice" + } + }, + "initProcessEnabled": { + "type": "boolean" + }, + "maxSwap": { + "type": "integer" + }, + "sharedMemorySize": { + "type": "integer" + }, + "swappiness": { + "type": "integer" + }, + "tmpfs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionTmpfs" + } + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionContainerPropertiesLogConfigurationProperties": { + "properties": { + "logDriver": { + "type": "string" + }, + "options": { + "$ref": "pulumi.json#/Any" + }, + "secretOptions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionSecret" + } + } + }, + "type": "object", + "required": [ + "logDriver" + ] + }, + "aws-native:batch:JobDefinitionContainerPropertiesNetworkConfigurationProperties": { + "properties": { + "assignPublicIp": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionContainerPropertiesRuntimePlatformProperties": { + "properties": { + "cpuArchitecture": { + "type": "string" + }, + "operatingSystemFamily": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionDevice": { + "properties": { + "containerPath": { + "type": "string" + }, + "hostPath": { + "type": "string" + }, + "permissions": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEfsAuthorizationConfig": { + "properties": { + "accessPointId": { + "type": "string" + }, + "iam": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEfsVolumeConfiguration": { + "properties": { + "authorizationConfig": { + "$ref": "#/types/aws-native:batch:JobDefinitionEfsAuthorizationConfig" + }, + "fileSystemId": { + "type": "string" + }, + "rootDirectory": { + "type": "string" + }, + "transitEncryption": { + "type": "string" + }, + "transitEncryptionPort": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "fileSystemId" + ] + }, + "aws-native:batch:JobDefinitionEksContainer": { + "properties": { + "args": { + "type": "array", + "items": { + "type": "string" + } + }, + "command": { + "type": "array", + "items": { + "type": "string" + } + }, + "env": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainerEnvironmentVariable" + } + }, + "image": { + "type": "string" + }, + "imagePullPolicy": { + "type": "string" + }, + "name": { + "type": "string" + }, + "resources": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainerResourceRequirements" + }, + "securityContext": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainerSecurityContext" + }, + "volumeMounts": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainerVolumeMount" + } + } + }, + "type": "object", + "required": [ + "image" + ] + }, + "aws-native:batch:JobDefinitionEksContainerEnvironmentVariable": { + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "name" + ] + }, + "aws-native:batch:JobDefinitionEksContainerResourceRequirements": { + "properties": { + "limits": { + "$ref": "pulumi.json#/Any" + }, + "requests": { + "$ref": "pulumi.json#/Any" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksContainerSecurityContext": { + "properties": { + "privileged": { + "type": "boolean" + }, + "readOnlyRootFilesystem": { + "type": "boolean" + }, + "runAsGroup": { + "type": "integer" + }, + "runAsNonRoot": { + "type": "boolean" + }, + "runAsUser": { + "type": "integer" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksContainerVolumeMount": { + "properties": { + "mountPath": { + "type": "string" + }, + "name": { + "type": "string" + }, + "readOnly": { + "type": "boolean" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksEmptyDir": { + "properties": { + "medium": { + "type": "string" + }, + "sizeLimit": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksHostPath": { + "properties": { + "path": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksMetadata": { + "properties": { + "labels": { + "$ref": "pulumi.json#/Any" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksPodProperties": { + "properties": { + "containers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksContainer" + } + }, + "dnsPolicy": { + "type": "string" + }, + "hostNetwork": { + "type": "boolean" + }, + "metadata": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksMetadata" + }, + "serviceAccountName": { + "type": "string" + }, + "volumes": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksVolume" + } + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksProperties": { + "properties": { + "podProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksPodProperties" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEksSecret": { + "properties": { + "optional": { + "type": "boolean" + }, + "secretName": { + "type": "string" + } + }, + "type": "object", + "required": [ + "secretName" + ] + }, + "aws-native:batch:JobDefinitionEksVolume": { + "properties": { + "emptyDir": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksEmptyDir" + }, + "hostPath": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksHostPath" + }, + "name": { + "type": "string" + }, + "secret": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksSecret" + } + }, + "type": "object", + "required": [ + "name" + ] + }, + "aws-native:batch:JobDefinitionEnvironment": { + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionEvaluateOnExit": { + "properties": { + "action": { + "type": "string" + }, + "onExitCode": { + "type": "string" + }, + "onReason": { + "type": "string" + }, + "onStatusReason": { + "type": "string" + } + }, + "type": "object", + "required": [ + "action" + ] + }, + "aws-native:batch:JobDefinitionHost": { + "properties": { + "sourcePath": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionJobTimeout": { + "properties": { + "attemptDurationSeconds": { + "type": "integer" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionMountPoint": { + "properties": { + "containerPath": { + "type": "string" + }, + "readOnly": { + "type": "boolean" + }, + "sourceVolume": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionNodeProperties": { + "properties": { + "mainNode": { + "type": "integer" + }, + "nodeRangeProperties": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionNodeRangeProperty" + } + }, + "numNodes": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "mainNode", + "nodeRangeProperties", + "numNodes" + ] + }, + "aws-native:batch:JobDefinitionNodeRangeProperty": { + "properties": { + "container": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties" + }, + "targetNodes": { + "type": "string" + } + }, + "type": "object", + "required": [ + "targetNodes" + ] + }, + "aws-native:batch:JobDefinitionResourceRequirement": { + "properties": { + "type": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionRetryStrategy": { + "properties": { + "attempts": { + "type": "integer" + }, + "evaluateOnExit": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:batch:JobDefinitionEvaluateOnExit" + } + } + }, + "type": "object" + }, + "aws-native:batch:JobDefinitionSecret": { + "properties": { + "name": { + "type": "string" + }, + "valueFrom": { + "type": "string" + } + }, + "type": "object", + "required": [ + "name", + "valueFrom" + ] + }, + "aws-native:batch:JobDefinitionTmpfs": { + "properties": { + "containerPath": { + "type": "string" + }, + "mountOptions": { + "type": "array", + "items": { + "type": "string" + } + }, + "size": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "containerPath", + "size" + ] + }, + "aws-native:batch:JobDefinitionUlimit": { + "properties": { + "hardLimit": { + "type": "integer" + }, + "name": { + "type": "string" + }, + "softLimit": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "hardLimit", + "name", + "softLimit" + ] + }, + "aws-native:batch:JobDefinitionVolume": { + "properties": { + "efsVolumeConfiguration": { + "$ref": "#/types/aws-native:batch:JobDefinitionEfsVolumeConfiguration" + }, + "host": { + "$ref": "#/types/aws-native:batch:JobDefinitionHost" + }, + "name": { + "type": "string" + } + }, + "type": "object" + }, "aws-native:batch:JobQueueComputeEnvironmentOrder": { "properties": { "computeEnvironment": { @@ -10536,6 +11643,127 @@ "value" ] }, + "aws-native:ce:AnomalyMonitorMonitorDimension": { + "description": "The dimensions to evaluate", + "type": "string", + "enum": [ + { + "name": "Service", + "value": "SERVICE" + } + ] + }, + "aws-native:ce:AnomalyMonitorMonitorType": { + "type": "string", + "enum": [ + { + "name": "Dimensional", + "value": "DIMENSIONAL" + }, + { + "name": "Custom", + "value": "CUSTOM" + } + ] + }, + "aws-native:ce:AnomalyMonitorResourceTag": { + "description": "A key-value pair to associate with a resource.", + "properties": { + "key": { + "type": "string", + "description": "The key name for the tag." + }, + "value": { + "type": "string", + "description": "The value for the tag." + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:ce:AnomalySubscriptionFrequency": { + "description": "The frequency at which anomaly reports are sent over email. ", + "type": "string", + "enum": [ + { + "name": "Daily", + "value": "DAILY" + }, + { + "name": "Immediate", + "value": "IMMEDIATE" + }, + { + "name": "Weekly", + "value": "WEEKLY" + } + ] + }, + "aws-native:ce:AnomalySubscriptionResourceTag": { + "description": "A key-value pair to associate with a resource.", + "properties": { + "key": { + "type": "string", + "description": "The key name for the tag." + }, + "value": { + "type": "string", + "description": "The value for the tag." + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:ce:AnomalySubscriptionSubscriber": { + "properties": { + "address": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriberStatus" + }, + "type": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriberType" + } + }, + "type": "object", + "required": [ + "address", + "type" + ] + }, + "aws-native:ce:AnomalySubscriptionSubscriberStatus": { + "type": "string", + "enum": [ + { + "name": "Confirmed", + "value": "CONFIRMED" + }, + { + "name": "Declined", + "value": "DECLINED" + } + ] + }, + "aws-native:ce:AnomalySubscriptionSubscriberType": { + "type": "string", + "enum": [ + { + "name": "Email", + "value": "EMAIL" + }, + { + "name": "Sns", + "value": "SNS" + } + ] + }, "aws-native:ce:CostCategoryRuleVersion": { "type": "string", "enum": [ @@ -10738,6 +11966,9 @@ "items": { "$ref": "#/types/aws-native:cleanrooms:CollaborationMemberAbility" } + }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration" } }, "type": "object", @@ -10747,6 +11978,28 @@ "memberAbilities" ] }, + "aws-native:cleanrooms:CollaborationPaymentConfiguration": { + "properties": { + "queryCompute": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationQueryComputePaymentConfig" + } + }, + "type": "object", + "required": [ + "queryCompute" + ] + }, + "aws-native:cleanrooms:CollaborationQueryComputePaymentConfig": { + "properties": { + "isResponsible": { + "type": "boolean" + } + }, + "type": "object", + "required": [ + "isResponsible" + ] + }, "aws-native:cleanrooms:CollaborationQueryLogStatus": { "type": "string", "enum": [ @@ -11174,6 +12427,17 @@ "value" ] }, + "aws-native:cleanrooms:MembershipPaymentConfiguration": { + "properties": { + "queryCompute": { + "$ref": "#/types/aws-native:cleanrooms:MembershipQueryComputePaymentConfig" + } + }, + "type": "object", + "required": [ + "queryCompute" + ] + }, "aws-native:cleanrooms:MembershipProtectedQueryOutputConfiguration": { "properties": { "s3": { @@ -11217,6 +12481,17 @@ "resultFormat" ] }, + "aws-native:cleanrooms:MembershipQueryComputePaymentConfig": { + "properties": { + "isResponsible": { + "type": "boolean" + } + }, + "type": "object", + "required": [ + "isResponsible" + ] + }, "aws-native:cleanrooms:MembershipQueryLogStatus": { "type": "string", "enum": [ @@ -13851,6 +15126,21 @@ "value" ] }, + "aws-native:codedeploy:DeploymentConfigMinimumHealthyHostsPerZone": { + "properties": { + "type": { + "type": "string" + }, + "value": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "type", + "value" + ] + }, "aws-native:codedeploy:DeploymentConfigTimeBasedCanary": { "properties": { "canaryInterval": { @@ -13898,6 +15188,20 @@ "type" ] }, + "aws-native:codedeploy:DeploymentConfigZonalConfig": { + "properties": { + "firstZoneMonitorDurationInSeconds": { + "type": "integer" + }, + "minimumHealthyHostsPerZone": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigMinimumHealthyHostsPerZone" + }, + "monitorDurationInSeconds": { + "type": "integer" + } + }, + "type": "object" + }, "aws-native:codeguruprofiler:AgentPermissionsProperties": { "description": "The agent permissions attached to this profiling group.", "properties": { @@ -17647,6 +18951,7 @@ }, "type": "object", "required": [ + "encryptionConfig", "prefix", "retentionPeriodHours" ] @@ -17691,6 +18996,24 @@ } ] }, + "aws-native:connect:InstanceTag": { + "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:connect:IntegrationAssociationIntegrationType": { "description": "Specifies the integration type to be associated with the instance", "type": "string", @@ -17702,6 +19025,10 @@ { "name": "LambdaFunction", "value": "LAMBDA_FUNCTION" + }, + { + "name": "Application", + "value": "APPLICATION" } ] }, @@ -18041,6 +19368,18 @@ "$ref": "#/types/aws-native:connect:RuleAssignContactCategoryAction" } }, + "createCaseActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleCreateCaseAction" + } + }, + "endAssociatedTaskActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleEndAssociatedTasksAction" + } + }, "eventBridgeActions": { "type": "array", "items": { @@ -18058,6 +19397,12 @@ "items": { "$ref": "#/types/aws-native:connect:RuleTaskAction" } + }, + "updateCaseActions": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleUpdateCaseAction" + } } }, "type": "object" @@ -18066,6 +19411,30 @@ "description": "The definition for assigning contact category action.", "type": "object" }, + "aws-native:connect:RuleCreateCaseAction": { + "description": "The definition for create case action.", + "properties": { + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleField" + } + }, + "templateId": { + "type": "string", + "description": "The Id of template." + } + }, + "type": "object", + "required": [ + "fields", + "templateId" + ] + }, + "aws-native:connect:RuleEndAssociatedTasksAction": { + "description": "The definition for ending associated task action.", + "type": "object" + }, "aws-native:connect:RuleEventBridgeAction": { "description": "The definition for event bridge action.", "properties": { @@ -18079,6 +19448,41 @@ "name" ] }, + "aws-native:connect:RuleField": { + "description": "The field of the case.", + "properties": { + "id": { + "type": "string", + "description": "The Id of the field" + }, + "value": { + "$ref": "#/types/aws-native:connect:RuleFieldValue" + } + }, + "type": "object", + "required": [ + "id", + "value" + ] + }, + "aws-native:connect:RuleFieldValue": { + "description": "The value of the field.", + "properties": { + "booleanValue": { + "type": "boolean" + }, + "doubleValue": { + "type": "number" + }, + "emptyValue": { + "$ref": "pulumi.json#/Any" + }, + "stringValue": { + "type": "string" + } + }, + "type": "object" + }, "aws-native:connect:RuleNotificationRecipientType": { "description": "The type of notification recipient.", "properties": { @@ -18261,9 +19665,32 @@ { "name": "OnMetricDataUpdate", "value": "OnMetricDataUpdate" + }, + { + "name": "OnCaseCreate", + "value": "OnCaseCreate" + }, + { + "name": "OnCasesUpdate", + "value": "OnCasesUpdate" } ] }, + "aws-native:connect:RuleUpdateCaseAction": { + "description": "The definition for update case action.", + "properties": { + "fields": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:RuleField" + } + } + }, + "type": "object", + "required": [ + "fields" + ] + }, "aws-native:connect:SecurityProfileTag": { "description": "A key-value pair to associate with a resource.", "properties": { @@ -23803,6 +25230,150 @@ "vpcId" ] }, + "aws-native:dms:DataProviderDmsSslModeValue": { + "type": "string", + "enum": [ + { + "name": "None", + "value": "none" + }, + { + "name": "Require", + "value": "require" + }, + { + "name": "VerifyCa", + "value": "verify_ca" + }, + { + "name": "VerifyFull", + "value": "verify_full" + } + ] + }, + "aws-native:dms:DataProviderEngine": { + "description": "The property describes a data engine for the data provider.", + "type": "string", + "enum": [ + { + "name": "Postgresql", + "value": "postgresql" + }, + { + "name": "Mysql", + "value": "mysql" + }, + { + "name": "Oracle", + "value": "oracle" + }, + { + "name": "Sqlserver", + "value": "sqlserver" + }, + { + "name": "Aurora", + "value": "aurora" + }, + { + "name": "AuroraPostgresql", + "value": "aurora_postgresql" + } + ] + }, + "aws-native:dms:DataProviderTag": { + "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:dms:InstanceProfileNetworkType": { + "description": "The property describes a network type for the instance profile.", + "type": "string", + "enum": [ + { + "name": "Ipv4", + "value": "IPV4" + }, + { + "name": "Ipv6", + "value": "IPV6" + }, + { + "name": "Dual", + "value": "DUAL" + } + ] + }, + "aws-native:dms:InstanceProfileTag": { + "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:dms:MigrationProjectDataProviderDescriptor": { + "description": "It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject", + "properties": { + "dataProviderArn": { + "type": "string" + }, + "dataProviderIdentifier": { + "type": "string" + }, + "dataProviderName": { + "type": "string" + }, + "secretsManagerAccessRoleArn": { + "type": "string" + }, + "secretsManagerSecretId": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:dms:MigrationProjectTag": { + "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:dms:ReplicationConfigComputeConfig": { "description": "Configuration parameters for provisioning a AWS DMS Serverless replication", "properties": { @@ -23878,6 +25449,146 @@ "value" ] }, + "aws-native:dms:SchemaConversionApplicationAttributesProperties": { + "description": "The property describes schema conversion application attributes for the migration project.", + "properties": { + "s3BucketPath": { + "type": "string" + }, + "s3BucketRoleArn": { + "type": "string" + } + }, + "type": "object" + }, + "aws-native:dms:Settings0Properties": { + "description": "PostgreSqlSettings property identifier.", + "properties": { + "postgreSqlSettings": { + "$ref": "#/types/aws-native:dms:Settings0PropertiesPostgreSqlSettingsProperties" + } + }, + "type": "object" + }, + "aws-native:dms:Settings0PropertiesPostgreSqlSettingsProperties": { + "properties": { + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + }, + "type": "object" + }, + "aws-native:dms:Settings1Properties": { + "description": "MySqlSettings property identifier.", + "properties": { + "mySqlSettings": { + "$ref": "#/types/aws-native:dms:Settings1PropertiesMySqlSettingsProperties" + } + }, + "type": "object" + }, + "aws-native:dms:Settings1PropertiesMySqlSettingsProperties": { + "properties": { + "certificateArn": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + }, + "type": "object" + }, + "aws-native:dms:Settings2Properties": { + "description": "OracleSettings property identifier.", + "properties": { + "oracleSettings": { + "$ref": "#/types/aws-native:dms:Settings2PropertiesOracleSettingsProperties" + } + }, + "type": "object" + }, + "aws-native:dms:Settings2PropertiesOracleSettingsProperties": { + "properties": { + "asmServer": { + "type": "string" + }, + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "secretsManagerOracleAsmAccessRoleArn": { + "type": "string" + }, + "secretsManagerOracleAsmSecretId": { + "type": "string" + }, + "secretsManagerSecurityDbEncryptionAccessRoleArn": { + "type": "string" + }, + "secretsManagerSecurityDbEncryptionSecretId": { + "type": "string" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + }, + "type": "object" + }, + "aws-native:dms:Settings3Properties": { + "description": "MicrosoftSqlServerSettings property identifier.", + "properties": { + "microsoftSqlServerSettings": { + "$ref": "#/types/aws-native:dms:Settings3PropertiesMicrosoftSqlServerSettingsProperties" + } + }, + "type": "object" + }, + "aws-native:dms:Settings3PropertiesMicrosoftSqlServerSettingsProperties": { + "properties": { + "certificateArn": { + "type": "string" + }, + "databaseName": { + "type": "string" + }, + "port": { + "type": "integer" + }, + "serverName": { + "type": "string" + }, + "sslMode": { + "$ref": "#/types/aws-native:dms:DataProviderDmsSslModeValue" + } + }, + "type": "object" + }, "aws-native:docdbelastic:ClusterTag": { "properties": { "key": { @@ -27843,6 +29554,20 @@ "value" ] }, + "aws-native:ec2:SnapshotBlockPublicAccessState": { + "description": "The state of EBS Snapshot Block Public Access.", + "type": "string", + "enum": [ + { + "name": "BlockAllSharing", + "value": "block-all-sharing" + }, + { + "name": "BlockNewSharing", + "value": "block-new-sharing" + } + ] + }, "aws-native:ec2:SpotFleetAcceleratorCountRequest": { "properties": { "max": { @@ -29473,6 +31198,10 @@ "aws-native:ec2:VerifiedAccessTrustProviderDeviceOptions": { "description": "The options for device identity based trust providers.", "properties": { + "publicSigningKeyUrl": { + "type": "string", + "description": "URL Verified Access will use to verify authenticity of the device tokens." + }, "tenantId": { "type": "string", "description": "The ID of the tenant application with the device-identity provider." @@ -29811,6 +31540,9 @@ "type": "string", "replaceOnChanges": true }, + "managedDraining": { + "$ref": "#/types/aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedDraining" + }, "managedScaling": { "$ref": "#/types/aws-native:ecs:CapacityProviderManagedScaling" }, @@ -29823,6 +31555,19 @@ "autoScalingGroupArn" ] }, + "aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedDraining": { + "type": "string", + "enum": [ + { + "name": "Disabled", + "value": "DISABLED" + }, + { + "name": "Enabled", + "value": "ENABLED" + } + ] + }, "aws-native:ecs:CapacityProviderAutoScalingGroupProviderManagedTerminationProtection": { "type": "string", "enum": [ @@ -31412,6 +33157,39 @@ "value" ] }, + "aws-native:eks:ClusterAccessConfig": { + "description": "An object representing the Access Config to use for the cluster.", + "properties": { + "authenticationMode": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfigAuthenticationMode", + "description": "Specify the authentication mode that should be used to create your cluster." + }, + "bootstrapClusterCreatorAdminPermissions": { + "type": "boolean", + "description": "Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster.", + "replaceOnChanges": true + } + }, + "type": "object" + }, + "aws-native:eks:ClusterAccessConfigAuthenticationMode": { + "description": "Specify the authentication mode that should be used to create your cluster.", + "type": "string", + "enum": [ + { + "name": "ConfigMap", + "value": "CONFIG_MAP" + }, + { + "name": "ApiAndConfigMap", + "value": "API_AND_CONFIG_MAP" + }, + { + "name": "Api", + "value": "API" + } + ] + }, "aws-native:eks:ClusterControlPlanePlacement": { "description": "Specify the placement group of the control plane machines for your cluster.", "properties": { @@ -32987,6 +34765,20 @@ } ] }, + "aws-native:emr:StudioIdcUserAssignment": { + "description": "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio.", + "type": "string", + "enum": [ + { + "name": "Required", + "value": "REQUIRED" + }, + { + "name": "Optional", + "value": "OPTIONAL" + } + ] + }, "aws-native:emr:StudioSessionMappingIdentityType": { "description": "Specifies whether the identity to map to the Studio is a user or a group.", "type": "string", @@ -34472,6 +36264,51 @@ "id" ] }, + "aws-native:eventschemas:DiscovererTagsEntry": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:eventschemas:RegistryTagsEntry": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, + "aws-native:eventschemas:SchemaTagsEntry": { + "properties": { + "key": { + "type": "string" + }, + "value": { + "type": "string" + } + }, + "type": "object", + "required": [ + "key", + "value" + ] + }, "aws-native:evidently:ExperimentMetricGoalObject": { "properties": { "desiredChange": { @@ -35041,6 +36878,47 @@ "description": "The actions for the experiment.", "type": "object" }, + "aws-native:fis:ExperimentTemplateExperimentOptions": { + "properties": { + "accountTargeting": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptionsAccountTargeting", + "description": "The account targeting setting for the experiment template." + }, + "emptyTargetResolutionMode": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode", + "description": "The target resolution failure mode for the experiment template." + } + }, + "type": "object" + }, + "aws-native:fis:ExperimentTemplateExperimentOptionsAccountTargeting": { + "description": "The account targeting setting for the experiment template.", + "type": "string", + "enum": [ + { + "name": "MultiAccount", + "value": "multi-account" + }, + { + "name": "SingleAccount", + "value": "single-account" + } + ] + }, + "aws-native:fis:ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode": { + "description": "The target resolution failure mode for the experiment template.", + "type": "string", + "enum": [ + { + "name": "Fail", + "value": "fail" + }, + { + "name": "Skip", + "value": "skip" + } + ] + }, "aws-native:fis:ExperimentTemplateLogConfiguration": { "properties": { "cloudWatchLogsConfiguration": { @@ -36658,6 +38536,20 @@ "cost" ] }, + "aws-native:gamelift:FleetApplyCapacity": { + "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", + "type": "string", + "enum": [ + { + "name": "OnUpdate", + "value": "ON_UPDATE" + }, + { + "name": "OnCreateAndUpdate", + "value": "ON_CREATE_AND_UPDATE" + } + ] + }, "aws-native:gamelift:FleetCertificateConfiguration": { "description": "Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.", "properties": { @@ -39993,6 +41885,60 @@ } ] }, + "aws-native:imagebuilder:ImagePipelineWorkflowConfiguration": { + "description": "The workflow configuration of the image", + "properties": { + "onFailure": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfigurationOnFailure", + "description": "Define execution decision in case of workflow failure" + }, + "parallelGroup": { + "type": "string", + "description": "The parallel group name" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowParameter" + }, + "description": "The parameters associated with the workflow" + }, + "workflowArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow" + } + }, + "type": "object" + }, + "aws-native:imagebuilder:ImagePipelineWorkflowConfigurationOnFailure": { + "description": "Define execution decision in case of workflow failure", + "type": "string", + "enum": [ + { + "name": "Continue", + "value": "CONTINUE" + }, + { + "name": "Abort", + "value": "ABORT" + } + ] + }, + "aws-native:imagebuilder:ImagePipelineWorkflowParameter": { + "description": "A parameter associated with the workflow", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, "aws-native:imagebuilder:ImageRecipeAdditionalInstanceConfiguration": { "description": "Specify additional settings and launch scripts for your build instances.", "properties": { @@ -40177,6 +42123,60 @@ }, "type": "object" }, + "aws-native:imagebuilder:ImageWorkflowConfiguration": { + "description": "The workflow configuration of the image", + "properties": { + "onFailure": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfigurationOnFailure", + "description": "Define execution decision in case of workflow failure" + }, + "parallelGroup": { + "type": "string", + "description": "The parallel group name" + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowParameter" + }, + "description": "The parameters associated with the workflow" + }, + "workflowArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow" + } + }, + "type": "object" + }, + "aws-native:imagebuilder:ImageWorkflowConfigurationOnFailure": { + "description": "Define execution decision in case of workflow failure", + "type": "string", + "enum": [ + { + "name": "Continue", + "value": "CONTINUE" + }, + { + "name": "Abort", + "value": "ABORT" + } + ] + }, + "aws-native:imagebuilder:ImageWorkflowParameter": { + "description": "A parameter associated with the workflow", + "properties": { + "name": { + "type": "string" + }, + "value": { + "type": "array", + "items": { + "type": "string" + } + } + }, + "type": "object" + }, "aws-native:imagebuilder:InfrastructureConfigurationInstanceMetadataOptions": { "description": "The instance metadata option settings for the infrastructure configuration.", "properties": { @@ -40486,6 +42486,24 @@ } ] }, + "aws-native:imagebuilder:WorkflowType": { + "description": "The type of the workflow denotes whether the workflow is used to build, test, or distribute.", + "type": "string", + "enum": [ + { + "name": "Build", + "value": "BUILD" + }, + { + "name": "Test", + "value": "TEST" + }, + { + "name": "Distribution", + "value": "DISTRIBUTION" + } + ] + }, "aws-native:index/Region:Region": { "description": "A Region represents any valid Amazon region that may be targeted with deployments.", "type": "string", @@ -42921,6 +44939,33 @@ } ] }, + "aws-native:iot:CertificateProviderOperation": { + "type": "string", + "enum": [ + { + "name": "CreateCertificateFromCsr", + "value": "CreateCertificateFromCsr" + } + ] + }, + "aws-native:iot:CertificateProviderTag": { + "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 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -." + }, + "value": { + "type": "string", + "description": "The value for the tag. You can specify a value that is 1 to 255 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:iot:CertificateStatus": { "type": "string", "enum": [ @@ -52904,6 +54949,10 @@ "name": "RecordDeAggregation", "value": "RecordDeAggregation" }, + { + "name": "Decompression", + "value": "Decompression" + }, { "name": "Lambda", "value": "Lambda" @@ -53830,6 +55879,7 @@ ] }, "aws-native:lambda:EventInvokeConfigDestinationConfig": { + "description": "A destination for events after they have been sent to a function for processing.", "properties": { "onFailure": { "$ref": "#/types/aws-native:lambda:EventInvokeConfigOnFailure" @@ -53841,9 +55891,11 @@ "type": "object" }, "aws-native:lambda:EventInvokeConfigOnFailure": { + "description": "The destination configuration for failed invocations.", "properties": { "destination": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the destination resource." } }, "type": "object", @@ -53852,9 +55904,11 @@ ] }, "aws-native:lambda:EventInvokeConfigOnSuccess": { + "description": "The destination configuration for successful invocations.", "properties": { "destination": { - "type": "string" + "type": "string", + "description": "The Amazon Resource Name (ARN) of the destination resource." } }, "type": "object", @@ -65946,6 +68000,32 @@ "value" ] }, + "aws-native:osis:PipelineBufferOptions": { + "description": "Key-value pairs to configure buffering.", + "properties": { + "persistentBufferEnabled": { + "type": "boolean", + "description": "Whether persistent buffering should be enabled." + } + }, + "type": "object", + "required": [ + "persistentBufferEnabled" + ] + }, + "aws-native:osis:PipelineEncryptionAtRestOptions": { + "description": "Key-value pairs to configure encryption at rest.", + "properties": { + "kmsKeyArn": { + "type": "string", + "description": "The KMS key to use for encrypting data. By default an AWS owned key is used" + } + }, + "type": "object", + "required": [ + "kmsKeyArn" + ] + }, "aws-native:osis:PipelineLogPublishingOptions": { "description": "Key-value pairs to configure log publishing.", "properties": { @@ -65967,7 +68047,10 @@ "type": "string" } }, - "type": "object" + "type": "object", + "required": [ + "logGroup" + ] }, "aws-native:osis:PipelineTag": { "description": "A key-value pair to associate with a resource.", @@ -66022,7 +68105,10 @@ "description": "A list of subnet IDs associated with the VPC endpoint." } }, - "type": "object" + "type": "object", + "required": [ + "subnetIds" + ] }, "aws-native:panorama:ApplicationInstanceHealthStatus": { "type": "string", @@ -108215,6 +110301,18 @@ { "name": "BucketKeyStatus", "value": "BucketKeyStatus" + }, + { + "name": "ChecksumAlgorithm", + "value": "ChecksumAlgorithm" + }, + { + "name": "ObjectAccessControlList", + "value": "ObjectAccessControlList" + }, + { + "name": "ObjectOwner", + "value": "ObjectOwner" } ] }, @@ -108277,6 +110375,9 @@ }, "logFilePrefix": { "type": "string" + }, + "targetObjectKeyFormat": { + "$ref": "#/types/aws-native:s3:BucketTargetObjectKeyFormat" } }, "type": "object" @@ -109100,6 +111201,10 @@ "value" ] }, + "aws-native:s3:BucketTargetObjectKeyFormat": { + "description": "Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix.", + "type": "object" + }, "aws-native:s3:BucketTiering": { "properties": { "accessTier": { @@ -109780,7 +111885,7 @@ ] }, "aws-native:s3express:DirectoryBucketDataRedundancy": { - "description": "Specifies the number of Avilability Zone that's used for redundancy for the bucket.", + "description": "Specifies the number of Availability Zone that's used for redundancy for the bucket.", "type": "string", "enum": [ { @@ -110478,6 +112583,18 @@ { "name": "MlGeospatialInteractive", "value": "ml.geospatial.interactive" + }, + { + "name": "MlTrn12xlarge", + "value": "ml.trn1.2xlarge" + }, + { + "name": "MlTrn132xlarge", + "value": "ml.trn1.32xlarge" + }, + { + "name": "MlTrn1n32xlarge", + "value": "ml.trn1n.32xlarge" } ] }, @@ -111056,6 +113173,43 @@ } ] }, + "aws-native:sagemaker:DomainCodeEditorAppSettings": { + "description": "The CodeEditor app settings.", + "properties": { + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:DomainResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with CodeEditor apps." + } + }, + "type": "object" + }, + "aws-native:sagemaker:DomainCodeRepository": { + "properties": { + "repositoryUrl": { + "type": "string", + "description": "A CodeRepository (valid URL) to be used within Jupyter's Git extension." + } + }, + "type": "object", + "required": [ + "repositoryUrl" + ] + }, + "aws-native:sagemaker:DomainCustomFileSystemConfig": { + "properties": { + "efsFileSystemConfig": { + "$ref": "#/types/aws-native:sagemaker:DomainEfsFileSystemConfig" + } + }, + "type": "object" + }, "aws-native:sagemaker:DomainCustomImage": { "description": "A custom SageMaker image.", "properties": { @@ -111078,6 +113232,39 @@ "imageName" ] }, + "aws-native:sagemaker:DomainCustomPosixUserConfig": { + "properties": { + "gid": { + "type": "integer" + }, + "uid": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "gid", + "uid" + ] + }, + "aws-native:sagemaker:DomainDefaultEbsStorageSettings": { + "description": "Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS", + "properties": { + "defaultEbsVolumeSizeInGb": { + "type": "integer", + "description": "Default size of the Amazon EBS volume in Gb" + }, + "maximumEbsVolumeSizeInGb": { + "type": "integer", + "description": "Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb." + } + }, + "type": "object", + "required": [ + "defaultEbsVolumeSizeInGb", + "maximumEbsVolumeSizeInGb" + ] + }, "aws-native:sagemaker:DomainDefaultSpaceSettings": { "description": "A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the Create/Update Domain API is called.", "properties": { @@ -111106,6 +113293,60 @@ "executionRole" ] }, + "aws-native:sagemaker:DomainDefaultSpaceStorageSettings": { + "description": "Default storage settings for a space.", + "properties": { + "defaultEbsStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainDefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "aws-native:sagemaker:DomainEfsFileSystemConfig": { + "properties": { + "fileSystemId": { + "type": "string" + }, + "fileSystemPath": { + "type": "string" + } + }, + "type": "object", + "required": [ + "fileSystemId" + ] + }, + "aws-native:sagemaker:DomainJupyterLabAppSettings": { + "description": "The JupyterLab app settings.", + "properties": { + "codeRepositories": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCodeRepository" + }, + "description": "A list of CodeRepositories available for use with JupyterLab apps." + }, + "customImages": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomImage" + }, + "description": "A list of custom images for use for JupyterLab apps." + }, + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:DomainResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with JupyterLab apps." + } + }, + "type": "object" + }, "aws-native:sagemaker:DomainJupyterServerAppSettings": { "description": "The JupyterServer app settings.", "properties": { @@ -111479,6 +113720,18 @@ { "name": "MlGeospatialInteractive", "value": "ml.geospatial.interactive" + }, + { + "name": "MlTrn12xlarge", + "value": "ml.trn1.2xlarge" + }, + { + "name": "MlTrn132xlarge", + "value": "ml.trn1.32xlarge" + }, + { + "name": "MlTrn1n32xlarge", + "value": "ml.trn1n.32xlarge" } ] }, @@ -111548,10 +113801,29 @@ "aws-native:sagemaker:DomainUserSettings": { "description": "A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called.", "properties": { + "codeEditorAppSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainCodeEditorAppSettings" + }, + "customFileSystemConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomFileSystemConfig" + } + }, + "customPosixUserConfig": { + "$ref": "#/types/aws-native:sagemaker:DomainCustomPosixUserConfig" + }, + "defaultLandingUri": { + "type": "string", + "description": "Defines which Amazon SageMaker application users are directed to by default." + }, "executionRole": { "type": "string", "description": "The execution role for the user." }, + "jupyterLabAppSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainJupyterLabAppSettings" + }, "jupyterServerAppSettings": { "$ref": "#/types/aws-native:sagemaker:DomainJupyterServerAppSettings", "description": "The Jupyter server's app settings." @@ -111576,6 +113848,13 @@ "sharingSettings": { "$ref": "#/types/aws-native:sagemaker:DomainSharingSettings", "description": "The sharing settings." + }, + "spaceStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:DomainDefaultSpaceStorageSettings" + }, + "studioWebPortal": { + "$ref": "#/types/aws-native:sagemaker:DomainUserSettingsStudioWebPortal", + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio." } }, "type": "object", @@ -111583,6 +113862,20 @@ "executionRole" ] }, + "aws-native:sagemaker:DomainUserSettingsStudioWebPortal": { + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio.", + "type": "string", + "enum": [ + { + "name": "Enabled", + "value": "ENABLED" + }, + { + "name": "Disabled", + "value": "DISABLED" + } + ] + }, "aws-native:sagemaker:FeatureGroupDataCatalogConfig": { "properties": { "catalog": { @@ -111656,6 +113949,19 @@ "s3Uri" ] }, + "aws-native:sagemaker:FeatureGroupStorageType": { + "type": "string", + "enum": [ + { + "name": "Standard", + "value": "Standard" + }, + { + "name": "InMemory", + "value": "InMemory" + } + ] + }, "aws-native:sagemaker:FeatureGroupTableFormat": { "description": "Format for the offline store feature group. Iceberg is the optimal format for feature groups shared between offline and online stores.", "type": "string", @@ -115848,6 +118154,9 @@ }, "securityConfig": { "$ref": "#/types/aws-native:sagemaker:FeatureGroupOnlineStoreSecurityConfig" + }, + "storageType": { + "$ref": "#/types/aws-native:sagemaker:FeatureGroupStorageType" } }, "type": "object" @@ -116374,6 +118683,43 @@ "value" ] }, + "aws-native:sagemaker:UserProfileCodeEditorAppSettings": { + "description": "The CodeEditor app settings.", + "properties": { + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:UserProfileResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with CodeEditor apps." + } + }, + "type": "object" + }, + "aws-native:sagemaker:UserProfileCodeRepository": { + "properties": { + "repositoryUrl": { + "type": "string", + "description": "A CodeRepository (valid URL) to be used within Jupyter's Git extension." + } + }, + "type": "object", + "required": [ + "repositoryUrl" + ] + }, + "aws-native:sagemaker:UserProfileCustomFileSystemConfig": { + "properties": { + "efsFileSystemConfig": { + "$ref": "#/types/aws-native:sagemaker:UserProfileEfsFileSystemConfig" + } + }, + "type": "object" + }, "aws-native:sagemaker:UserProfileCustomImage": { "description": "A custom SageMaker image.", "properties": { @@ -116396,6 +118742,93 @@ "imageName" ] }, + "aws-native:sagemaker:UserProfileCustomPosixUserConfig": { + "properties": { + "gid": { + "type": "integer" + }, + "uid": { + "type": "integer" + } + }, + "type": "object", + "required": [ + "gid", + "uid" + ] + }, + "aws-native:sagemaker:UserProfileDefaultEbsStorageSettings": { + "description": "Properties related to the Amazon Elastic Block Store volume.", + "properties": { + "defaultEbsVolumeSizeInGb": { + "type": "integer", + "description": "Default size of the Amazon EBS volume in Gb" + }, + "maximumEbsVolumeSizeInGb": { + "type": "integer", + "description": "Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb." + } + }, + "type": "object", + "required": [ + "defaultEbsVolumeSizeInGb", + "maximumEbsVolumeSizeInGb" + ] + }, + "aws-native:sagemaker:UserProfileDefaultSpaceStorageSettings": { + "description": "Default storage settings for a space.", + "properties": { + "defaultEbsStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileDefaultEbsStorageSettings" + } + }, + "type": "object" + }, + "aws-native:sagemaker:UserProfileEfsFileSystemConfig": { + "properties": { + "fileSystemId": { + "type": "string" + }, + "fileSystemPath": { + "type": "string" + } + }, + "type": "object", + "required": [ + "fileSystemId" + ] + }, + "aws-native:sagemaker:UserProfileJupyterLabAppSettings": { + "description": "The JupyterLab app settings.", + "properties": { + "codeRepositories": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCodeRepository" + }, + "description": "A list of CodeRepositories available for use with JupyterLab apps." + }, + "customImages": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomImage" + }, + "description": "A list of custom images available for use for JupyterLab apps" + }, + "defaultResourceSpec": { + "$ref": "#/types/aws-native:sagemaker:UserProfileResourceSpec", + "description": "The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app." + }, + "lifecycleConfigArns": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of LifecycleConfigArns available for use with JupyterLab apps." + } + }, + "type": "object" + }, "aws-native:sagemaker:UserProfileJupyterServerAppSettings": { "description": "The JupyterServer app settings.", "properties": { @@ -116726,6 +119159,18 @@ { "name": "MlGeospatialInteractive", "value": "ml.geospatial.interactive" + }, + { + "name": "MlTrn12xlarge", + "value": "ml.trn1.2xlarge" + }, + { + "name": "MlTrn132xlarge", + "value": "ml.trn1.32xlarge" + }, + { + "name": "MlTrn1n32xlarge", + "value": "ml.trn1n.32xlarge" } ] }, @@ -116779,10 +119224,29 @@ "aws-native:sagemaker:UserProfileUserSettings": { "description": "A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called.", "properties": { + "codeEditorAppSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCodeEditorAppSettings" + }, + "customFileSystemConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomFileSystemConfig" + } + }, + "customPosixUserConfig": { + "$ref": "#/types/aws-native:sagemaker:UserProfileCustomPosixUserConfig" + }, + "defaultLandingUri": { + "type": "string", + "description": "Defines which Amazon SageMaker application users are directed to by default." + }, "executionRole": { "type": "string", "description": "The user profile Amazon Resource Name (ARN)." }, + "jupyterLabAppSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileJupyterLabAppSettings" + }, "jupyterServerAppSettings": { "$ref": "#/types/aws-native:sagemaker:UserProfileJupyterServerAppSettings", "description": "The Jupyter server's app settings." @@ -116804,10 +119268,31 @@ "sharingSettings": { "$ref": "#/types/aws-native:sagemaker:UserProfileSharingSettings", "description": "The sharing settings." + }, + "spaceStorageSettings": { + "$ref": "#/types/aws-native:sagemaker:UserProfileDefaultSpaceStorageSettings" + }, + "studioWebPortal": { + "$ref": "#/types/aws-native:sagemaker:UserProfileUserSettingsStudioWebPortal", + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio." } }, "type": "object" }, + "aws-native:sagemaker:UserProfileUserSettingsStudioWebPortal": { + "description": "Indicates whether the Studio experience is available to users. If not, users cannot access Studio.", + "type": "string", + "enum": [ + { + "name": "Enabled", + "value": "ENABLED" + }, + { + "name": "Disabled", + "value": "DISABLED" + } + ] + }, "aws-native:scheduler:ScheduleAssignPublicIp": { "description": "Specifies whether the task's elastic network interface receives a public IP address. You can specify ENABLED only when LaunchType in EcsParameters is set to FARGATE.", "type": "string", @@ -117895,6 +120380,10 @@ }, "type": "object" }, + "aws-native:securityhub:HubTags": { + "description": "A key-value pair to associate with a resource.", + "type": "object" + }, "aws-native:securityhub:StandardsControl": { "description": "An individual StandardsControl within the Standard.", "properties": { @@ -133638,6 +136127,339 @@ "autoScalingGroupName" ] }, + "aws-native:b2bi:Capability": { + "description": "Definition of AWS::B2BI::Capability Resource Type", + "properties": { + "capabilityArn": { + "type": "string" + }, + "capabilityId": { + "type": "string" + }, + "configuration": { + "$ref": "#/types/aws-native:b2bi:CapabilityConfigurationProperties" + }, + "createdAt": { + "type": "string" + }, + "instructionsDocuments": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + } + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityTag" + } + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityType", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "capabilityArn", + "capabilityId", + "configuration", + "createdAt", + "modifiedAt", + "name", + "type" + ], + "inputProperties": { + "configuration": { + "$ref": "#/types/aws-native:b2bi:CapabilityConfigurationProperties" + }, + "instructionsDocuments": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + } + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityTag" + } + }, + "type": { + "$ref": "#/types/aws-native:b2bi:CapabilityType" + } + }, + "requiredInputs": [ + "configuration", + "type" + ] + }, + "aws-native:b2bi:Partnership": { + "description": "Definition of AWS::B2BI::Partnership Resource Type", + "properties": { + "capabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "createdAt": { + "type": "string" + }, + "email": { + "type": "string", + "replaceOnChanges": true + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "partnershipArn": { + "type": "string" + }, + "partnershipId": { + "type": "string" + }, + "phone": { + "type": "string", + "replaceOnChanges": true + }, + "profileId": { + "type": "string", + "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:PartnershipTag" + } + }, + "tradingPartnerId": { + "type": "string" + } + }, + "type": "object", + "required": [ + "createdAt", + "email", + "modifiedAt", + "name", + "partnershipArn", + "partnershipId", + "profileId", + "tradingPartnerId" + ], + "inputProperties": { + "capabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "email": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "profileId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:PartnershipTag" + } + } + }, + "requiredInputs": [ + "email", + "profileId" + ] + }, + "aws-native:b2bi:Profile": { + "description": "Definition of AWS::B2BI::Profile Resource Type", + "properties": { + "businessName": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "email": { + "type": "string" + }, + "logGroupName": { + "type": "string" + }, + "logging": { + "$ref": "#/types/aws-native:b2bi:ProfileLogging", + "replaceOnChanges": true + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "profileArn": { + "type": "string" + }, + "profileId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:ProfileTag" + } + } + }, + "type": "object", + "required": [ + "businessName", + "createdAt", + "logGroupName", + "logging", + "modifiedAt", + "name", + "phone", + "profileArn", + "profileId" + ], + "inputProperties": { + "businessName": { + "type": "string" + }, + "email": { + "type": "string" + }, + "logging": { + "$ref": "#/types/aws-native:b2bi:ProfileLogging" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:ProfileTag" + } + } + }, + "requiredInputs": [ + "businessName", + "logging", + "phone" + ] + }, + "aws-native:b2bi:Transformer": { + "description": "Definition of AWS::B2BI::Transformer Resource Type", + "properties": { + "createdAt": { + "type": "string" + }, + "ediType": { + "$ref": "#/types/aws-native:b2bi:TransformerEdiTypeProperties" + }, + "fileFormat": { + "$ref": "#/types/aws-native:b2bi:TransformerFileFormat" + }, + "mappingTemplate": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sampleDocument": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:b2bi:TransformerStatus" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:TransformerTag" + } + }, + "transformerArn": { + "type": "string" + }, + "transformerId": { + "type": "string" + } + }, + "type": "object", + "required": [ + "createdAt", + "ediType", + "fileFormat", + "mappingTemplate", + "name", + "status", + "transformerArn", + "transformerId" + ], + "inputProperties": { + "ediType": { + "$ref": "#/types/aws-native:b2bi:TransformerEdiTypeProperties" + }, + "fileFormat": { + "$ref": "#/types/aws-native:b2bi:TransformerFileFormat" + }, + "mappingTemplate": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sampleDocument": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:b2bi:TransformerStatus" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:TransformerTag" + } + } + }, + "requiredInputs": [ + "ediType", + "fileFormat", + "mappingTemplate", + "status" + ] + }, "aws-native:backup:BackupPlan": { "description": "Resource Type definition for AWS::Backup::BackupPlan", "properties": { @@ -134218,6 +137040,127 @@ "type" ] }, + "aws-native:batch:JobDefinition": { + "description": "Resource Type definition for AWS::Batch::JobDefinition", + "properties": { + "containerOrchestrationType": { + "type": "string" + }, + "containerProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties", + "replaceOnChanges": true + }, + "eksProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksProperties", + "replaceOnChanges": true + }, + "jobDefinitionArn": { + "type": "string" + }, + "jobDefinitionName": { + "type": "string", + "replaceOnChanges": true + }, + "nodeProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionNodeProperties", + "replaceOnChanges": true + }, + "parameters": { + "$ref": "pulumi.json#/Any", + "replaceOnChanges": true + }, + "platformCapabilities": { + "type": "array", + "items": { + "type": "string" + }, + "replaceOnChanges": true + }, + "propagateTags": { + "type": "boolean", + "replaceOnChanges": true + }, + "retryStrategy": { + "$ref": "#/types/aws-native:batch:JobDefinitionRetryStrategy", + "replaceOnChanges": true + }, + "revision": { + "type": "integer" + }, + "schedulingPriority": { + "type": "integer", + "replaceOnChanges": true + }, + "status": { + "type": "string" + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "A key-value pair to associate with a resource." + }, + "timeout": { + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout", + "replaceOnChanges": true + }, + "type": { + "type": "string", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "containerOrchestrationType", + "jobDefinitionArn", + "revision", + "status", + "type" + ], + "inputProperties": { + "containerProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionContainerProperties" + }, + "eksProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionEksProperties" + }, + "jobDefinitionName": { + "type": "string" + }, + "nodeProperties": { + "$ref": "#/types/aws-native:batch:JobDefinitionNodeProperties" + }, + "parameters": { + "$ref": "pulumi.json#/Any" + }, + "platformCapabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "propagateTags": { + "type": "boolean" + }, + "retryStrategy": { + "$ref": "#/types/aws-native:batch:JobDefinitionRetryStrategy" + }, + "schedulingPriority": { + "type": "integer" + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "A key-value pair to associate with a resource." + }, + "timeout": { + "$ref": "#/types/aws-native:batch:JobDefinitionJobTimeout" + }, + "type": { + "type": "string" + } + }, + "requiredInputs": [ + "type" + ] + }, "aws-native:batch:JobQueue": { "description": "Resource Type definition for AWS::Batch::JobQueue", "properties": { @@ -134573,6 +137516,196 @@ "partitionKeyColumns" ] }, + "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=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\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=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\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=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\n type=aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n address=\"abc@def.com\",\n )])\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", + "properties": { + "creationDate": { + "type": "string", + "description": "The date when the monitor was created. " + }, + "dimensionalValueCount": { + "type": "integer", + "description": "The value for evaluated dimensions." + }, + "lastEvaluatedDate": { + "type": "string", + "description": "The date when the monitor last evaluated for anomalies." + }, + "lastUpdatedDate": { + "type": "string", + "description": "The date when the monitor was last updated." + }, + "monitorArn": { + "type": "string" + }, + "monitorDimension": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorMonitorDimension", + "description": "The dimensions to evaluate", + "replaceOnChanges": true + }, + "monitorName": { + "type": "string", + "description": "The name of the monitor." + }, + "monitorSpecification": { + "type": "string", + "replaceOnChanges": true + }, + "monitorType": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorMonitorType", + "replaceOnChanges": true + }, + "resourceTags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorResourceTag" + }, + "description": "Tags to assign to monitor.", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "creationDate", + "dimensionalValueCount", + "lastEvaluatedDate", + "lastUpdatedDate", + "monitorArn", + "monitorName", + "monitorType" + ], + "inputProperties": { + "monitorDimension": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorMonitorDimension", + "description": "The dimensions to evaluate" + }, + "monitorName": { + "type": "string", + "description": "The name of the monitor." + }, + "monitorSpecification": { + "type": "string" + }, + "monitorType": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorMonitorType" + }, + "resourceTags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalyMonitorResourceTag" + }, + "description": "Tags to assign to monitor." + } + }, + "requiredInputs": [ + "monitorName", + "monitorType" + ] + }, + "aws-native:ce:AnomalySubscription": { + "description": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified\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 anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n ThresholdExpression = \"{ \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"Values\\\": [ \\\"100\\\" ], \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ] } }\",\n MonitorArnList = new[] {},\n Subscribers = new[]\n {\n new AwsNative.Ce.Inputs.AnomalySubscriptionSubscriberArgs\n {\n Address = \"abc@def.com\",\n Type = AwsNative.Ce.AnomalySubscriptionSubscriberType.Email,\n },\n },\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\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.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThresholdExpression: pulumi.String(\"{ \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"Values\\\": [ \\\"100\\\" ], \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ] } }\"),\n\t\t\tMonitorArnList: pulumi.StringArray{},\n\t\t\tSubscribers: ce.AnomalySubscriptionSubscriberArray{\n\t\t\t\t\u0026ce.AnomalySubscriptionSubscriberArgs{\n\t\t\t\t\tAddress: pulumi.String(\"abc@def.com\"),\n\t\t\t\t\tType: ce.AnomalySubscriptionSubscriberTypeEmail,\n\t\t\t\t},\n\t\t\t},\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\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 anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n thresholdExpression: \"{ \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"Values\\\": [ \\\"100\\\" ], \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ] } }\",\n monitorArnList: [],\n subscribers: [{\n address: \"abc@def.com\",\n type: aws_native.ce.AnomalySubscriptionSubscriberType.Email,\n }],\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold_expression=\"{ \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"Values\\\": [ \\\"100\\\" ], \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ] } }\",\n monitor_arn_list=[],\n subscribers=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\n address=\"abc@def.com\",\n type=aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n )],\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY)\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 anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"Subscription 1\",\n ThresholdExpression = \"{ \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }\",\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\n MonitorArnList = new[] {},\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\t_, err := ce.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"Subscription 1\"),\n\t\t\tThresholdExpression: pulumi.String(\"{ \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }\"),\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\n\t\t\tMonitorArnList: pulumi.StringArray{},\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 anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"Subscription 1\",\n thresholdExpression: \"{ \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }\",\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n monitorArnList: [],\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\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"Subscription 1\",\n threshold_expression=\"{ \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }\",\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY,\n monitor_arn_list=[],\n subscribers=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\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 anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n ThresholdExpression = \"{ \\\"And\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n MonitorArnList = new[] {},\n Subscribers = new[]\n {\n new AwsNative.Ce.Inputs.AnomalySubscriptionSubscriberArgs\n {\n Address = \"abc@def.com\",\n Type = AwsNative.Ce.AnomalySubscriptionSubscriberType.Email,\n },\n },\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\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.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThresholdExpression: pulumi.String(\"{ \\\"And\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\"),\n\t\t\tMonitorArnList: pulumi.StringArray{},\n\t\t\tSubscribers: ce.AnomalySubscriptionSubscriberArray{\n\t\t\t\t\u0026ce.AnomalySubscriptionSubscriberArgs{\n\t\t\t\t\tAddress: pulumi.String(\"abc@def.com\"),\n\t\t\t\t\tType: ce.AnomalySubscriptionSubscriberTypeEmail,\n\t\t\t\t},\n\t\t\t},\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\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 anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n thresholdExpression: \"{ \\\"And\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n monitorArnList: [],\n subscribers: [{\n address: \"abc@def.com\",\n type: aws_native.ce.AnomalySubscriptionSubscriberType.Email,\n }],\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold_expression=\"{ \\\"And\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n monitor_arn_list=[],\n subscribers=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\n address=\"abc@def.com\",\n type=aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n )],\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY)\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 anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n ThresholdExpression = \"{ \\\"And\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\n MonitorArnList = new[] {},\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\t_, err := ce.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThresholdExpression: pulumi.String(\"{ \\\"And\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\"),\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\n\t\t\tMonitorArnList: pulumi.StringArray{},\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 anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n thresholdExpression: \"{ \\\"And\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n monitorArnList: [],\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\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold_expression=\"{ \\\"And\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY,\n monitor_arn_list=[],\n subscribers=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\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 anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n ThresholdExpression = \"{ \\\"Or\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n MonitorArnList = new[] {},\n Subscribers = new[]\n {\n new AwsNative.Ce.Inputs.AnomalySubscriptionSubscriberArgs\n {\n Address = \"abc@def.com\",\n Type = AwsNative.Ce.AnomalySubscriptionSubscriberType.Email,\n },\n },\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\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.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThresholdExpression: pulumi.String(\"{ \\\"Or\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\"),\n\t\t\tMonitorArnList: pulumi.StringArray{},\n\t\t\tSubscribers: ce.AnomalySubscriptionSubscriberArray{\n\t\t\t\t\u0026ce.AnomalySubscriptionSubscriberArgs{\n\t\t\t\t\tAddress: pulumi.String(\"abc@def.com\"),\n\t\t\t\t\tType: ce.AnomalySubscriptionSubscriberTypeEmail,\n\t\t\t\t},\n\t\t\t},\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\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 anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n thresholdExpression: \"{ \\\"Or\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n monitorArnList: [],\n subscribers: [{\n address: \"abc@def.com\",\n type: aws_native.ce.AnomalySubscriptionSubscriberType.Email,\n }],\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold_expression=\"{ \\\"Or\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n monitor_arn_list=[],\n subscribers=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\n address=\"abc@def.com\",\n type=aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n )],\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY)\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 anomalySubscription = new AwsNative.Ce.AnomalySubscription(\"anomalySubscription\", new()\n {\n SubscriptionName = \"SubscriptionName\",\n ThresholdExpression = \"{ \\\"Or\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n Frequency = AwsNative.Ce.AnomalySubscriptionFrequency.Daily,\n MonitorArnList = new[] {},\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\t_, err := ce.NewAnomalySubscription(ctx, \"anomalySubscription\", \u0026ce.AnomalySubscriptionArgs{\n\t\t\tSubscriptionName: pulumi.String(\"SubscriptionName\"),\n\t\t\tThresholdExpression: pulumi.String(\"{ \\\"Or\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\"),\n\t\t\tFrequency: ce.AnomalySubscriptionFrequencyDaily,\n\t\t\tMonitorArnList: pulumi.StringArray{},\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 anomalySubscription = new aws_native.ce.AnomalySubscription(\"anomalySubscription\", {\n subscriptionName: \"SubscriptionName\",\n thresholdExpression: \"{ \\\"Or\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n frequency: aws_native.ce.AnomalySubscriptionFrequency.Daily,\n monitorArnList: [],\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\nanomaly_subscription = aws_native.ce.AnomalySubscription(\"anomalySubscription\",\n subscription_name=\"SubscriptionName\",\n threshold_expression=\"{ \\\"Or\\\": [ { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_PERCENTAGE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"100\\\" ] } }, { \\\"Dimensions\\\": { \\\"Key\\\": \\\"ANOMALY_TOTAL_IMPACT_ABSOLUTE\\\", \\\"MatchOptions\\\": [ \\\"GREATER_THAN_OR_EQUAL\\\" ], \\\"Values\\\": [ \\\"200\\\" ] } } ] }\",\n frequency=aws_native.ce.AnomalySubscriptionFrequency.DAILY,\n monitor_arn_list=[],\n subscribers=[aws_native.ce.AnomalySubscriptionSubscriberArgs(\n type=aws_native.ce.AnomalySubscriptionSubscriberType.EMAIL,\n address=\"abc@def.com\",\n )])\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", + "properties": { + "accountId": { + "type": "string", + "description": "The accountId" + }, + "frequency": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionFrequency", + "description": "The frequency at which anomaly reports are sent over email. " + }, + "monitorArnList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of cost anomaly monitors." + }, + "resourceTags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionResourceTag" + }, + "description": "Tags to assign to subscription.", + "replaceOnChanges": true + }, + "subscribers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriber" + }, + "description": "A list of subscriber" + }, + "subscriptionArn": { + "type": "string" + }, + "subscriptionName": { + "type": "string", + "description": "The name of the subscription." + }, + "threshold": { + "type": "number", + "description": "The dollar value that triggers a notification if the threshold is exceeded. " + }, + "thresholdExpression": { + "type": "string", + "description": "An Expression object in JSON String format used to specify the anomalies that you want to generate alerts for." + } + }, + "type": "object", + "required": [ + "accountId", + "frequency", + "monitorArnList", + "subscribers", + "subscriptionArn", + "subscriptionName" + ], + "inputProperties": { + "frequency": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionFrequency", + "description": "The frequency at which anomaly reports are sent over email. " + }, + "monitorArnList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of cost anomaly monitors." + }, + "resourceTags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionResourceTag" + }, + "description": "Tags to assign to subscription." + }, + "subscribers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriber" + }, + "description": "A list of subscriber" + }, + "subscriptionName": { + "type": "string", + "description": "The name of the subscription." + }, + "threshold": { + "type": "number", + "description": "The dollar value that triggers a notification if the threshold is exceeded. " + }, + "thresholdExpression": { + "type": "string", + "description": "An Expression object in JSON String format used to specify the anomalies that you want to generate alerts for." + } + }, + "requiredInputs": [ + "frequency", + "monitorArnList", + "subscribers", + "subscriptionName" + ] + }, "aws-native:ce:CostCategory": { "description": "Cost Category enables you to map your cost and usage into meaningful categories. You can use Cost Category to organize your costs using a rule-based engine.", "properties": { @@ -135003,6 +138136,10 @@ }, "replaceOnChanges": true }, + "creatorPaymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration", + "replaceOnChanges": true + }, "dataEncryptionMetadata": { "$ref": "#/types/aws-native:cleanrooms:CollaborationDataEncryptionMetadata", "replaceOnChanges": true @@ -135053,6 +138190,9 @@ "$ref": "#/types/aws-native:cleanrooms:CollaborationMemberAbility" } }, + "creatorPaymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationPaymentConfiguration" + }, "dataEncryptionMetadata": { "$ref": "#/types/aws-native:cleanrooms:CollaborationDataEncryptionMetadata" }, @@ -135275,6 +138415,9 @@ "membershipIdentifier": { "type": "string" }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:MembershipPaymentConfiguration" + }, "queryLogStatus": { "$ref": "#/types/aws-native:cleanrooms:MembershipQueryLogStatus" }, @@ -135302,6 +138445,9 @@ "defaultResultConfiguration": { "$ref": "#/types/aws-native:cleanrooms:MembershipProtectedQueryResultConfiguration" }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:MembershipPaymentConfiguration" + }, "queryLogStatus": { "$ref": "#/types/aws-native:cleanrooms:MembershipQueryLogStatus" }, @@ -136706,6 +139852,14 @@ "type": "string", "description": "The ARN of the event data store." }, + "federationEnabled": { + "type": "boolean", + "description": "Indicates whether federation is enabled on an event data store." + }, + "federationRoleArn": { + "type": "string", + "description": "The ARN of the role used for event data store federation." + }, "ingestionEnabled": { "type": "boolean", "description": "Indicates whether the event data store is ingesting events." @@ -136779,6 +139933,14 @@ "type": "string", "description": "The mode that the event data store will use to charge for event storage." }, + "federationEnabled": { + "type": "boolean", + "description": "Indicates whether federation is enabled on an event data store." + }, + "federationRoleArn": { + "type": "string", + "description": "The ARN of the role used for event data store federation." + }, "ingestionEnabled": { "type": "boolean", "description": "Indicates whether the event data store is ingesting events." @@ -137755,6 +140917,11 @@ "$ref": "#/types/aws-native:codedeploy:DeploymentConfigTrafficRoutingConfig", "description": "The configuration that specifies how the deployment traffic is routed.", "replaceOnChanges": true + }, + "zonalConfig": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigZonalConfig", + "description": "The zonal deployment config that specifies how the zonal deployment behaves", + "replaceOnChanges": true } }, "type": "object", @@ -137774,6 +140941,10 @@ "trafficRoutingConfig": { "$ref": "#/types/aws-native:codedeploy:DeploymentConfigTrafficRoutingConfig", "description": "The configuration that specifies how the deployment traffic is routed." + }, + "zonalConfig": { + "$ref": "#/types/aws-native:codedeploy:DeploymentConfigZonalConfig", + "description": "The zonal deployment config that specifies how the zonal deployment behaves" } } }, @@ -140142,6 +143313,13 @@ "serviceRole": { "type": "string", "description": "Service linked role created as part of instance creation." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:InstanceTag" + }, + "description": "An array of key-value pairs to apply to this resource." } }, "type": "object", @@ -140169,6 +143347,13 @@ "instanceAlias": { "type": "string", "description": "Alias of the new directory created as part of new instance creation." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:InstanceTag" + }, + "description": "An array of key-value pairs to apply to this resource." } }, "requiredInputs": [ @@ -144736,6 +147921,359 @@ "vpcSettings" ] }, + "aws-native:dms:DataProvider": { + "description": "Resource schema for AWS::DMS::DataProvider", + "properties": { + "dataProviderArn": { + "type": "string", + "description": "The data provider ARN." + }, + "dataProviderCreationTime": { + "type": "string", + "description": "The data provider creation time." + }, + "dataProviderIdentifier": { + "type": "string", + "description": "The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn" + }, + "dataProviderName": { + "type": "string", + "description": "The property describes a name to identify the data provider." + }, + "description": { + "type": "string", + "description": "The optional description of the data provider." + }, + "engine": { + "$ref": "#/types/aws-native:dms:DataProviderEngine", + "description": "The property describes a data engine for the data provider." + }, + "exactSettings": { + "type": "boolean", + "description": "The property describes the exact settings which can be modified" + }, + "settings": { + "oneOf": [ + { + "$ref": "#/types/aws-native:dms:Settings0Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings1Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings2Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings3Properties" + } + ], + "description": "The property identifies the exact type of settings for the data provider." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:DataProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "type": "object", + "required": [ + "dataProviderArn", + "dataProviderCreationTime", + "engine" + ], + "inputProperties": { + "dataProviderIdentifier": { + "type": "string", + "description": "The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn" + }, + "dataProviderName": { + "type": "string", + "description": "The property describes a name to identify the data provider." + }, + "description": { + "type": "string", + "description": "The optional description of the data provider." + }, + "engine": { + "$ref": "#/types/aws-native:dms:DataProviderEngine", + "description": "The property describes a data engine for the data provider." + }, + "exactSettings": { + "type": "boolean", + "description": "The property describes the exact settings which can be modified" + }, + "settings": { + "oneOf": [ + { + "$ref": "#/types/aws-native:dms:Settings0Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings1Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings2Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings3Properties" + } + ], + "description": "The property identifies the exact type of settings for the data provider." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:DataProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "requiredInputs": [ + "engine" + ] + }, + "aws-native:dms:InstanceProfile": { + "description": "Resource schema for AWS::DMS::InstanceProfile.", + "properties": { + "availabilityZone": { + "type": "string", + "description": "The property describes an availability zone of the instance profile." + }, + "description": { + "type": "string", + "description": "The optional description of the instance profile." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an ARN of the instance profile." + }, + "instanceProfileCreationTime": { + "type": "string", + "description": "The property describes a creating time of the instance profile." + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes a name for the instance profile." + }, + "kmsKeyArn": { + "type": "string", + "description": "The property describes kms key arn for the instance profile." + }, + "networkType": { + "$ref": "#/types/aws-native:dms:InstanceProfileNetworkType", + "description": "The property describes a network type for the instance profile." + }, + "publiclyAccessible": { + "type": "boolean", + "description": "The property describes the publicly accessible of the instance profile" + }, + "subnetGroupIdentifier": { + "type": "string", + "description": "The property describes a subnet group identifier for the instance profile." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:InstanceProfileTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "vpcSecurityGroups": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The property describes vps security groups for the instance profile." + } + }, + "type": "object", + "required": [ + "instanceProfileArn", + "instanceProfileCreationTime" + ], + "inputProperties": { + "availabilityZone": { + "type": "string", + "description": "The property describes an availability zone of the instance profile." + }, + "description": { + "type": "string", + "description": "The optional description of the instance profile." + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes a name for the instance profile." + }, + "kmsKeyArn": { + "type": "string", + "description": "The property describes kms key arn for the instance profile." + }, + "networkType": { + "$ref": "#/types/aws-native:dms:InstanceProfileNetworkType", + "description": "The property describes a network type for the instance profile." + }, + "publiclyAccessible": { + "type": "boolean", + "description": "The property describes the publicly accessible of the instance profile" + }, + "subnetGroupIdentifier": { + "type": "string", + "description": "The property describes a subnet group identifier for the instance profile." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:InstanceProfileTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "vpcSecurityGroups": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The property describes vps security groups for the instance profile." + } + } + }, + "aws-native:dms:MigrationProject": { + "description": "Resource schema for AWS::DMS::MigrationProject", + "properties": { + "description": { + "type": "string", + "description": "The optional description of the migration project." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an instance profile arn for the migration project. For read" + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an instance profile identifier for the migration project. For create" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes an instance profile name for the migration project. For read" + }, + "migrationProjectArn": { + "type": "string", + "description": "The property describes an ARN of the migration project." + }, + "migrationProjectCreationTime": { + "type": "string", + "description": "The property describes a creating time of the migration project." + }, + "migrationProjectIdentifier": { + "type": "string", + "description": "The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn" + }, + "migrationProjectName": { + "type": "string", + "description": "The property describes a name to identify the migration project." + }, + "schemaConversionApplicationAttributes": { + "$ref": "#/types/aws-native:dms:SchemaConversionApplicationAttributesProperties", + "description": "The property describes schema conversion application attributes for the migration project." + }, + "sourceDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes source data provider descriptors for the migration project." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "targetDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes target data provider descriptors for the migration project." + }, + "transformationRules": { + "type": "string", + "description": "The property describes transformation rules for the migration project." + } + }, + "type": "object", + "required": [ + "migrationProjectArn" + ], + "inputProperties": { + "description": { + "type": "string", + "description": "The optional description of the migration project." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an instance profile arn for the migration project. For read" + }, + "instanceProfileIdentifier": { + "type": "string", + "description": "The property describes an instance profile identifier for the migration project. For create" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes an instance profile name for the migration project. For read" + }, + "migrationProjectCreationTime": { + "type": "string", + "description": "The property describes a creating time of the migration project." + }, + "migrationProjectIdentifier": { + "type": "string", + "description": "The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn" + }, + "migrationProjectName": { + "type": "string", + "description": "The property describes a name to identify the migration project." + }, + "schemaConversionApplicationAttributes": { + "$ref": "#/types/aws-native:dms:SchemaConversionApplicationAttributesProperties", + "description": "The property describes schema conversion application attributes for the migration project." + }, + "sourceDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes source data provider descriptors for the migration project." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "targetDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes target data provider descriptors for the migration project." + }, + "transformationRules": { + "type": "string", + "description": "The property describes transformation rules for the migration project." + } + } + }, "aws-native:dms:ReplicationConfig": { "description": "A replication configuration that you later provide to configure and start a AWS DMS Serverless replication", "properties": { @@ -144760,7 +148298,8 @@ }, "resourceIdentifier": { "type": "string", - "description": "A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource" + "description": "A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource", + "replaceOnChanges": true }, "sourceEndpointArn": { "type": "string", @@ -148311,6 +151850,10 @@ "type": "string", "description": "The primary identifier of the resource generated by the service." }, + "coreNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the core network." + }, "destinationCidrBlock": { "type": "string", "description": "The IPv4 CIDR block used for the destination match.", @@ -148378,6 +151921,10 @@ "type": "string", "description": "The ID of the carrier gateway." }, + "coreNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the core network." + }, "destinationCidrBlock": { "type": "string", "description": "The IPv4 CIDR block used for the destination match." @@ -148477,6 +152024,129 @@ "vpcId" ] }, + "aws-native:ec2:SecurityGroupEgress": { + "description": "Resource Type definition for AWS::EC2::SecurityGroupEgress", + "properties": { + "cidrIp": { + "type": "string", + "description": "The IPv4 ranges", + "replaceOnChanges": true + }, + "cidrIpv6": { + "type": "string", + "description": "[VPC only] The IPv6 ranges", + "replaceOnChanges": true + }, + "description": { + "type": "string", + "description": "Resource Type definition for an egress (outbound) security group rule." + }, + "destinationPrefixListId": { + "type": "string", + "description": "[EC2-VPC only] The ID of a prefix list.", + "replaceOnChanges": true + }, + "destinationSecurityGroupId": { + "type": "string", + "description": "You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6).", + "replaceOnChanges": true + }, + "fromPort": { + "type": "integer", + "description": "The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.", + "replaceOnChanges": true + }, + "groupId": { + "type": "string", + "description": "The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.", + "replaceOnChanges": true + }, + "ipProtocol": { + "type": "string", + "description": "[VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed.", + "replaceOnChanges": true + }, + "toPort": { + "type": "integer", + "description": "The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "groupId", + "ipProtocol" + ], + "inputProperties": { + "cidrIp": { + "type": "string", + "description": "The IPv4 ranges" + }, + "cidrIpv6": { + "type": "string", + "description": "[VPC only] The IPv6 ranges" + }, + "description": { + "type": "string", + "description": "Resource Type definition for an egress (outbound) security group rule." + }, + "destinationPrefixListId": { + "type": "string", + "description": "[EC2-VPC only] The ID of a prefix list." + }, + "destinationSecurityGroupId": { + "type": "string", + "description": "You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6)." + }, + "fromPort": { + "type": "integer", + "description": "The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes." + }, + "groupId": { + "type": "string", + "description": "The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID." + }, + "ipProtocol": { + "type": "string", + "description": "[VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed." + }, + "toPort": { + "type": "integer", + "description": "The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes." + } + }, + "requiredInputs": [ + "groupId", + "ipProtocol" + ] + }, + "aws-native:ec2:SnapshotBlockPublicAccess": { + "description": "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess", + "properties": { + "accountId": { + "type": "string", + "description": "The identifier for the specified AWS account." + }, + "state": { + "$ref": "#/types/aws-native:ec2:SnapshotBlockPublicAccessState", + "description": "The state of EBS Snapshot Block Public Access." + } + }, + "type": "object", + "required": [ + "accountId", + "state" + ], + "inputProperties": { + "state": { + "$ref": "#/types/aws-native:ec2:SnapshotBlockPublicAccessState", + "description": "The state of EBS Snapshot Block Public Access." + } + }, + "requiredInputs": [ + "state" + ] + }, "aws-native:ec2:SpotFleet": { "description": "Resource Type definition for AWS::EC2::SpotFleet", "properties": { @@ -152044,6 +155714,9 @@ "aws-native:eks:Cluster": { "description": "An object representing an Amazon EKS cluster.", "properties": { + "accessConfig": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfig" + }, "arn": { "type": "string", "description": "The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod." @@ -152123,6 +155796,9 @@ "roleArn" ], "inputProperties": { + "accessConfig": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfig" + }, "encryptionConfig": { "type": "array", "items": { @@ -152807,10 +156483,8 @@ "required": [ "arn", "createTime", - "endpoint", "engine", "fullEngineVersion", - "readerEndpoint", "serverlessCacheName", "status" ], @@ -152826,6 +156500,9 @@ "type": "string", "description": "The description of the Serverless Cache." }, + "endpoint": { + "$ref": "#/types/aws-native:elasticache:ServerlessCacheEndpoint" + }, "engine": { "type": "string", "description": "The engine name of the Serverless Cache." @@ -152842,6 +156519,9 @@ "type": "string", "description": "The major engine version of the Serverless Cache." }, + "readerEndpoint": { + "$ref": "#/types/aws-native:elasticache:ServerlessCacheEndpoint" + }, "securityGroupIds": { "type": "array", "items": { @@ -154096,11 +157776,26 @@ "type": "string", "description": "A detailed description of the Studio." }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3.", + "replaceOnChanges": true + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId.", "replaceOnChanges": true }, + "idcInstanceArn": { + "type": "string", + "description": "The ARN of the IAM Identity Center instance to create the Studio application.", + "replaceOnChanges": true + }, + "idcUserAssignment": { + "$ref": "#/types/aws-native:emr:StudioIdcUserAssignment", + "description": "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio.", + "replaceOnChanges": true + }, "idpAuthUrl": { "type": "string", "description": "Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL." @@ -154136,6 +157831,11 @@ }, "description": "A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters." }, + "trustedIdentityPropagationEnabled": { + "type": "boolean", + "description": "A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false.", + "replaceOnChanges": true + }, "url": { "type": "string", "description": "The unique Studio access URL." @@ -154183,10 +157883,22 @@ "type": "string", "description": "A detailed description of the Studio." }, + "encryptionKeyArn": { + "type": "string", + "description": "The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3." + }, "engineSecurityGroupId": { "type": "string", "description": "The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId." }, + "idcInstanceArn": { + "type": "string", + "description": "The ARN of the IAM Identity Center instance to create the Studio application." + }, + "idcUserAssignment": { + "$ref": "#/types/aws-native:emr:StudioIdcUserAssignment", + "description": "Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio." + }, "idpAuthUrl": { "type": "string", "description": "Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL." @@ -154217,6 +157929,10 @@ }, "description": "A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters." }, + "trustedIdentityPropagationEnabled": { + "type": "boolean", + "description": "A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false." + }, "userRole": { "type": "string", "description": "The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies." @@ -155191,6 +158907,120 @@ } } }, + "aws-native:eventschemas:Discoverer": { + "description": "Resource Type definition for AWS::EventSchemas::Discoverer\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 myDiscoverer = new AwsNative.EventSchemas.Discoverer(\"myDiscoverer\", new()\n {\n SourceArn = \"arn:aws:events:us-west-2:012345678910:event-bus/default\",\n Description = \"discover all custom schemas\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/eventschemas\"\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 := eventschemas.NewDiscoverer(ctx, \"myDiscoverer\", \u0026eventschemas.DiscovererArgs{\n\t\t\tSourceArn: pulumi.String(\"arn:aws:events:us-west-2:012345678910:event-bus/default\"),\n\t\t\tDescription: pulumi.String(\"discover all custom schemas\"),\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 myDiscoverer = new aws_native.eventschemas.Discoverer(\"myDiscoverer\", {\n sourceArn: \"arn:aws:events:us-west-2:012345678910:event-bus/default\",\n description: \"discover all custom schemas\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nmy_discoverer = aws_native.eventschemas.Discoverer(\"myDiscoverer\",\n source_arn=\"arn:aws:events:us-west-2:012345678910:event-bus/default\",\n description=\"discover all custom schemas\")\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", + "properties": { + "crossAccount": { + "type": "boolean", + "description": "Defines whether event schemas from other accounts are discovered. Default is True." + }, + "description": { + "type": "string", + "description": "A description for the discoverer." + }, + "discovererArn": { + "type": "string", + "description": "The ARN of the discoverer." + }, + "discovererId": { + "type": "string", + "description": "The Id of the discoverer." + }, + "sourceArn": { + "type": "string", + "description": "The ARN of the event bus.", + "replaceOnChanges": true + }, + "state": { + "type": "string", + "description": "Defines the current state of the discoverer." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:DiscovererTagsEntry" + }, + "description": "Tags associated with the resource." + } + }, + "type": "object", + "required": [ + "discovererArn", + "discovererId", + "sourceArn", + "state" + ], + "inputProperties": { + "crossAccount": { + "type": "boolean", + "description": "Defines whether event schemas from other accounts are discovered. Default is True." + }, + "description": { + "type": "string", + "description": "A description for the discoverer." + }, + "sourceArn": { + "type": "string", + "description": "The ARN of the event bus." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:DiscovererTagsEntry" + }, + "description": "Tags associated with the resource." + } + }, + "requiredInputs": [ + "sourceArn" + ] + }, + "aws-native:eventschemas:Registry": { + "description": "Resource Type definition for AWS::EventSchemas::Registry\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 statesSchemasRegistry = new AwsNative.EventSchemas.Registry(\"statesSchemasRegistry\", new()\n {\n RegistryName = \"aws.states\",\n Description = \"Contains the schemas of events emitted by AWS Step Functions\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/eventschemas\"\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 := eventschemas.NewRegistry(ctx, \"statesSchemasRegistry\", \u0026eventschemas.RegistryArgs{\n\t\t\tRegistryName: pulumi.String(\"aws.states\"),\n\t\t\tDescription: pulumi.String(\"Contains the schemas of events emitted by AWS Step Functions\"),\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 statesSchemasRegistry = new aws_native.eventschemas.Registry(\"statesSchemasRegistry\", {\n registryName: \"aws.states\",\n description: \"Contains the schemas of events emitted by AWS Step Functions\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nstates_schemas_registry = aws_native.eventschemas.Registry(\"statesSchemasRegistry\",\n registry_name=\"aws.states\",\n description=\"Contains the schemas of events emitted by AWS Step Functions\")\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", + "properties": { + "description": { + "type": "string", + "description": "A description of the registry to be created." + }, + "registryArn": { + "type": "string", + "description": "The ARN of the registry." + }, + "registryName": { + "type": "string", + "description": "The name of the schema registry.", + "replaceOnChanges": true + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:RegistryTagsEntry" + }, + "description": "Tags associated with the resource." + } + }, + "type": "object", + "required": [ + "registryArn" + ], + "inputProperties": { + "description": { + "type": "string", + "description": "A description of the registry to be created." + }, + "registryName": { + "type": "string", + "description": "The name of the schema registry." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:RegistryTagsEntry" + }, + "description": "Tags associated with the resource." + } + } + }, "aws-native:eventschemas:RegistryPolicy": { "description": "Resource Type definition for AWS::EventSchemas::RegistryPolicy\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 registryPolicy = new AwsNative.EventSchemas.RegistryPolicy(\"registryPolicy\", new()\n {\n RegistryName = \"registryName\",\n Policy = \n {\n { \"version\", \"2012-10-17\" },\n { \"statement\", \n {\n { \"sid\", 1 },\n { \"effect\", \"Allow\" },\n { \"principal\", \n {\n { \"aws\", \"arn:aws:iam::012345678901:user/TestAccountForRegistryPolicy\" },\n } },\n { \"action\", new[]\n {\n \"schemas:DescribeRegistry\",\n \"schemas:CreateSchema\",\n } },\n { \"resource\", \"registryArn\" },\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/eventschemas\"\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 := eventschemas.NewRegistryPolicy(ctx, \"registryPolicy\", \u0026eventschemas.RegistryPolicyArgs{\n\t\t\tRegistryName: pulumi.String(\"registryName\"),\n\t\t\tPolicy: pulumi.Any{\n\t\t\t\tVersion: \"2012-10-17\",\n\t\t\t\tStatement: map[string]interface{}{\n\t\t\t\t\t\"sid\": 1,\n\t\t\t\t\t\"effect\": \"Allow\",\n\t\t\t\t\t\"principal\": map[string]interface{}{\n\t\t\t\t\t\t\"aws\": \"arn:aws:iam::012345678901:user/TestAccountForRegistryPolicy\",\n\t\t\t\t\t},\n\t\t\t\t\t\"action\": []string{\n\t\t\t\t\t\t\"schemas:DescribeRegistry\",\n\t\t\t\t\t\t\"schemas:CreateSchema\",\n\t\t\t\t\t},\n\t\t\t\t\t\"resource\": \"registryArn\",\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 registryPolicy = new aws_native.eventschemas.RegistryPolicy(\"registryPolicy\", {\n registryName: \"registryName\",\n policy: {\n version: \"2012-10-17\",\n statement: {\n sid: 1,\n effect: \"Allow\",\n principal: {\n aws: \"arn:aws:iam::012345678901:user/TestAccountForRegistryPolicy\",\n },\n action: [\n \"schemas:DescribeRegistry\",\n \"schemas:CreateSchema\",\n ],\n resource: \"registryArn\",\n },\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nregistry_policy = aws_native.eventschemas.RegistryPolicy(\"registryPolicy\",\n registry_name=\"registryName\",\n policy={\n \"version\": \"2012-10-17\",\n \"statement\": {\n \"sid\": 1,\n \"effect\": \"Allow\",\n \"principal\": {\n \"aws\": \"arn:aws:iam::012345678901:user/TestAccountForRegistryPolicy\",\n },\n \"action\": [\n \"schemas:DescribeRegistry\",\n \"schemas:CreateSchema\",\n ],\n \"resource\": \"registryArn\",\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 registryPolicy = new AwsNative.EventSchemas.RegistryPolicy(\"registryPolicy\", new()\n {\n RegistryName = \"MyRegistry\",\n Policy = \n {\n { \"version\", \"2012-10-17\" },\n { \"statement\", new[]\n {\n \n {\n { \"sid\", \"Test\" },\n { \"effect\", \"Allow\" },\n { \"action\", new[]\n {\n \"schemas:*\",\n } },\n { \"principal\", \n {\n { \"aws\", new[]\n {\n \"109876543210\",\n } },\n } },\n { \"resource\", new[]\n {\n \"arn:aws:schemas:us-east-1:012345678901:registry/MyRegistry\",\n \"arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry*\",\n } },\n },\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/eventschemas\"\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 := eventschemas.NewRegistryPolicy(ctx, \"registryPolicy\", \u0026eventschemas.RegistryPolicyArgs{\n\t\t\tRegistryName: pulumi.String(\"MyRegistry\"),\n\t\t\tPolicy: pulumi.Any{\n\t\t\t\tVersion: \"2012-10-17\",\n\t\t\t\tStatement: []map[string]interface{}{\n\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\"sid\": \"Test\",\n\t\t\t\t\t\t\"effect\": \"Allow\",\n\t\t\t\t\t\t\"action\": []string{\n\t\t\t\t\t\t\t\"schemas:*\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"principal\": map[string]interface{}{\n\t\t\t\t\t\t\t\"aws\": []string{\n\t\t\t\t\t\t\t\t\"109876543210\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"resource\": []string{\n\t\t\t\t\t\t\t\"arn:aws:schemas:us-east-1:012345678901:registry/MyRegistry\",\n\t\t\t\t\t\t\t\"arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry*\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\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 registryPolicy = new aws_native.eventschemas.RegistryPolicy(\"registryPolicy\", {\n registryName: \"MyRegistry\",\n policy: {\n version: \"2012-10-17\",\n statement: [{\n sid: \"Test\",\n effect: \"Allow\",\n action: [\"schemas:*\"],\n principal: {\n aws: [\"109876543210\"],\n },\n resource: [\n \"arn:aws:schemas:us-east-1:012345678901:registry/MyRegistry\",\n \"arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry*\",\n ],\n }],\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nregistry_policy = aws_native.eventschemas.RegistryPolicy(\"registryPolicy\",\n registry_name=\"MyRegistry\",\n policy={\n \"version\": \"2012-10-17\",\n \"statement\": [{\n \"sid\": \"Test\",\n \"effect\": \"Allow\",\n \"action\": [\"schemas:*\"],\n \"principal\": {\n \"aws\": [\"109876543210\"],\n },\n \"resource\": [\n \"arn:aws:schemas:us-east-1:012345678901:registry/MyRegistry\",\n \"arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry*\",\n ],\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 registryPolicy = new AwsNative.EventSchemas.RegistryPolicy(\"registryPolicy\", new()\n {\n RegistryName = \"MyRegistry\",\n Policy = \n {\n { \"version\", \"2012-10-17\" },\n { \"statement\", new[]\n {\n \n {\n { \"sid\", \"Test\" },\n { \"effect\", \"Allow\" },\n { \"action\", new[]\n {\n \"schemas:*\",\n } },\n { \"principal\", \n {\n { \"aws\", new[]\n {\n \"109876543210\",\n } },\n } },\n { \"resource\", new[]\n {\n \"arn:aws:schemas:us-east-1:012345678901:registry/MyRegistry\",\n \"arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry*\",\n } },\n },\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/eventschemas\"\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 := eventschemas.NewRegistryPolicy(ctx, \"registryPolicy\", \u0026eventschemas.RegistryPolicyArgs{\n\t\t\tRegistryName: pulumi.String(\"MyRegistry\"),\n\t\t\tPolicy: pulumi.Any{\n\t\t\t\tVersion: \"2012-10-17\",\n\t\t\t\tStatement: []map[string]interface{}{\n\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\"sid\": \"Test\",\n\t\t\t\t\t\t\"effect\": \"Allow\",\n\t\t\t\t\t\t\"action\": []string{\n\t\t\t\t\t\t\t\"schemas:*\",\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"principal\": map[string]interface{}{\n\t\t\t\t\t\t\t\"aws\": []string{\n\t\t\t\t\t\t\t\t\"109876543210\",\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t\"resource\": []string{\n\t\t\t\t\t\t\t\"arn:aws:schemas:us-east-1:012345678901:registry/MyRegistry\",\n\t\t\t\t\t\t\t\"arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry*\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\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 registryPolicy = new aws_native.eventschemas.RegistryPolicy(\"registryPolicy\", {\n registryName: \"MyRegistry\",\n policy: {\n version: \"2012-10-17\",\n statement: [{\n sid: \"Test\",\n effect: \"Allow\",\n action: [\"schemas:*\"],\n principal: {\n aws: [\"109876543210\"],\n },\n resource: [\n \"arn:aws:schemas:us-east-1:012345678901:registry/MyRegistry\",\n \"arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry*\",\n ],\n }],\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nregistry_policy = aws_native.eventschemas.RegistryPolicy(\"registryPolicy\",\n registry_name=\"MyRegistry\",\n policy={\n \"version\": \"2012-10-17\",\n \"statement\": [{\n \"sid\": \"Test\",\n \"effect\": \"Allow\",\n \"action\": [\"schemas:*\"],\n \"principal\": {\n \"aws\": [\"109876543210\"],\n },\n \"resource\": [\n \"arn:aws:schemas:us-east-1:012345678901:registry/MyRegistry\",\n \"arn:aws:schemas:us-east-1:012345678901:schema/MyRegistry*\",\n ],\n }],\n })\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { @@ -155225,6 +159055,100 @@ "registryName" ] }, + "aws-native:eventschemas:Schema": { + "description": "Resource Type definition for AWS::EventSchemas::Schema\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 executionStatusChangeSchema = new AwsNative.EventSchemas.Schema(\"executionStatusChangeSchema\", new()\n {\n RegistryName = \"aws.events\",\n SchemaName = \"ExecutionStatusChange\",\n Description = \"event emitted when the status of a state machine execution change\",\n Type = \"OpenApi3\",\n Content = \"{ \\\"openapi\\\": \\\"3.0.0\\\", \\\"info\\\": { \\\"version\\\": \\\"1.0.0\\\", \\\"title\\\": \\\"StepFunctionsExecutionStatusChange\\\" }, \\\"paths\\\":{}, \\\"components\\\": { \\\"schemas\\\": { \\\"StepFunctionsExecutionStatusChange\\\": { \\\"type\\\": \\\"object\\\", \\\"required\\\": [ \\\"output\\\", \\\"input\\\", \\\"executionArn\\\", \\\"name\\\", \\\"stateMachineArn\\\", \\\"startDate\\\", \\\"stopDate\\\", \\\"status\\\" ], \\\"properties\\\": { \\\"output\\\": {\\\"type\\\": \\\"string\\\",\\\"nullable\\\": true}, \\\"input\\\": {\\\"type\\\": \\\"string\\\"}, \\\"executionArn\\\": {\\\"type\\\": \\\"string\\\"}, \\\"name\\\": {\\\"type\\\": \\\"string\\\"}, \\\"stateMachineArn\\\": {\\\"type\\\": \\\"string\\\"}, \\\"startDate\\\": {\\\"type\\\": \\\"integer\\\",\\\"format\\\": \\\"int64\\\"}, \\\"stopDate\\\": {\\\"type\\\": \\\"integer\\\",\\\"format\\\": \\\"int64\\\",\\\"nullable\\\": true}, \\\"status\\\": {\\\"type\\\": \\\"string\\\",\\\"enum\\\": [ \\\"FAILED\\\", \\\"RUNNING\\\", \\\"SUCCEEDED\\\", \\\"ABORTED\\\" ]} } } } } }\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/eventschemas\"\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 := eventschemas.NewSchema(ctx, \"executionStatusChangeSchema\", \u0026eventschemas.SchemaArgs{\n\t\t\tRegistryName: pulumi.String(\"aws.events\"),\n\t\t\tSchemaName: pulumi.String(\"ExecutionStatusChange\"),\n\t\t\tDescription: pulumi.String(\"event emitted when the status of a state machine execution change\"),\n\t\t\tType: pulumi.String(\"OpenApi3\"),\n\t\t\tContent: pulumi.String(\"{ \\\"openapi\\\": \\\"3.0.0\\\", \\\"info\\\": { \\\"version\\\": \\\"1.0.0\\\", \\\"title\\\": \\\"StepFunctionsExecutionStatusChange\\\" }, \\\"paths\\\":{}, \\\"components\\\": { \\\"schemas\\\": { \\\"StepFunctionsExecutionStatusChange\\\": { \\\"type\\\": \\\"object\\\", \\\"required\\\": [ \\\"output\\\", \\\"input\\\", \\\"executionArn\\\", \\\"name\\\", \\\"stateMachineArn\\\", \\\"startDate\\\", \\\"stopDate\\\", \\\"status\\\" ], \\\"properties\\\": { \\\"output\\\": {\\\"type\\\": \\\"string\\\",\\\"nullable\\\": true}, \\\"input\\\": {\\\"type\\\": \\\"string\\\"}, \\\"executionArn\\\": {\\\"type\\\": \\\"string\\\"}, \\\"name\\\": {\\\"type\\\": \\\"string\\\"}, \\\"stateMachineArn\\\": {\\\"type\\\": \\\"string\\\"}, \\\"startDate\\\": {\\\"type\\\": \\\"integer\\\",\\\"format\\\": \\\"int64\\\"}, \\\"stopDate\\\": {\\\"type\\\": \\\"integer\\\",\\\"format\\\": \\\"int64\\\",\\\"nullable\\\": true}, \\\"status\\\": {\\\"type\\\": \\\"string\\\",\\\"enum\\\": [ \\\"FAILED\\\", \\\"RUNNING\\\", \\\"SUCCEEDED\\\", \\\"ABORTED\\\" ]} } } } } }\"),\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 executionStatusChangeSchema = new aws_native.eventschemas.Schema(\"executionStatusChangeSchema\", {\n registryName: \"aws.events\",\n schemaName: \"ExecutionStatusChange\",\n description: \"event emitted when the status of a state machine execution change\",\n type: \"OpenApi3\",\n content: \"{ \\\"openapi\\\": \\\"3.0.0\\\", \\\"info\\\": { \\\"version\\\": \\\"1.0.0\\\", \\\"title\\\": \\\"StepFunctionsExecutionStatusChange\\\" }, \\\"paths\\\":{}, \\\"components\\\": { \\\"schemas\\\": { \\\"StepFunctionsExecutionStatusChange\\\": { \\\"type\\\": \\\"object\\\", \\\"required\\\": [ \\\"output\\\", \\\"input\\\", \\\"executionArn\\\", \\\"name\\\", \\\"stateMachineArn\\\", \\\"startDate\\\", \\\"stopDate\\\", \\\"status\\\" ], \\\"properties\\\": { \\\"output\\\": {\\\"type\\\": \\\"string\\\",\\\"nullable\\\": true}, \\\"input\\\": {\\\"type\\\": \\\"string\\\"}, \\\"executionArn\\\": {\\\"type\\\": \\\"string\\\"}, \\\"name\\\": {\\\"type\\\": \\\"string\\\"}, \\\"stateMachineArn\\\": {\\\"type\\\": \\\"string\\\"}, \\\"startDate\\\": {\\\"type\\\": \\\"integer\\\",\\\"format\\\": \\\"int64\\\"}, \\\"stopDate\\\": {\\\"type\\\": \\\"integer\\\",\\\"format\\\": \\\"int64\\\",\\\"nullable\\\": true}, \\\"status\\\": {\\\"type\\\": \\\"string\\\",\\\"enum\\\": [ \\\"FAILED\\\", \\\"RUNNING\\\", \\\"SUCCEEDED\\\", \\\"ABORTED\\\" ]} } } } } }\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nexecution_status_change_schema = aws_native.eventschemas.Schema(\"executionStatusChangeSchema\",\n registry_name=\"aws.events\",\n schema_name=\"ExecutionStatusChange\",\n description=\"event emitted when the status of a state machine execution change\",\n type=\"OpenApi3\",\n content=\"{ \\\"openapi\\\": \\\"3.0.0\\\", \\\"info\\\": { \\\"version\\\": \\\"1.0.0\\\", \\\"title\\\": \\\"StepFunctionsExecutionStatusChange\\\" }, \\\"paths\\\":{}, \\\"components\\\": { \\\"schemas\\\": { \\\"StepFunctionsExecutionStatusChange\\\": { \\\"type\\\": \\\"object\\\", \\\"required\\\": [ \\\"output\\\", \\\"input\\\", \\\"executionArn\\\", \\\"name\\\", \\\"stateMachineArn\\\", \\\"startDate\\\", \\\"stopDate\\\", \\\"status\\\" ], \\\"properties\\\": { \\\"output\\\": {\\\"type\\\": \\\"string\\\",\\\"nullable\\\": true}, \\\"input\\\": {\\\"type\\\": \\\"string\\\"}, \\\"executionArn\\\": {\\\"type\\\": \\\"string\\\"}, \\\"name\\\": {\\\"type\\\": \\\"string\\\"}, \\\"stateMachineArn\\\": {\\\"type\\\": \\\"string\\\"}, \\\"startDate\\\": {\\\"type\\\": \\\"integer\\\",\\\"format\\\": \\\"int64\\\"}, \\\"stopDate\\\": {\\\"type\\\": \\\"integer\\\",\\\"format\\\": \\\"int64\\\",\\\"nullable\\\": true}, \\\"status\\\": {\\\"type\\\": \\\"string\\\",\\\"enum\\\": [ \\\"FAILED\\\", \\\"RUNNING\\\", \\\"SUCCEEDED\\\", \\\"ABORTED\\\" ]} } } } } }\")\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", + "properties": { + "content": { + "type": "string", + "description": "The source of the schema definition." + }, + "description": { + "type": "string", + "description": "A description of the schema." + }, + "lastModified": { + "type": "string", + "description": "The last modified time of the schema." + }, + "registryName": { + "type": "string", + "description": "The name of the schema registry.", + "replaceOnChanges": true + }, + "schemaArn": { + "type": "string", + "description": "The ARN of the schema." + }, + "schemaName": { + "type": "string", + "description": "The name of the schema.", + "replaceOnChanges": true + }, + "schemaVersion": { + "type": "string", + "description": "The version number of the schema." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:SchemaTagsEntry" + }, + "description": "Tags associated with the resource." + }, + "type": { + "type": "string", + "description": "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." + }, + "versionCreatedDate": { + "type": "string", + "description": "The date the schema version was created." + } + }, + "type": "object", + "required": [ + "content", + "lastModified", + "registryName", + "schemaArn", + "schemaVersion", + "type", + "versionCreatedDate" + ], + "inputProperties": { + "content": { + "type": "string", + "description": "The source of the schema definition." + }, + "description": { + "type": "string", + "description": "A description of the schema." + }, + "registryName": { + "type": "string", + "description": "The name of the schema registry." + }, + "schemaName": { + "type": "string", + "description": "The name of the schema." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:SchemaTagsEntry" + }, + "description": "Tags associated with the resource." + }, + "type": { + "type": "string", + "description": "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." + } + }, + "requiredInputs": [ + "content", + "registryName", + "type" + ] + }, "aws-native:evidently:Experiment": { "description": "Resource Type definition for AWS::Evidently::Experiment.", "properties": { @@ -155777,6 +159701,9 @@ "description": { "type": "string" }, + "experimentOptions": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptions" + }, "logConfiguration": { "$ref": "#/types/aws-native:fis:ExperimentTemplateLogConfiguration" }, @@ -155812,6 +159739,9 @@ "description": { "type": "string" }, + "experimentOptions": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptions" + }, "logConfiguration": { "$ref": "#/types/aws-native:fis:ExperimentTemplateLogConfiguration" }, @@ -155839,6 +159769,50 @@ "targets" ] }, + "aws-native:fis:TargetAccountConfiguration": { + "description": "Resource schema for AWS::FIS::TargetAccountConfiguration", + "properties": { + "accountId": { + "type": "string", + "replaceOnChanges": true + }, + "description": { + "type": "string" + }, + "experimentTemplateId": { + "type": "string", + "replaceOnChanges": true + }, + "roleArn": { + "type": "string" + } + }, + "type": "object", + "required": [ + "accountId", + "experimentTemplateId", + "roleArn" + ], + "inputProperties": { + "accountId": { + "type": "string" + }, + "description": { + "type": "string" + }, + "experimentTemplateId": { + "type": "string" + }, + "roleArn": { + "type": "string" + } + }, + "requiredInputs": [ + "accountId", + "experimentTemplateId", + "roleArn" + ] + }, "aws-native:fms:NotificationChannel": { "description": "Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs.", "properties": { @@ -156972,6 +160946,11 @@ "$ref": "#/types/aws-native:gamelift:FleetAnywhereConfiguration", "description": "Configuration for Anywhere fleet." }, + "applyCapacity": { + "$ref": "#/types/aws-native:gamelift:FleetApplyCapacity", + "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", + "replaceOnChanges": true + }, "buildId": { "type": "string", "description": "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.", @@ -157114,6 +161093,10 @@ "$ref": "#/types/aws-native:gamelift:FleetAnywhereConfiguration", "description": "Configuration for Anywhere fleet." }, + "applyCapacity": { + "$ref": "#/types/aws-native:gamelift:FleetApplyCapacity", + "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer." + }, "buildId": { "type": "string", "description": "A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created." @@ -160041,7 +164024,8 @@ "properties": { "groupId": { "type": "string", - "description": "The unique identifier for a group in the identity store." + "description": "The unique identifier for a group in the identity store.", + "replaceOnChanges": true }, "identityStoreId": { "type": "string", @@ -160050,7 +164034,8 @@ }, "memberId": { "$ref": "#/types/aws-native:identitystore:GroupMembershipMemberId", - "description": "An object containing the identifier of a group member." + "description": "An object containing the identifier of a group member.", + "replaceOnChanges": true }, "membershipId": { "type": "string", @@ -160449,6 +164434,10 @@ "description": "Collects additional information about the image being created, including the operating system (OS) version and package list.", "replaceOnChanges": true }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageId": { "type": "string", "description": "The AMI ID of the EC2 AMI in current region." @@ -160485,6 +164474,14 @@ "$ref": "pulumi.json#/Any", "description": "The tags associated with the image.", "replaceOnChanges": true + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfiguration" + }, + "description": "Workflows to define the image build process", + "replaceOnChanges": true } }, "type": "object", @@ -160507,6 +164504,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -160526,6 +164527,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags associated with the image." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImageWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } } }, @@ -160552,6 +164560,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -160584,6 +164596,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags of this image pipeline." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } }, "type": "object", @@ -160607,6 +164626,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -160638,6 +164661,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags of this image pipeline." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } } }, @@ -160991,6 +165021,109 @@ "resourceType" ] }, + "aws-native:imagebuilder:Workflow": { + "description": "Resource schema for AWS::ImageBuilder::Workflow", + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow." + }, + "changeDescription": { + "type": "string", + "description": "The change description of the workflow.", + "replaceOnChanges": true + }, + "data": { + "type": "string", + "description": "The data of the workflow.", + "replaceOnChanges": true + }, + "description": { + "type": "string", + "description": "The description of the workflow.", + "replaceOnChanges": true + }, + "kmsKeyId": { + "type": "string", + "description": "The KMS key identifier used to encrypt the workflow.", + "replaceOnChanges": true + }, + "name": { + "type": "string", + "description": "The name of the workflow.", + "replaceOnChanges": true + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "The tags associated with the workflow.", + "replaceOnChanges": true + }, + "type": { + "$ref": "#/types/aws-native:imagebuilder:WorkflowType", + "description": "The type of the workflow denotes whether the workflow is used to build, test, or distribute.", + "replaceOnChanges": true + }, + "uri": { + "type": "string", + "description": "The uri of the workflow.", + "replaceOnChanges": true + }, + "version": { + "type": "string", + "description": "The version of the workflow.", + "replaceOnChanges": true + } + }, + "type": "object", + "required": [ + "arn", + "name", + "type", + "version" + ], + "inputProperties": { + "changeDescription": { + "type": "string", + "description": "The change description of the workflow." + }, + "data": { + "type": "string", + "description": "The data of the workflow." + }, + "description": { + "type": "string", + "description": "The description of the workflow." + }, + "kmsKeyId": { + "type": "string", + "description": "The KMS key identifier used to encrypt the workflow." + }, + "name": { + "type": "string", + "description": "The name of the workflow." + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "The tags associated with the workflow." + }, + "type": { + "$ref": "#/types/aws-native:imagebuilder:WorkflowType", + "description": "The type of the workflow denotes whether the workflow is used to build, test, or distribute." + }, + "uri": { + "type": "string", + "description": "The uri of the workflow." + }, + "version": { + "type": "string", + "description": "The version of the workflow." + } + }, + "requiredInputs": [ + "type", + "version" + ] + }, "aws-native:index:ExtensionResource": { "description": "A special resource that enables deploying CloudFormation Extensions (third-party resources). An extension has to be pre-registered in your AWS account in order to use this resource.", "properties": { @@ -161615,6 +165748,65 @@ "status" ] }, + "aws-native:iot:CertificateProvider": { + "description": "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider.", + "properties": { + "accountDefaultForOperations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderOperation" + } + }, + "arn": { + "type": "string" + }, + "certificateProviderName": { + "type": "string", + "replaceOnChanges": true + }, + "lambdaFunctionArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "type": "object", + "required": [ + "accountDefaultForOperations", + "arn", + "lambdaFunctionArn" + ], + "inputProperties": { + "accountDefaultForOperations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderOperation" + } + }, + "certificateProviderName": { + "type": "string" + }, + "lambdaFunctionArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + }, + "requiredInputs": [ + "accountDefaultForOperations", + "lambdaFunctionArn" + ] + }, "aws-native:iot:CustomMetric": { "description": "A custom metric published by your devices to Device Defender.\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 batteryPercentageMetric = new AwsNative.IoT.CustomMetric(\"batteryPercentageMetric\", new()\n {\n MetricName = \"batteryPercentage\",\n DisplayName = \"Remaining battery percentage\",\n MetricType = AwsNative.IoT.CustomMetricMetricType.Number,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/iot\"\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 := iot.NewCustomMetric(ctx, \"batteryPercentageMetric\", \u0026iot.CustomMetricArgs{\n\t\t\tMetricName: pulumi.String(\"batteryPercentage\"),\n\t\t\tDisplayName: pulumi.String(\"Remaining battery percentage\"),\n\t\t\tMetricType: iot.CustomMetricMetricTypeNumber,\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 batteryPercentageMetric = new aws_native.iot.CustomMetric(\"batteryPercentageMetric\", {\n metricName: \"batteryPercentage\",\n displayName: \"Remaining battery percentage\",\n metricType: aws_native.iot.CustomMetricMetricType.Number,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nbattery_percentage_metric = aws_native.iot.CustomMetric(\"batteryPercentageMetric\",\n metric_name=\"batteryPercentage\",\n display_name=\"Remaining battery percentage\",\n metric_type=aws_native.iot.CustomMetricMetricType.NUMBER)\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { @@ -167078,23 +171270,27 @@ ] }, "aws-native:lambda:EventInvokeConfig": { - "description": "Resource Type definition for AWS::Lambda::EventInvokeConfig", + "description": "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias.", "properties": { "destinationConfig": { "$ref": "#/types/aws-native:lambda:EventInvokeConfigDestinationConfig" }, "functionName": { "type": "string", + "description": "The name of the Lambda function.", "replaceOnChanges": true }, "maximumEventAgeInSeconds": { - "type": "integer" + "type": "integer", + "description": "The maximum age of a request that Lambda sends to a function for processing." }, "maximumRetryAttempts": { - "type": "integer" + "type": "integer", + "description": "The maximum number of times to retry when the function returns an error." }, "qualifier": { "type": "string", + "description": "The identifier of a version or alias.", "replaceOnChanges": true } }, @@ -167108,16 +171304,20 @@ "$ref": "#/types/aws-native:lambda:EventInvokeConfigDestinationConfig" }, "functionName": { - "type": "string" + "type": "string", + "description": "The name of the Lambda function." }, "maximumEventAgeInSeconds": { - "type": "integer" + "type": "integer", + "description": "The maximum age of a request that Lambda sends to a function for processing." }, "maximumRetryAttempts": { - "type": "integer" + "type": "integer", + "description": "The maximum number of times to retry when the function returns an error." }, "qualifier": { - "type": "string" + "type": "string", + "description": "The identifier of a version or alias." } }, "requiredInputs": [ @@ -167433,10 +171633,6 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, - "policy": { - "$ref": "pulumi.json#/Any", - "description": "The resource policy of your function" - }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -167561,10 +171757,6 @@ "$ref": "#/types/aws-native:lambda:FunctionPackageType", "description": "PackageType." }, - "policy": { - "$ref": "pulumi.json#/Any", - "description": "The resource policy of your function" - }, "reservedConcurrentExecutions": { "type": "integer", "description": "The number of simultaneous executions to reserve for the function." @@ -169970,28 +174162,28 @@ ] }, "aws-native:logs:Delivery": { - "description": "Resource Type definition for AWS::Logs::Delivery.", + "description": "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html).", "properties": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery." }, "deliveryDestinationArn": { "type": "string", - "description": "The value of the DeliveryDestinationArn property for this object.", + "description": "The ARN of the delivery destination that is associated with this delivery.", "replaceOnChanges": true }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "deliveryId": { "type": "string", - "description": "The value of the Id property for this object." + "description": "The unique ID that identifies this delivery in your account." }, "deliverySourceName": { "type": "string", - "description": "The value of the DeliverySourceName property for this object.", + "description": "The name of the delivery source that is associated with this delivery.", "replaceOnChanges": true }, "tags": { @@ -169999,7 +174191,7 @@ "items": { "$ref": "#/types/aws-native:logs:DeliveryTag" }, - "description": "The value of the Tags property for this object." + "description": "The tags that have been assigned to this delivery." } }, "type": "object", @@ -170013,18 +174205,18 @@ "inputProperties": { "deliveryDestinationArn": { "type": "string", - "description": "The value of the DeliveryDestinationArn property for this object." + "description": "The ARN of the delivery destination that is associated with this delivery." }, "deliverySourceName": { "type": "string", - "description": "The value of the DeliverySourceName property for this object." + "description": "The name of the delivery source that is associated with this delivery." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryTag" }, - "description": "The value of the Tags property for this object." + "description": "The tags that have been assigned to this delivery." } }, "requiredInputs": [ @@ -170033,11 +174225,11 @@ ] }, "aws-native:logs:DeliveryDestination": { - "description": "Resource Type definition for AWS::Logs::DeliveryDestination", + "description": "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations.", "properties": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery destination." }, "deliveryDestinationPolicy": { "$ref": "pulumi.json#/Any", @@ -170045,16 +174237,16 @@ }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "destinationResourceArn": { "type": "string", - "description": "The ARN of the Destination Resource.", + "description": "The ARN of the AWS resource that will receive the logs.", "replaceOnChanges": true }, "name": { "type": "string", - "description": "The unique name of the Delivery Destination.", + "description": "The name of this delivery destination.", "replaceOnChanges": true }, "tags": { @@ -170062,7 +174254,7 @@ "items": { "$ref": "#/types/aws-native:logs:DeliveryDestinationTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery destination." } }, "type": "object", @@ -170078,27 +174270,27 @@ }, "destinationResourceArn": { "type": "string", - "description": "The ARN of the Destination Resource." + "description": "The ARN of the AWS resource that will receive the logs." }, "name": { "type": "string", - "description": "The unique name of the Delivery Destination." + "description": "The name of this delivery destination." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryDestinationTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery destination." } } }, "aws-native:logs:DeliverySource": { - "description": "Resource Type definition for AWS::Logs::DeliverySource.", + "description": " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html).", "properties": { "arn": { "type": "string", - "description": "The ARN of the Aqueduct Source." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery source." }, "logType": { "type": "string", @@ -170118,18 +174310,18 @@ "items": { "type": "string" }, - "description": "List of ARN of the resource that will be sending the logs" + "description": "This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array." }, "service": { "type": "string", - "description": "The service generating the log" + "description": "The AWS service that is sending logs." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliverySourceTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery source." } }, "type": "object", @@ -170157,7 +174349,7 @@ "items": { "$ref": "#/types/aws-native:logs:DeliverySourceTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery source." } } }, @@ -177713,6 +181905,9 @@ "domainEndpointOptions": { "$ref": "#/types/aws-native:opensearchservice:DomainEndpointOptions" }, + "domainEndpointV2": { + "type": "string" + }, "domainEndpoints": { "$ref": "pulumi.json#/Any" }, @@ -177729,6 +181924,9 @@ "engineVersion": { "type": "string" }, + "ipAddressType": { + "type": "string" + }, "logPublishingOptions": { "$ref": "pulumi.json#/Any" }, @@ -177763,6 +181961,7 @@ "arn", "domainArn", "domainEndpoint", + "domainEndpointV2", "domainEndpoints", "serviceSoftwareOptions" ], @@ -177797,6 +181996,9 @@ "engineVersion": { "type": "string" }, + "ipAddressType": { + "type": "string" + }, "logPublishingOptions": { "$ref": "pulumi.json#/Any" }, @@ -178334,6 +182536,12 @@ "aws-native:osis:Pipeline": { "description": "An OpenSearch Ingestion Service Data Prepper pipeline running Data Prepper.", "properties": { + "bufferOptions": { + "$ref": "#/types/aws-native:osis:PipelineBufferOptions" + }, + "encryptionAtRestOptions": { + "$ref": "#/types/aws-native:osis:PipelineEncryptionAtRestOptions" + }, "ingestEndpointUrls": { "type": "array", "items": { @@ -178394,6 +182602,12 @@ "vpcEndpoints" ], "inputProperties": { + "bufferOptions": { + "$ref": "#/types/aws-native:osis:PipelineBufferOptions" + }, + "encryptionAtRestOptions": { + "$ref": "#/types/aws-native:osis:PipelineEncryptionAtRestOptions" + }, "logPublishingOptions": { "$ref": "#/types/aws-native:osis:PipelineLogPublishingOptions" }, @@ -187586,12 +191800,12 @@ }, "bucketName": { "type": "string", - "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", + "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.", "replaceOnChanges": true }, "dataRedundancy": { "$ref": "#/types/aws-native:s3express:DirectoryBucketDataRedundancy", - "description": "Specifies the number of Avilability Zone that's used for redundancy for the bucket.", + "description": "Specifies the number of Availability Zone that's used for redundancy for the bucket.", "replaceOnChanges": true }, "locationName": { @@ -187609,11 +191823,11 @@ "inputProperties": { "bucketName": { "type": "string", - "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." }, "dataRedundancy": { "$ref": "#/types/aws-native:s3express:DirectoryBucketDataRedundancy", - "description": "Specifies the number of Avilability Zone that's used for redundancy for the bucket." + "description": "Specifies the number of Availability Zone that's used for redundancy for the bucket." }, "locationName": { "type": "string", @@ -188333,8 +192547,7 @@ "properties": { "appNetworkAccessType": { "$ref": "#/types/aws-native:sagemaker:DomainAppNetworkAccessType", - "description": "Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly.", - "replaceOnChanges": true + "description": "Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly." }, "appSecurityGroupManagement": { "$ref": "#/types/aws-native:sagemaker:DomainAppSecurityGroupManagement", @@ -188382,6 +192595,10 @@ "type": "string", "description": "The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app." }, + "singleSignOnApplicationArn": { + "type": "string", + "description": "The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023." + }, "singleSignOnManagedApplicationInstanceId": { "type": "string", "description": "The SSO managed application instance ID." @@ -188391,8 +192608,7 @@ "items": { "type": "string" }, - "description": "The VPC subnets that Studio uses for communication.", - "replaceOnChanges": true + "description": "The VPC subnets that Studio uses for communication." }, "tags": { "type": "array", @@ -188421,6 +192637,7 @@ "domainName", "homeEfsFileSystemId", "securityGroupIdForDomainBoundary", + "singleSignOnApplicationArn", "singleSignOnManagedApplicationInstanceId", "subnetIds", "url", @@ -190447,6 +194664,56 @@ } } }, + "aws-native:securityhub:Hub": { + "description": "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n", + "properties": { + "arn": { + "type": "string", + "description": "An ARN is automatically created for the customer." + }, + "autoEnableControls": { + "type": "boolean", + "description": "Whether to automatically enable new controls when they are added to standards that are enabled" + }, + "controlFindingGenerator": { + "type": "string", + "description": "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards." + }, + "enableDefaultStandards": { + "type": "boolean", + "description": "Whether to enable the security standards that Security Hub has designated as automatically enabled." + }, + "subscribedAt": { + "type": "string", + "description": "The date and time when Security Hub was enabled in the account." + }, + "tags": { + "$ref": "#/types/aws-native:securityhub:HubTags" + } + }, + "type": "object", + "required": [ + "arn", + "subscribedAt" + ], + "inputProperties": { + "autoEnableControls": { + "type": "boolean", + "description": "Whether to automatically enable new controls when they are added to standards that are enabled" + }, + "controlFindingGenerator": { + "type": "string", + "description": "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards." + }, + "enableDefaultStandards": { + "type": "boolean", + "description": "Whether to enable the security standards that Security Hub has designated as automatically enabled." + }, + "tags": { + "$ref": "#/types/aws-native:securityhub:HubTags" + } + } + }, "aws-native:securityhub:Standard": { "description": "The AWS::SecurityHub::Standard resource represents the implementation of an individual AWS Security Hub Standard in your account. It requires you have SecurityHub enabled before you can enable the Standard.", "properties": { @@ -190703,6 +194970,18 @@ "aws-native:servicecatalogappregistry:Application": { "description": "Resource Schema for AWS::ServiceCatalogAppRegistry::Application", "properties": { + "applicationName": { + "type": "string", + "description": "The name of the application. " + }, + "applicationTagKey": { + "type": "string", + "description": "The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value." + }, + "applicationTagValue": { + "type": "string", + "description": "The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. " + }, "arn": { "type": "string" }, @@ -190720,6 +194999,9 @@ }, "type": "object", "required": [ + "applicationName", + "applicationTagKey", + "applicationTagValue", "arn", "name" ], @@ -200454,6 +204736,203 @@ } } }, + "aws-native:b2bi:getCapability": { + "description": "Definition of AWS::B2BI::Capability Resource Type", + "inputs": { + "properties": { + "capabilityId": { + "type": "string" + } + }, + "required": [ + "capabilityId" + ] + }, + "outputs": { + "properties": { + "capabilityArn": { + "type": "string" + }, + "capabilityId": { + "type": "string" + }, + "configuration": { + "$ref": "#/types/aws-native:b2bi:CapabilityConfigurationProperties" + }, + "createdAt": { + "type": "string" + }, + "instructionsDocuments": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityS3Location" + } + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:CapabilityTag" + } + } + } + } + }, + "aws-native:b2bi:getPartnership": { + "description": "Definition of AWS::B2BI::Partnership Resource Type", + "inputs": { + "properties": { + "partnershipId": { + "type": "string" + } + }, + "required": [ + "partnershipId" + ] + }, + "outputs": { + "properties": { + "capabilities": { + "type": "array", + "items": { + "type": "string" + } + }, + "createdAt": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "partnershipArn": { + "type": "string" + }, + "partnershipId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:PartnershipTag" + } + }, + "tradingPartnerId": { + "type": "string" + } + } + } + }, + "aws-native:b2bi:getProfile": { + "description": "Definition of AWS::B2BI::Profile Resource Type", + "inputs": { + "properties": { + "profileId": { + "type": "string" + } + }, + "required": [ + "profileId" + ] + }, + "outputs": { + "properties": { + "businessName": { + "type": "string" + }, + "createdAt": { + "type": "string" + }, + "email": { + "type": "string" + }, + "logGroupName": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "phone": { + "type": "string" + }, + "profileArn": { + "type": "string" + }, + "profileId": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:ProfileTag" + } + } + } + } + }, + "aws-native:b2bi:getTransformer": { + "description": "Definition of AWS::B2BI::Transformer Resource Type", + "inputs": { + "properties": { + "transformerId": { + "type": "string" + } + }, + "required": [ + "transformerId" + ] + }, + "outputs": { + "properties": { + "createdAt": { + "type": "string" + }, + "ediType": { + "$ref": "#/types/aws-native:b2bi:TransformerEdiTypeProperties" + }, + "fileFormat": { + "$ref": "#/types/aws-native:b2bi:TransformerFileFormat" + }, + "mappingTemplate": { + "type": "string" + }, + "modifiedAt": { + "type": "string" + }, + "name": { + "type": "string" + }, + "sampleDocument": { + "type": "string" + }, + "status": { + "$ref": "#/types/aws-native:b2bi:TransformerStatus" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:b2bi:TransformerTag" + } + }, + "transformerArn": { + "type": "string" + }, + "transformerId": { + "type": "string" + } + } + } + }, "aws-native:backup:getBackupPlan": { "description": "Resource Type definition for AWS::Backup::BackupPlan", "inputs": { @@ -200771,6 +205250,39 @@ } } }, + "aws-native:batch:getJobDefinition": { + "description": "Resource Type definition for AWS::Batch::JobDefinition", + "inputs": { + "properties": { + "jobDefinitionArn": { + "type": "string" + } + }, + "required": [ + "jobDefinitionArn" + ] + }, + "outputs": { + "properties": { + "containerOrchestrationType": { + "type": "string" + }, + "jobDefinitionArn": { + "type": "string" + }, + "revision": { + "type": "integer" + }, + "status": { + "type": "string" + }, + "tags": { + "$ref": "pulumi.json#/Any", + "description": "A key-value pair to associate with a resource." + } + } + } + }, "aws-native:batch:getJobQueue": { "description": "Resource Type definition for AWS::Batch::JobQueue", "inputs": { @@ -200949,6 +205461,100 @@ } } }, + "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": { + "properties": { + "monitorArn": { + "type": "string" + } + }, + "required": [ + "monitorArn" + ] + }, + "outputs": { + "properties": { + "creationDate": { + "type": "string", + "description": "The date when the monitor was created. " + }, + "dimensionalValueCount": { + "type": "integer", + "description": "The value for evaluated dimensions." + }, + "lastEvaluatedDate": { + "type": "string", + "description": "The date when the monitor last evaluated for anomalies." + }, + "lastUpdatedDate": { + "type": "string", + "description": "The date when the monitor was last updated." + }, + "monitorArn": { + "type": "string" + }, + "monitorName": { + "type": "string", + "description": "The name of the monitor." + } + } + } + }, + "aws-native:ce:getAnomalySubscription": { + "description": "AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified", + "inputs": { + "properties": { + "subscriptionArn": { + "type": "string" + } + }, + "required": [ + "subscriptionArn" + ] + }, + "outputs": { + "properties": { + "accountId": { + "type": "string", + "description": "The accountId" + }, + "frequency": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionFrequency", + "description": "The frequency at which anomaly reports are sent over email. " + }, + "monitorArnList": { + "type": "array", + "items": { + "type": "string" + }, + "description": "A list of cost anomaly monitors." + }, + "subscribers": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ce:AnomalySubscriptionSubscriber" + }, + "description": "A list of subscriber" + }, + "subscriptionArn": { + "type": "string" + }, + "subscriptionName": { + "type": "string", + "description": "The name of the subscription." + }, + "threshold": { + "type": "number", + "description": "The dollar value that triggers a notification if the threshold is exceeded. " + }, + "thresholdExpression": { + "type": "string", + "description": "An Expression object in JSON String format used to specify the anomalies that you want to generate alerts for." + } + } + } + }, "aws-native:ce:getCostCategory": { "description": "Cost Category enables you to map your cost and usage into meaningful categories. You can use Cost Category to organize your costs using a rule-based engine.", "inputs": { @@ -201312,6 +205918,9 @@ "membershipIdentifier": { "type": "string" }, + "paymentConfiguration": { + "$ref": "#/types/aws-native:cleanrooms:MembershipPaymentConfiguration" + }, "queryLogStatus": { "$ref": "#/types/aws-native:cleanrooms:MembershipQueryLogStatus" }, @@ -202211,6 +206820,14 @@ "type": "string", "description": "The ARN of the event data store." }, + "federationEnabled": { + "type": "boolean", + "description": "Indicates whether federation is enabled on an event data store." + }, + "federationRoleArn": { + "type": "string", + "description": "The ARN of the role used for event data store federation." + }, "ingestionEnabled": { "type": "boolean", "description": "Indicates whether the event data store is ingesting events." @@ -203966,6 +208583,13 @@ "serviceRole": { "type": "string", "description": "Service linked role created as part of instance creation." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:connect:InstanceTag" + }, + "description": "An array of key-value pairs to apply to this resource." } } } @@ -206491,6 +211115,207 @@ } } }, + "aws-native:dms:getDataProvider": { + "description": "Resource schema for AWS::DMS::DataProvider", + "inputs": { + "properties": { + "dataProviderArn": { + "type": "string", + "description": "The data provider ARN." + } + }, + "required": [ + "dataProviderArn" + ] + }, + "outputs": { + "properties": { + "dataProviderArn": { + "type": "string", + "description": "The data provider ARN." + }, + "dataProviderCreationTime": { + "type": "string", + "description": "The data provider creation time." + }, + "dataProviderName": { + "type": "string", + "description": "The property describes a name to identify the data provider." + }, + "description": { + "type": "string", + "description": "The optional description of the data provider." + }, + "engine": { + "$ref": "#/types/aws-native:dms:DataProviderEngine", + "description": "The property describes a data engine for the data provider." + }, + "settings": { + "oneOf": [ + { + "$ref": "#/types/aws-native:dms:Settings0Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings1Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings2Properties" + }, + { + "$ref": "#/types/aws-native:dms:Settings3Properties" + } + ], + "description": "The property identifies the exact type of settings for the data provider." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:DataProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + } + } + }, + "aws-native:dms:getInstanceProfile": { + "description": "Resource schema for AWS::DMS::InstanceProfile.", + "inputs": { + "properties": { + "instanceProfileArn": { + "type": "string", + "description": "The property describes an ARN of the instance profile." + } + }, + "required": [ + "instanceProfileArn" + ] + }, + "outputs": { + "properties": { + "availabilityZone": { + "type": "string", + "description": "The property describes an availability zone of the instance profile." + }, + "description": { + "type": "string", + "description": "The optional description of the instance profile." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an ARN of the instance profile." + }, + "instanceProfileCreationTime": { + "type": "string", + "description": "The property describes a creating time of the instance profile." + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes a name for the instance profile." + }, + "kmsKeyArn": { + "type": "string", + "description": "The property describes kms key arn for the instance profile." + }, + "networkType": { + "$ref": "#/types/aws-native:dms:InstanceProfileNetworkType", + "description": "The property describes a network type for the instance profile." + }, + "publiclyAccessible": { + "type": "boolean", + "description": "The property describes the publicly accessible of the instance profile" + }, + "subnetGroupIdentifier": { + "type": "string", + "description": "The property describes a subnet group identifier for the instance profile." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:InstanceProfileTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "vpcSecurityGroups": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The property describes vps security groups for the instance profile." + } + } + } + }, + "aws-native:dms:getMigrationProject": { + "description": "Resource schema for AWS::DMS::MigrationProject", + "inputs": { + "properties": { + "migrationProjectArn": { + "type": "string", + "description": "The property describes an ARN of the migration project." + } + }, + "required": [ + "migrationProjectArn" + ] + }, + "outputs": { + "properties": { + "description": { + "type": "string", + "description": "The optional description of the migration project." + }, + "instanceProfileArn": { + "type": "string", + "description": "The property describes an instance profile arn for the migration project. For read" + }, + "instanceProfileName": { + "type": "string", + "description": "The property describes an instance profile name for the migration project. For read" + }, + "migrationProjectArn": { + "type": "string", + "description": "The property describes an ARN of the migration project." + }, + "migrationProjectCreationTime": { + "type": "string", + "description": "The property describes a creating time of the migration project." + }, + "migrationProjectName": { + "type": "string", + "description": "The property describes a name to identify the migration project." + }, + "schemaConversionApplicationAttributes": { + "$ref": "#/types/aws-native:dms:SchemaConversionApplicationAttributesProperties", + "description": "The property describes schema conversion application attributes for the migration project." + }, + "sourceDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes source data provider descriptors for the migration project." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectTag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, + "targetDataProviderDescriptors": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:dms:MigrationProjectDataProviderDescriptor" + }, + "description": "The property describes target data provider descriptors for the migration project." + }, + "transformationRules": { + "type": "string", + "description": "The property describes transformation rules for the migration project." + } + } + } + }, "aws-native:dms:getReplicationConfig": { "description": "A replication configuration that you later provide to configure and start a AWS DMS Serverless replication", "inputs": { @@ -206525,10 +211350,6 @@ "$ref": "#/types/aws-native:dms:ReplicationConfigReplicationType", "description": "The type of AWS DMS Serverless replication to provision using this replication configuration" }, - "resourceIdentifier": { - "type": "string", - "description": "A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource" - }, "sourceEndpointArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the source endpoint for this AWS DMS Serverless replication configuration" @@ -208325,6 +213146,10 @@ "type": "string", "description": "The primary identifier of the resource generated by the service." }, + "coreNetworkArn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the core network." + }, "egressOnlyInternetGatewayId": { "type": "string", "description": "The ID of the egress-only internet gateway." @@ -208393,6 +213218,58 @@ } } }, + "aws-native:ec2:getSecurityGroupEgress": { + "description": "Resource Type definition for AWS::EC2::SecurityGroupEgress", + "inputs": { + "properties": { + "id": { + "type": "string", + "description": "The Security Group Rule Id" + } + }, + "required": [ + "id" + ] + }, + "outputs": { + "properties": { + "description": { + "type": "string", + "description": "Resource Type definition for an egress (outbound) security group rule." + }, + "id": { + "type": "string", + "description": "The Security Group Rule Id" + } + } + } + }, + "aws-native:ec2:getSnapshotBlockPublicAccess": { + "description": "Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess", + "inputs": { + "properties": { + "accountId": { + "type": "string", + "description": "The identifier for the specified AWS account." + } + }, + "required": [ + "accountId" + ] + }, + "outputs": { + "properties": { + "accountId": { + "type": "string", + "description": "The identifier for the specified AWS account." + }, + "state": { + "$ref": "#/types/aws-native:ec2:SnapshotBlockPublicAccessState", + "description": "The state of EBS Snapshot Block Public Access." + } + } + } + }, "aws-native:ec2:getSpotFleet": { "description": "Resource Type definition for AWS::EC2::SpotFleet", "inputs": { @@ -210198,6 +215075,9 @@ }, "outputs": { "properties": { + "accessConfig": { + "$ref": "#/types/aws-native:eks:ClusterAccessConfig" + }, "arn": { "type": "string", "description": "The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod." @@ -211728,6 +216608,84 @@ } } }, + "aws-native:eventschemas:getDiscoverer": { + "description": "Resource Type definition for AWS::EventSchemas::Discoverer", + "inputs": { + "properties": { + "discovererArn": { + "type": "string", + "description": "The ARN of the discoverer." + } + }, + "required": [ + "discovererArn" + ] + }, + "outputs": { + "properties": { + "crossAccount": { + "type": "boolean", + "description": "Defines whether event schemas from other accounts are discovered. Default is True." + }, + "description": { + "type": "string", + "description": "A description for the discoverer." + }, + "discovererArn": { + "type": "string", + "description": "The ARN of the discoverer." + }, + "discovererId": { + "type": "string", + "description": "The Id of the discoverer." + }, + "state": { + "type": "string", + "description": "Defines the current state of the discoverer." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:DiscovererTagsEntry" + }, + "description": "Tags associated with the resource." + } + } + } + }, + "aws-native:eventschemas:getRegistry": { + "description": "Resource Type definition for AWS::EventSchemas::Registry", + "inputs": { + "properties": { + "registryArn": { + "type": "string", + "description": "The ARN of the registry." + } + }, + "required": [ + "registryArn" + ] + }, + "outputs": { + "properties": { + "description": { + "type": "string", + "description": "A description of the registry to be created." + }, + "registryArn": { + "type": "string", + "description": "The ARN of the registry." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:RegistryTagsEntry" + }, + "description": "Tags associated with the resource." + } + } + } + }, "aws-native:eventschemas:getRegistryPolicy": { "description": "Resource Type definition for AWS::EventSchemas::RegistryPolicy", "inputs": { @@ -211757,6 +216715,59 @@ } } }, + "aws-native:eventschemas:getSchema": { + "description": "Resource Type definition for AWS::EventSchemas::Schema", + "inputs": { + "properties": { + "schemaArn": { + "type": "string", + "description": "The ARN of the schema." + } + }, + "required": [ + "schemaArn" + ] + }, + "outputs": { + "properties": { + "content": { + "type": "string", + "description": "The source of the schema definition." + }, + "description": { + "type": "string", + "description": "A description of the schema." + }, + "lastModified": { + "type": "string", + "description": "The last modified time of the schema." + }, + "schemaArn": { + "type": "string", + "description": "The ARN of the schema." + }, + "schemaVersion": { + "type": "string", + "description": "The version number of the schema." + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:eventschemas:SchemaTagsEntry" + }, + "description": "Tags associated with the resource." + }, + "type": { + "type": "string", + "description": "The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4." + }, + "versionCreatedDate": { + "type": "string", + "description": "The date the schema version was created." + } + } + } + }, "aws-native:evidently:getExperiment": { "description": "Resource Type definition for AWS::Evidently::Experiment.", "inputs": { @@ -212071,6 +217082,9 @@ "description": { "type": "string" }, + "experimentOptions": { + "$ref": "#/types/aws-native:fis:ExperimentTemplateExperimentOptions" + }, "id": { "type": "string" }, @@ -212092,6 +217106,33 @@ } } }, + "aws-native:fis:getTargetAccountConfiguration": { + "description": "Resource schema for AWS::FIS::TargetAccountConfiguration", + "inputs": { + "properties": { + "accountId": { + "type": "string" + }, + "experimentTemplateId": { + "type": "string" + } + }, + "required": [ + "experimentTemplateId", + "accountId" + ] + }, + "outputs": { + "properties": { + "description": { + "type": "string" + }, + "roleArn": { + "type": "string" + } + } + } + }, "aws-native:fms:getNotificationChannel": { "description": "Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs.", "inputs": { @@ -214515,14 +219556,6 @@ }, "outputs": { "properties": { - "groupId": { - "type": "string", - "description": "The unique identifier for a group in the identity store." - }, - "memberId": { - "$ref": "#/types/aws-native:identitystore:GroupMembershipMemberId", - "description": "An object containing the identifier of a group member." - }, "membershipId": { "type": "string", "description": "The identifier for a GroupMembership in the identity store." @@ -214638,6 +219671,10 @@ "type": "string", "description": "The Amazon Resource Name (ARN) of the image." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageId": { "type": "string", "description": "The AMI ID of the EC2 AMI in current region." @@ -214688,6 +219725,10 @@ "type": "boolean", "description": "Collects additional information about the image being created, including the operating system (OS) version and package list." }, + "executionRole": { + "type": "string", + "description": "The execution role name/ARN for the image build, if provided" + }, "imageRecipeArn": { "type": "string", "description": "The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed." @@ -214715,6 +219756,13 @@ "tags": { "$ref": "pulumi.json#/Any", "description": "The tags of this image pipeline." + }, + "workflows": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:imagebuilder:ImagePipelineWorkflowConfiguration" + }, + "description": "Workflows to define the image build process" } } } @@ -214874,6 +219922,28 @@ } } }, + "aws-native:imagebuilder:getWorkflow": { + "description": "Resource schema for AWS::ImageBuilder::Workflow", + "inputs": { + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow." + } + }, + "required": [ + "arn" + ] + }, + "outputs": { + "properties": { + "arn": { + "type": "string", + "description": "The Amazon Resource Name (ARN) of the workflow." + } + } + } + }, "aws-native:index:cidr": { "inputs": { "properties": { @@ -215376,6 +220446,42 @@ } } }, + "aws-native:iot:getCertificateProvider": { + "description": "Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider.", + "inputs": { + "properties": { + "certificateProviderName": { + "type": "string" + } + }, + "required": [ + "certificateProviderName" + ] + }, + "outputs": { + "properties": { + "accountDefaultForOperations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderOperation" + } + }, + "arn": { + "type": "string" + }, + "lambdaFunctionArn": { + "type": "string" + }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iot:CertificateProviderTag" + }, + "description": "An array of key-value pairs to apply to this resource." + } + } + } + }, "aws-native:iot:getCustomMetric": { "description": "A custom metric published by your devices to Device Defender.", "inputs": { @@ -218573,15 +223679,21 @@ } }, "aws-native:lambda:getEventInvokeConfig": { - "description": "Resource Type definition for AWS::Lambda::EventInvokeConfig", + "description": "The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias.", "inputs": { "properties": { - "id": { - "type": "string" + "functionName": { + "type": "string", + "description": "The name of the Lambda function." + }, + "qualifier": { + "type": "string", + "description": "The identifier of a version or alias." } }, "required": [ - "id" + "functionName", + "qualifier" ] }, "outputs": { @@ -218589,14 +223701,13 @@ "destinationConfig": { "$ref": "#/types/aws-native:lambda:EventInvokeConfigDestinationConfig" }, - "id": { - "type": "string" - }, "maximumEventAgeInSeconds": { - "type": "integer" + "type": "integer", + "description": "The maximum age of a request that Lambda sends to a function for processing." }, "maximumRetryAttempts": { - "type": "integer" + "type": "integer", + "description": "The maximum number of times to retry when the function returns an error." } } } @@ -219970,12 +225081,12 @@ } }, "aws-native:logs:getDelivery": { - "description": "Resource Type definition for AWS::Logs::Delivery.", + "description": "This structure contains information about one delivery in your account.\n\nA delivery is a connection between a logical delivery source and a logical delivery destination.\n\nFor more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html).", "inputs": { "properties": { "deliveryId": { "type": "string", - "description": "The value of the Id property for this object." + "description": "The unique ID that identifies this delivery in your account." } }, "required": [ @@ -219986,33 +225097,33 @@ "properties": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery." }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "deliveryId": { "type": "string", - "description": "The value of the Id property for this object." + "description": "The unique ID that identifies this delivery in your account." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryTag" }, - "description": "The value of the Tags property for this object." + "description": "The tags that have been assigned to this delivery." } } } }, "aws-native:logs:getDeliveryDestination": { - "description": "Resource Type definition for AWS::Logs::DeliveryDestination", + "description": "This structure contains information about one delivery destination in your account.\n\nA delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations.", "inputs": { "properties": { "name": { "type": "string", - "description": "The unique name of the Delivery Destination." + "description": "The name of this delivery destination." } }, "required": [ @@ -220023,7 +225134,7 @@ "properties": { "arn": { "type": "string", - "description": "The value of the Arn property for this object." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery destination." }, "deliveryDestinationPolicy": { "$ref": "pulumi.json#/Any", @@ -220031,20 +225142,20 @@ }, "deliveryDestinationType": { "type": "string", - "description": "The value of the DeliveryDestinationType property for this object." + "description": "Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliveryDestinationTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery destination." } } } }, "aws-native:logs:getDeliverySource": { - "description": "Resource Type definition for AWS::Logs::DeliverySource.", + "description": " A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose.\n\nOnly some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html).", "inputs": { "properties": { "name": { @@ -220060,7 +225171,7 @@ "properties": { "arn": { "type": "string", - "description": "The ARN of the Aqueduct Source." + "description": "The Amazon Resource Name (ARN) that uniquely identifies this delivery source." }, "logType": { "type": "string", @@ -220071,18 +225182,18 @@ "items": { "type": "string" }, - "description": "List of ARN of the resource that will be sending the logs" + "description": "This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array." }, "service": { "type": "string", - "description": "The service generating the log" + "description": "The AWS service that is sending logs." }, "tags": { "type": "array", "items": { "$ref": "#/types/aws-native:logs:DeliverySourceTag" }, - "description": "An array of key-value pairs to apply to this resource." + "description": "The tags that have been assigned to this delivery source." } } } @@ -224149,6 +229260,9 @@ "domainEndpointOptions": { "$ref": "#/types/aws-native:opensearchservice:DomainEndpointOptions" }, + "domainEndpointV2": { + "type": "string" + }, "domainEndpoints": { "$ref": "pulumi.json#/Any" }, @@ -224164,6 +229278,9 @@ "id": { "type": "string" }, + "ipAddressType": { + "type": "string" + }, "logPublishingOptions": { "$ref": "pulumi.json#/Any" }, @@ -224481,6 +229598,12 @@ }, "outputs": { "properties": { + "bufferOptions": { + "$ref": "#/types/aws-native:osis:PipelineBufferOptions" + }, + "encryptionAtRestOptions": { + "$ref": "#/types/aws-native:osis:PipelineEncryptionAtRestOptions" + }, "ingestEndpointUrls": { "type": "array", "items": { @@ -228489,13 +233612,13 @@ "description": "Resource schema for AWS::Route53Resolver::ResolverConfig.", "inputs": { "properties": { - "id": { + "resourceId": { "type": "string", - "description": "Id" + "description": "ResourceId" } }, "required": [ - "id" + "resourceId" ] }, "outputs": { @@ -229151,7 +234274,7 @@ "properties": { "bucketName": { "type": "string", - "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." + "description": "Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name." } }, "required": [ @@ -229498,6 +234621,10 @@ }, "outputs": { "properties": { + "appNetworkAccessType": { + "$ref": "#/types/aws-native:sagemaker:DomainAppNetworkAccessType", + "description": "Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly." + }, "appSecurityGroupManagement": { "$ref": "#/types/aws-native:sagemaker:DomainAppSecurityGroupManagement", "description": "The entity that creates and manages the required security groups for inter-app communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided." @@ -229529,10 +234656,21 @@ "type": "string", "description": "The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app." }, + "singleSignOnApplicationArn": { + "type": "string", + "description": "The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023." + }, "singleSignOnManagedApplicationInstanceId": { "type": "string", "description": "The SSO managed application instance ID." }, + "subnetIds": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The VPC subnets that Studio uses for communication." + }, "url": { "type": "string", "description": "The URL to the created domain." @@ -230434,6 +235572,43 @@ } } }, + "aws-native:securityhub:getHub": { + "description": "The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub.\n\n", + "inputs": { + "properties": { + "arn": { + "type": "string", + "description": "An ARN is automatically created for the customer." + } + }, + "required": [ + "arn" + ] + }, + "outputs": { + "properties": { + "arn": { + "type": "string", + "description": "An ARN is automatically created for the customer." + }, + "autoEnableControls": { + "type": "boolean", + "description": "Whether to automatically enable new controls when they are added to standards that are enabled" + }, + "controlFindingGenerator": { + "type": "string", + "description": "This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards." + }, + "subscribedAt": { + "type": "string", + "description": "The date and time when Security Hub was enabled in the account." + }, + "tags": { + "$ref": "#/types/aws-native:securityhub:HubTags" + } + } + } + }, "aws-native:securityhub:getStandard": { "description": "The AWS::SecurityHub::Standard resource represents the implementation of an individual AWS Security Hub Standard in your account. It requires you have SecurityHub enabled before you can enable the Standard.", "inputs": { @@ -230578,6 +235753,18 @@ }, "outputs": { "properties": { + "applicationName": { + "type": "string", + "description": "The name of the application. " + }, + "applicationTagKey": { + "type": "string", + "description": "The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value." + }, + "applicationTagValue": { + "type": "string", + "description": "The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. " + }, "arn": { "type": "string" }, @@ -231449,9 +236636,6 @@ "$ref": "#/types/aws-native:ssm:AssociationTarget" }, "description": "The targets that the SSM document sends commands to." - }, - "waitForSuccessTimeoutSeconds": { - "type": "integer" } } } diff --git a/sdk/dotnet/AccessAnalyzer/Inputs/AnalyzerUnusedAccessConfigurationArgs.cs b/sdk/dotnet/AccessAnalyzer/Inputs/AnalyzerUnusedAccessConfigurationArgs.cs index 4385a08c34..b45f1ed15c 100644 --- a/sdk/dotnet/AccessAnalyzer/Inputs/AnalyzerUnusedAccessConfigurationArgs.cs +++ b/sdk/dotnet/AccessAnalyzer/Inputs/AnalyzerUnusedAccessConfigurationArgs.cs @@ -16,7 +16,7 @@ namespace Pulumi.AwsNative.AccessAnalyzer.Inputs public sealed class AnalyzerUnusedAccessConfigurationArgs : global::Pulumi.ResourceArgs { /// - /// The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + /// The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. /// [Input("unusedAccessAge")] public Input? UnusedAccessAge { get; set; } diff --git a/sdk/dotnet/AccessAnalyzer/Outputs/AnalyzerUnusedAccessConfiguration.cs b/sdk/dotnet/AccessAnalyzer/Outputs/AnalyzerUnusedAccessConfiguration.cs index 048e6dbbce..4154b2008d 100644 --- a/sdk/dotnet/AccessAnalyzer/Outputs/AnalyzerUnusedAccessConfiguration.cs +++ b/sdk/dotnet/AccessAnalyzer/Outputs/AnalyzerUnusedAccessConfiguration.cs @@ -17,7 +17,7 @@ namespace Pulumi.AwsNative.AccessAnalyzer.Outputs public sealed class AnalyzerUnusedAccessConfiguration { /// - /// The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + /// The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. /// public readonly int? UnusedAccessAge; diff --git a/sdk/dotnet/AppSync/GetGraphQlApi.cs b/sdk/dotnet/AppSync/GetGraphQlApi.cs index db508461e5..dfc909d831 100644 --- a/sdk/dotnet/AppSync/GetGraphQlApi.cs +++ b/sdk/dotnet/AppSync/GetGraphQlApi.cs @@ -57,6 +57,7 @@ public sealed class GetGraphQlApiResult public readonly string? Arn; public readonly string? AuthenticationType; public readonly string? GraphQlDns; + public readonly string? GraphQlEndpointArn; public readonly string? GraphQlUrl; public readonly string? Id; public readonly Outputs.GraphQlApiLambdaAuthorizerConfig? LambdaAuthorizerConfig; @@ -86,6 +87,8 @@ private GetGraphQlApiResult( string? graphQlDns, + string? graphQlEndpointArn, + string? graphQlUrl, string? id, @@ -120,6 +123,7 @@ private GetGraphQlApiResult( Arn = arn; AuthenticationType = authenticationType; GraphQlDns = graphQlDns; + GraphQlEndpointArn = graphQlEndpointArn; GraphQlUrl = graphQlUrl; Id = id; LambdaAuthorizerConfig = lambdaAuthorizerConfig; diff --git a/sdk/dotnet/AppSync/GraphQlApi.cs b/sdk/dotnet/AppSync/GraphQlApi.cs index 791ec8cfc5..ec860160e0 100644 --- a/sdk/dotnet/AppSync/GraphQlApi.cs +++ b/sdk/dotnet/AppSync/GraphQlApi.cs @@ -34,6 +34,9 @@ public partial class GraphQlApi : global::Pulumi.CustomResource [Output("graphQlDns")] public Output GraphQlDns { get; private set; } = null!; + [Output("graphQlEndpointArn")] + public Output GraphQlEndpointArn { get; private set; } = null!; + [Output("graphQlUrl")] public Output GraphQlUrl { get; private set; } = null!; diff --git a/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupInstanceRequirementsArgs.cs b/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupInstanceRequirementsArgs.cs index 42294a9585..74658f048f 100644 --- a/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupInstanceRequirementsArgs.cs +++ b/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupInstanceRequirementsArgs.cs @@ -97,8 +97,8 @@ public InputList LocalStorageTypes [Input("memoryGiBPerVCpu")] public Input? MemoryGiBPerVCpu { get; set; } - [Input("memoryMiB")] - public Input? MemoryMiB { get; set; } + [Input("memoryMiB", required: true)] + public Input MemoryMiB { get; set; } = null!; [Input("networkBandwidthGbps")] public Input? NetworkBandwidthGbps { get; set; } @@ -118,8 +118,8 @@ public InputList LocalStorageTypes [Input("totalLocalStorageGb")] public Input? TotalLocalStorageGb { get; set; } - [Input("vCpuCount")] - public Input? VCpuCount { get; set; } + [Input("vCpuCount", required: true)] + public Input VCpuCount { get; set; } = null!; public AutoScalingGroupInstanceRequirementsArgs() { diff --git a/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupInstanceRequirements.cs b/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupInstanceRequirements.cs index f24cac8f41..f9809128d1 100644 --- a/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupInstanceRequirements.cs +++ b/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupInstanceRequirements.cs @@ -28,14 +28,14 @@ public sealed class AutoScalingGroupInstanceRequirements public readonly string? LocalStorage; public readonly ImmutableArray LocalStorageTypes; public readonly Outputs.AutoScalingGroupMemoryGiBPerVCpuRequest? MemoryGiBPerVCpu; - public readonly Outputs.AutoScalingGroupMemoryMiBRequest? MemoryMiB; + public readonly Outputs.AutoScalingGroupMemoryMiBRequest MemoryMiB; public readonly Outputs.AutoScalingGroupNetworkBandwidthGbpsRequest? NetworkBandwidthGbps; public readonly Outputs.AutoScalingGroupNetworkInterfaceCountRequest? NetworkInterfaceCount; public readonly int? OnDemandMaxPricePercentageOverLowestPrice; public readonly bool? RequireHibernateSupport; public readonly int? SpotMaxPricePercentageOverLowestPrice; public readonly Outputs.AutoScalingGroupTotalLocalStorageGbRequest? TotalLocalStorageGb; - public readonly Outputs.AutoScalingGroupVCpuCountRequest? VCpuCount; + public readonly Outputs.AutoScalingGroupVCpuCountRequest VCpuCount; [OutputConstructor] private AutoScalingGroupInstanceRequirements( @@ -69,7 +69,7 @@ private AutoScalingGroupInstanceRequirements( Outputs.AutoScalingGroupMemoryGiBPerVCpuRequest? memoryGiBPerVCpu, - Outputs.AutoScalingGroupMemoryMiBRequest? memoryMiB, + Outputs.AutoScalingGroupMemoryMiBRequest memoryMiB, Outputs.AutoScalingGroupNetworkBandwidthGbpsRequest? networkBandwidthGbps, @@ -83,7 +83,7 @@ private AutoScalingGroupInstanceRequirements( Outputs.AutoScalingGroupTotalLocalStorageGbRequest? totalLocalStorageGb, - Outputs.AutoScalingGroupVCpuCountRequest? vCpuCount) + Outputs.AutoScalingGroupVCpuCountRequest vCpuCount) { AcceleratorCount = acceleratorCount; AcceleratorManufacturers = acceleratorManufacturers; diff --git a/sdk/dotnet/B2bi/Capability.cs b/sdk/dotnet/B2bi/Capability.cs new file mode 100644 index 0000000000..9b90c8d40d --- /dev/null +++ b/sdk/dotnet/B2bi/Capability.cs @@ -0,0 +1,124 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi +{ + /// + /// Definition of AWS::B2BI::Capability Resource Type + /// + [AwsNativeResourceType("aws-native:b2bi:Capability")] + public partial class Capability : global::Pulumi.CustomResource + { + [Output("capabilityArn")] + public Output CapabilityArn { get; private set; } = null!; + + [Output("capabilityId")] + public Output CapabilityId { get; private set; } = null!; + + [Output("configuration")] + public Output Configuration { get; private set; } = null!; + + [Output("createdAt")] + public Output CreatedAt { get; private set; } = null!; + + [Output("instructionsDocuments")] + public Output> InstructionsDocuments { get; private set; } = null!; + + [Output("modifiedAt")] + public Output ModifiedAt { get; private set; } = null!; + + [Output("name")] + public Output Name { get; private set; } = null!; + + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + [Output("type")] + public Output Type { get; private set; } = null!; + + + /// + /// Create a Capability 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 Capability(string name, CapabilityArgs args, CustomResourceOptions? options = null) + : base("aws-native:b2bi:Capability", name, args ?? new CapabilityArgs(), MakeResourceOptions(options, "")) + { + } + + private Capability(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:b2bi:Capability", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "type", + }, + }; + 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 Capability 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 Capability Get(string name, Input id, CustomResourceOptions? options = null) + { + return new Capability(name, id, options); + } + } + + public sealed class CapabilityArgs : global::Pulumi.ResourceArgs + { + [Input("configuration", required: true)] + public Input Configuration { get; set; } = null!; + + [Input("instructionsDocuments")] + private InputList? _instructionsDocuments; + public InputList InstructionsDocuments + { + get => _instructionsDocuments ?? (_instructionsDocuments = new InputList()); + set => _instructionsDocuments = value; + } + + [Input("name")] + public Input? Name { get; set; } + + [Input("tags")] + private InputList? _tags; + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public CapabilityArgs() + { + } + public static new CapabilityArgs Empty => new CapabilityArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Enums.cs b/sdk/dotnet/B2bi/Enums.cs new file mode 100644 index 0000000000..021bdf6c45 --- /dev/null +++ b/sdk/dotnet/B2bi/Enums.cs @@ -0,0 +1,280 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.ComponentModel; +using Pulumi; + +namespace Pulumi.AwsNative.B2bi +{ + [EnumType] + public readonly struct CapabilityType : IEquatable + { + private readonly string _value; + + private CapabilityType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static CapabilityType Edi { get; } = new CapabilityType("edi"); + + public static bool operator ==(CapabilityType left, CapabilityType right) => left.Equals(right); + public static bool operator !=(CapabilityType left, CapabilityType right) => !left.Equals(right); + + public static explicit operator string(CapabilityType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is CapabilityType other && Equals(other); + public bool Equals(CapabilityType 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 CapabilityX12TransactionSet : IEquatable + { + private readonly string _value; + + private CapabilityX12TransactionSet(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static CapabilityX12TransactionSet X12110 { get; } = new CapabilityX12TransactionSet("X12_110"); + public static CapabilityX12TransactionSet X12180 { get; } = new CapabilityX12TransactionSet("X12_180"); + public static CapabilityX12TransactionSet X12204 { get; } = new CapabilityX12TransactionSet("X12_204"); + public static CapabilityX12TransactionSet X12210 { get; } = new CapabilityX12TransactionSet("X12_210"); + public static CapabilityX12TransactionSet X12214 { get; } = new CapabilityX12TransactionSet("X12_214"); + public static CapabilityX12TransactionSet X12215 { get; } = new CapabilityX12TransactionSet("X12_215"); + public static CapabilityX12TransactionSet X12310 { get; } = new CapabilityX12TransactionSet("X12_310"); + public static CapabilityX12TransactionSet X12315 { get; } = new CapabilityX12TransactionSet("X12_315"); + public static CapabilityX12TransactionSet X12322 { get; } = new CapabilityX12TransactionSet("X12_322"); + public static CapabilityX12TransactionSet X12404 { get; } = new CapabilityX12TransactionSet("X12_404"); + public static CapabilityX12TransactionSet X12410 { get; } = new CapabilityX12TransactionSet("X12_410"); + public static CapabilityX12TransactionSet X12820 { get; } = new CapabilityX12TransactionSet("X12_820"); + public static CapabilityX12TransactionSet X12824 { get; } = new CapabilityX12TransactionSet("X12_824"); + public static CapabilityX12TransactionSet X12830 { get; } = new CapabilityX12TransactionSet("X12_830"); + public static CapabilityX12TransactionSet X12846 { get; } = new CapabilityX12TransactionSet("X12_846"); + public static CapabilityX12TransactionSet X12850 { get; } = new CapabilityX12TransactionSet("X12_850"); + public static CapabilityX12TransactionSet X12852 { get; } = new CapabilityX12TransactionSet("X12_852"); + public static CapabilityX12TransactionSet X12855 { get; } = new CapabilityX12TransactionSet("X12_855"); + public static CapabilityX12TransactionSet X12856 { get; } = new CapabilityX12TransactionSet("X12_856"); + public static CapabilityX12TransactionSet X12860 { get; } = new CapabilityX12TransactionSet("X12_860"); + public static CapabilityX12TransactionSet X12861 { get; } = new CapabilityX12TransactionSet("X12_861"); + public static CapabilityX12TransactionSet X12864 { get; } = new CapabilityX12TransactionSet("X12_864"); + public static CapabilityX12TransactionSet X12940 { get; } = new CapabilityX12TransactionSet("X12_940"); + public static CapabilityX12TransactionSet X12990 { get; } = new CapabilityX12TransactionSet("X12_990"); + public static CapabilityX12TransactionSet X12997 { get; } = new CapabilityX12TransactionSet("X12_997"); + + public static bool operator ==(CapabilityX12TransactionSet left, CapabilityX12TransactionSet right) => left.Equals(right); + public static bool operator !=(CapabilityX12TransactionSet left, CapabilityX12TransactionSet right) => !left.Equals(right); + + public static explicit operator string(CapabilityX12TransactionSet value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is CapabilityX12TransactionSet other && Equals(other); + public bool Equals(CapabilityX12TransactionSet 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 CapabilityX12Version : IEquatable + { + private readonly string _value; + + private CapabilityX12Version(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static CapabilityX12Version Version4010 { get; } = new CapabilityX12Version("VERSION_4010"); + public static CapabilityX12Version Version4030 { get; } = new CapabilityX12Version("VERSION_4030"); + public static CapabilityX12Version Version5010 { get; } = new CapabilityX12Version("VERSION_5010"); + + public static bool operator ==(CapabilityX12Version left, CapabilityX12Version right) => left.Equals(right); + public static bool operator !=(CapabilityX12Version left, CapabilityX12Version right) => !left.Equals(right); + + public static explicit operator string(CapabilityX12Version value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is CapabilityX12Version other && Equals(other); + public bool Equals(CapabilityX12Version 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 ProfileLogging : IEquatable + { + private readonly string _value; + + private ProfileLogging(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ProfileLogging Enabled { get; } = new ProfileLogging("ENABLED"); + public static ProfileLogging Disabled { get; } = new ProfileLogging("DISABLED"); + + public static bool operator ==(ProfileLogging left, ProfileLogging right) => left.Equals(right); + public static bool operator !=(ProfileLogging left, ProfileLogging right) => !left.Equals(right); + + public static explicit operator string(ProfileLogging value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ProfileLogging other && Equals(other); + public bool Equals(ProfileLogging 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 TransformerFileFormat : IEquatable + { + private readonly string _value; + + private TransformerFileFormat(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static TransformerFileFormat Xml { get; } = new TransformerFileFormat("XML"); + public static TransformerFileFormat Json { get; } = new TransformerFileFormat("JSON"); + + public static bool operator ==(TransformerFileFormat left, TransformerFileFormat right) => left.Equals(right); + public static bool operator !=(TransformerFileFormat left, TransformerFileFormat right) => !left.Equals(right); + + public static explicit operator string(TransformerFileFormat value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is TransformerFileFormat other && Equals(other); + public bool Equals(TransformerFileFormat 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 TransformerStatus : IEquatable + { + private readonly string _value; + + private TransformerStatus(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static TransformerStatus Active { get; } = new TransformerStatus("active"); + public static TransformerStatus Inactive { get; } = new TransformerStatus("inactive"); + + public static bool operator ==(TransformerStatus left, TransformerStatus right) => left.Equals(right); + public static bool operator !=(TransformerStatus left, TransformerStatus right) => !left.Equals(right); + + public static explicit operator string(TransformerStatus value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is TransformerStatus other && Equals(other); + public bool Equals(TransformerStatus 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 TransformerX12TransactionSet : IEquatable + { + private readonly string _value; + + private TransformerX12TransactionSet(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static TransformerX12TransactionSet X12110 { get; } = new TransformerX12TransactionSet("X12_110"); + public static TransformerX12TransactionSet X12180 { get; } = new TransformerX12TransactionSet("X12_180"); + public static TransformerX12TransactionSet X12204 { get; } = new TransformerX12TransactionSet("X12_204"); + public static TransformerX12TransactionSet X12210 { get; } = new TransformerX12TransactionSet("X12_210"); + public static TransformerX12TransactionSet X12214 { get; } = new TransformerX12TransactionSet("X12_214"); + public static TransformerX12TransactionSet X12215 { get; } = new TransformerX12TransactionSet("X12_215"); + public static TransformerX12TransactionSet X12310 { get; } = new TransformerX12TransactionSet("X12_310"); + public static TransformerX12TransactionSet X12315 { get; } = new TransformerX12TransactionSet("X12_315"); + public static TransformerX12TransactionSet X12322 { get; } = new TransformerX12TransactionSet("X12_322"); + public static TransformerX12TransactionSet X12404 { get; } = new TransformerX12TransactionSet("X12_404"); + public static TransformerX12TransactionSet X12410 { get; } = new TransformerX12TransactionSet("X12_410"); + public static TransformerX12TransactionSet X12820 { get; } = new TransformerX12TransactionSet("X12_820"); + public static TransformerX12TransactionSet X12824 { get; } = new TransformerX12TransactionSet("X12_824"); + public static TransformerX12TransactionSet X12830 { get; } = new TransformerX12TransactionSet("X12_830"); + public static TransformerX12TransactionSet X12846 { get; } = new TransformerX12TransactionSet("X12_846"); + public static TransformerX12TransactionSet X12850 { get; } = new TransformerX12TransactionSet("X12_850"); + public static TransformerX12TransactionSet X12852 { get; } = new TransformerX12TransactionSet("X12_852"); + public static TransformerX12TransactionSet X12855 { get; } = new TransformerX12TransactionSet("X12_855"); + public static TransformerX12TransactionSet X12856 { get; } = new TransformerX12TransactionSet("X12_856"); + public static TransformerX12TransactionSet X12860 { get; } = new TransformerX12TransactionSet("X12_860"); + public static TransformerX12TransactionSet X12861 { get; } = new TransformerX12TransactionSet("X12_861"); + public static TransformerX12TransactionSet X12864 { get; } = new TransformerX12TransactionSet("X12_864"); + public static TransformerX12TransactionSet X12940 { get; } = new TransformerX12TransactionSet("X12_940"); + public static TransformerX12TransactionSet X12990 { get; } = new TransformerX12TransactionSet("X12_990"); + public static TransformerX12TransactionSet X12997 { get; } = new TransformerX12TransactionSet("X12_997"); + + public static bool operator ==(TransformerX12TransactionSet left, TransformerX12TransactionSet right) => left.Equals(right); + public static bool operator !=(TransformerX12TransactionSet left, TransformerX12TransactionSet right) => !left.Equals(right); + + public static explicit operator string(TransformerX12TransactionSet value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is TransformerX12TransactionSet other && Equals(other); + public bool Equals(TransformerX12TransactionSet 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 TransformerX12Version : IEquatable + { + private readonly string _value; + + private TransformerX12Version(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static TransformerX12Version Version4010 { get; } = new TransformerX12Version("VERSION_4010"); + public static TransformerX12Version Version4030 { get; } = new TransformerX12Version("VERSION_4030"); + public static TransformerX12Version Version5010 { get; } = new TransformerX12Version("VERSION_5010"); + + public static bool operator ==(TransformerX12Version left, TransformerX12Version right) => left.Equals(right); + public static bool operator !=(TransformerX12Version left, TransformerX12Version right) => !left.Equals(right); + + public static explicit operator string(TransformerX12Version value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is TransformerX12Version other && Equals(other); + public bool Equals(TransformerX12Version 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/B2bi/GetCapability.cs b/sdk/dotnet/B2bi/GetCapability.cs new file mode 100644 index 0000000000..2f09246e6c --- /dev/null +++ b/sdk/dotnet/B2bi/GetCapability.cs @@ -0,0 +1,91 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi +{ + public static class GetCapability + { + /// + /// Definition of AWS::B2BI::Capability Resource Type + /// + public static Task InvokeAsync(GetCapabilityArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:b2bi:getCapability", args ?? new GetCapabilityArgs(), options.WithDefaults()); + + /// + /// Definition of AWS::B2BI::Capability Resource Type + /// + public static Output Invoke(GetCapabilityInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:b2bi:getCapability", args ?? new GetCapabilityInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetCapabilityArgs : global::Pulumi.InvokeArgs + { + [Input("capabilityId", required: true)] + public string CapabilityId { get; set; } = null!; + + public GetCapabilityArgs() + { + } + public static new GetCapabilityArgs Empty => new GetCapabilityArgs(); + } + + public sealed class GetCapabilityInvokeArgs : global::Pulumi.InvokeArgs + { + [Input("capabilityId", required: true)] + public Input CapabilityId { get; set; } = null!; + + public GetCapabilityInvokeArgs() + { + } + public static new GetCapabilityInvokeArgs Empty => new GetCapabilityInvokeArgs(); + } + + + [OutputType] + public sealed class GetCapabilityResult + { + public readonly string? CapabilityArn; + public readonly string? CapabilityId; + public readonly Outputs.CapabilityConfigurationProperties? Configuration; + public readonly string? CreatedAt; + public readonly ImmutableArray InstructionsDocuments; + public readonly string? ModifiedAt; + public readonly string? Name; + public readonly ImmutableArray Tags; + + [OutputConstructor] + private GetCapabilityResult( + string? capabilityArn, + + string? capabilityId, + + Outputs.CapabilityConfigurationProperties? configuration, + + string? createdAt, + + ImmutableArray instructionsDocuments, + + string? modifiedAt, + + string? name, + + ImmutableArray tags) + { + CapabilityArn = capabilityArn; + CapabilityId = capabilityId; + Configuration = configuration; + CreatedAt = createdAt; + InstructionsDocuments = instructionsDocuments; + ModifiedAt = modifiedAt; + Name = name; + Tags = tags; + } + } +} diff --git a/sdk/dotnet/B2bi/GetPartnership.cs b/sdk/dotnet/B2bi/GetPartnership.cs new file mode 100644 index 0000000000..097f02ec31 --- /dev/null +++ b/sdk/dotnet/B2bi/GetPartnership.cs @@ -0,0 +1,91 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi +{ + public static class GetPartnership + { + /// + /// Definition of AWS::B2BI::Partnership Resource Type + /// + public static Task InvokeAsync(GetPartnershipArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:b2bi:getPartnership", args ?? new GetPartnershipArgs(), options.WithDefaults()); + + /// + /// Definition of AWS::B2BI::Partnership Resource Type + /// + public static Output Invoke(GetPartnershipInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:b2bi:getPartnership", args ?? new GetPartnershipInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetPartnershipArgs : global::Pulumi.InvokeArgs + { + [Input("partnershipId", required: true)] + public string PartnershipId { get; set; } = null!; + + public GetPartnershipArgs() + { + } + public static new GetPartnershipArgs Empty => new GetPartnershipArgs(); + } + + public sealed class GetPartnershipInvokeArgs : global::Pulumi.InvokeArgs + { + [Input("partnershipId", required: true)] + public Input PartnershipId { get; set; } = null!; + + public GetPartnershipInvokeArgs() + { + } + public static new GetPartnershipInvokeArgs Empty => new GetPartnershipInvokeArgs(); + } + + + [OutputType] + public sealed class GetPartnershipResult + { + public readonly ImmutableArray Capabilities; + public readonly string? CreatedAt; + public readonly string? ModifiedAt; + public readonly string? Name; + public readonly string? PartnershipArn; + public readonly string? PartnershipId; + public readonly ImmutableArray Tags; + public readonly string? TradingPartnerId; + + [OutputConstructor] + private GetPartnershipResult( + ImmutableArray capabilities, + + string? createdAt, + + string? modifiedAt, + + string? name, + + string? partnershipArn, + + string? partnershipId, + + ImmutableArray tags, + + string? tradingPartnerId) + { + Capabilities = capabilities; + CreatedAt = createdAt; + ModifiedAt = modifiedAt; + Name = name; + PartnershipArn = partnershipArn; + PartnershipId = partnershipId; + Tags = tags; + TradingPartnerId = tradingPartnerId; + } + } +} diff --git a/sdk/dotnet/B2bi/GetProfile.cs b/sdk/dotnet/B2bi/GetProfile.cs new file mode 100644 index 0000000000..e3f4447ac6 --- /dev/null +++ b/sdk/dotnet/B2bi/GetProfile.cs @@ -0,0 +1,99 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi +{ + public static class GetProfile + { + /// + /// Definition of AWS::B2BI::Profile Resource Type + /// + public static Task InvokeAsync(GetProfileArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:b2bi:getProfile", args ?? new GetProfileArgs(), options.WithDefaults()); + + /// + /// Definition of AWS::B2BI::Profile Resource Type + /// + public static Output Invoke(GetProfileInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:b2bi:getProfile", args ?? new GetProfileInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetProfileArgs : global::Pulumi.InvokeArgs + { + [Input("profileId", required: true)] + public string ProfileId { get; set; } = null!; + + public GetProfileArgs() + { + } + public static new GetProfileArgs Empty => new GetProfileArgs(); + } + + public sealed class GetProfileInvokeArgs : global::Pulumi.InvokeArgs + { + [Input("profileId", required: true)] + public Input ProfileId { get; set; } = null!; + + public GetProfileInvokeArgs() + { + } + public static new GetProfileInvokeArgs Empty => new GetProfileInvokeArgs(); + } + + + [OutputType] + public sealed class GetProfileResult + { + public readonly string? BusinessName; + public readonly string? CreatedAt; + public readonly string? Email; + public readonly string? LogGroupName; + public readonly string? ModifiedAt; + public readonly string? Name; + public readonly string? Phone; + public readonly string? ProfileArn; + public readonly string? ProfileId; + public readonly ImmutableArray Tags; + + [OutputConstructor] + private GetProfileResult( + string? businessName, + + string? createdAt, + + string? email, + + string? logGroupName, + + string? modifiedAt, + + string? name, + + string? phone, + + string? profileArn, + + string? profileId, + + ImmutableArray tags) + { + BusinessName = businessName; + CreatedAt = createdAt; + Email = email; + LogGroupName = logGroupName; + ModifiedAt = modifiedAt; + Name = name; + Phone = phone; + ProfileArn = profileArn; + ProfileId = profileId; + Tags = tags; + } + } +} diff --git a/sdk/dotnet/B2bi/GetTransformer.cs b/sdk/dotnet/B2bi/GetTransformer.cs new file mode 100644 index 0000000000..2b3f5ddac5 --- /dev/null +++ b/sdk/dotnet/B2bi/GetTransformer.cs @@ -0,0 +1,103 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi +{ + public static class GetTransformer + { + /// + /// Definition of AWS::B2BI::Transformer Resource Type + /// + public static Task InvokeAsync(GetTransformerArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:b2bi:getTransformer", args ?? new GetTransformerArgs(), options.WithDefaults()); + + /// + /// Definition of AWS::B2BI::Transformer Resource Type + /// + public static Output Invoke(GetTransformerInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:b2bi:getTransformer", args ?? new GetTransformerInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetTransformerArgs : global::Pulumi.InvokeArgs + { + [Input("transformerId", required: true)] + public string TransformerId { get; set; } = null!; + + public GetTransformerArgs() + { + } + public static new GetTransformerArgs Empty => new GetTransformerArgs(); + } + + public sealed class GetTransformerInvokeArgs : global::Pulumi.InvokeArgs + { + [Input("transformerId", required: true)] + public Input TransformerId { get; set; } = null!; + + public GetTransformerInvokeArgs() + { + } + public static new GetTransformerInvokeArgs Empty => new GetTransformerInvokeArgs(); + } + + + [OutputType] + public sealed class GetTransformerResult + { + public readonly string? CreatedAt; + public readonly Outputs.TransformerEdiTypeProperties? EdiType; + public readonly Pulumi.AwsNative.B2bi.TransformerFileFormat? FileFormat; + public readonly string? MappingTemplate; + public readonly string? ModifiedAt; + public readonly string? Name; + public readonly string? SampleDocument; + public readonly Pulumi.AwsNative.B2bi.TransformerStatus? Status; + public readonly ImmutableArray Tags; + public readonly string? TransformerArn; + public readonly string? TransformerId; + + [OutputConstructor] + private GetTransformerResult( + string? createdAt, + + Outputs.TransformerEdiTypeProperties? ediType, + + Pulumi.AwsNative.B2bi.TransformerFileFormat? fileFormat, + + string? mappingTemplate, + + string? modifiedAt, + + string? name, + + string? sampleDocument, + + Pulumi.AwsNative.B2bi.TransformerStatus? status, + + ImmutableArray tags, + + string? transformerArn, + + string? transformerId) + { + CreatedAt = createdAt; + EdiType = ediType; + FileFormat = fileFormat; + MappingTemplate = mappingTemplate; + ModifiedAt = modifiedAt; + Name = name; + SampleDocument = sampleDocument; + Status = status; + Tags = tags; + TransformerArn = transformerArn; + TransformerId = transformerId; + } + } +} diff --git a/sdk/dotnet/B2bi/Inputs/CapabilityConfigurationPropertiesArgs.cs b/sdk/dotnet/B2bi/Inputs/CapabilityConfigurationPropertiesArgs.cs new file mode 100644 index 0000000000..6e9d1432d1 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/CapabilityConfigurationPropertiesArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class CapabilityConfigurationPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("edi", required: true)] + public Input Edi { get; set; } = null!; + + public CapabilityConfigurationPropertiesArgs() + { + } + public static new CapabilityConfigurationPropertiesArgs Empty => new CapabilityConfigurationPropertiesArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/CapabilityEdiConfigurationArgs.cs b/sdk/dotnet/B2bi/Inputs/CapabilityEdiConfigurationArgs.cs new file mode 100644 index 0000000000..d51b05f828 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/CapabilityEdiConfigurationArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class CapabilityEdiConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("inputLocation", required: true)] + public Input InputLocation { get; set; } = null!; + + [Input("outputLocation", required: true)] + public Input OutputLocation { get; set; } = null!; + + [Input("transformerId", required: true)] + public Input TransformerId { get; set; } = null!; + + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + public CapabilityEdiConfigurationArgs() + { + } + public static new CapabilityEdiConfigurationArgs Empty => new CapabilityEdiConfigurationArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/CapabilityEdiTypePropertiesArgs.cs b/sdk/dotnet/B2bi/Inputs/CapabilityEdiTypePropertiesArgs.cs new file mode 100644 index 0000000000..37936760a6 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/CapabilityEdiTypePropertiesArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class CapabilityEdiTypePropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("x12Details", required: true)] + public Input X12Details { get; set; } = null!; + + public CapabilityEdiTypePropertiesArgs() + { + } + public static new CapabilityEdiTypePropertiesArgs Empty => new CapabilityEdiTypePropertiesArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/CapabilityS3LocationArgs.cs b/sdk/dotnet/B2bi/Inputs/CapabilityS3LocationArgs.cs new file mode 100644 index 0000000000..3815fe038a --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/CapabilityS3LocationArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class CapabilityS3LocationArgs : global::Pulumi.ResourceArgs + { + [Input("bucketName")] + public Input? BucketName { get; set; } + + [Input("key")] + public Input? Key { get; set; } + + public CapabilityS3LocationArgs() + { + } + public static new CapabilityS3LocationArgs Empty => new CapabilityS3LocationArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/CapabilityTagArgs.cs b/sdk/dotnet/B2bi/Inputs/CapabilityTagArgs.cs new file mode 100644 index 0000000000..b964ae2de3 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/CapabilityTagArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class CapabilityTagArgs : global::Pulumi.ResourceArgs + { + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public CapabilityTagArgs() + { + } + public static new CapabilityTagArgs Empty => new CapabilityTagArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/CapabilityX12DetailsArgs.cs b/sdk/dotnet/B2bi/Inputs/CapabilityX12DetailsArgs.cs new file mode 100644 index 0000000000..4b581cef54 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/CapabilityX12DetailsArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class CapabilityX12DetailsArgs : global::Pulumi.ResourceArgs + { + [Input("transactionSet")] + public Input? TransactionSet { get; set; } + + [Input("version")] + public Input? Version { get; set; } + + public CapabilityX12DetailsArgs() + { + } + public static new CapabilityX12DetailsArgs Empty => new CapabilityX12DetailsArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/PartnershipTagArgs.cs b/sdk/dotnet/B2bi/Inputs/PartnershipTagArgs.cs new file mode 100644 index 0000000000..6507494233 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/PartnershipTagArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class PartnershipTagArgs : global::Pulumi.ResourceArgs + { + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public PartnershipTagArgs() + { + } + public static new PartnershipTagArgs Empty => new PartnershipTagArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/ProfileTagArgs.cs b/sdk/dotnet/B2bi/Inputs/ProfileTagArgs.cs new file mode 100644 index 0000000000..0801c90da6 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/ProfileTagArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class ProfileTagArgs : global::Pulumi.ResourceArgs + { + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public ProfileTagArgs() + { + } + public static new ProfileTagArgs Empty => new ProfileTagArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/TransformerEdiTypePropertiesArgs.cs b/sdk/dotnet/B2bi/Inputs/TransformerEdiTypePropertiesArgs.cs new file mode 100644 index 0000000000..62c621abfb --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/TransformerEdiTypePropertiesArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class TransformerEdiTypePropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("x12Details", required: true)] + public Input X12Details { get; set; } = null!; + + public TransformerEdiTypePropertiesArgs() + { + } + public static new TransformerEdiTypePropertiesArgs Empty => new TransformerEdiTypePropertiesArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/TransformerTagArgs.cs b/sdk/dotnet/B2bi/Inputs/TransformerTagArgs.cs new file mode 100644 index 0000000000..1859e05727 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/TransformerTagArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class TransformerTagArgs : global::Pulumi.ResourceArgs + { + [Input("key", required: true)] + public Input Key { get; set; } = null!; + + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public TransformerTagArgs() + { + } + public static new TransformerTagArgs Empty => new TransformerTagArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Inputs/TransformerX12DetailsArgs.cs b/sdk/dotnet/B2bi/Inputs/TransformerX12DetailsArgs.cs new file mode 100644 index 0000000000..267c509cd2 --- /dev/null +++ b/sdk/dotnet/B2bi/Inputs/TransformerX12DetailsArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Inputs +{ + + public sealed class TransformerX12DetailsArgs : global::Pulumi.ResourceArgs + { + [Input("transactionSet")] + public Input? TransactionSet { get; set; } + + [Input("version")] + public Input? Version { get; set; } + + public TransformerX12DetailsArgs() + { + } + public static new TransformerX12DetailsArgs Empty => new TransformerX12DetailsArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Outputs/CapabilityConfigurationProperties.cs b/sdk/dotnet/B2bi/Outputs/CapabilityConfigurationProperties.cs new file mode 100644 index 0000000000..6075e7c3a7 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/CapabilityConfigurationProperties.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class CapabilityConfigurationProperties + { + public readonly Outputs.CapabilityEdiConfiguration Edi; + + [OutputConstructor] + private CapabilityConfigurationProperties(Outputs.CapabilityEdiConfiguration edi) + { + Edi = edi; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/CapabilityEdiConfiguration.cs b/sdk/dotnet/B2bi/Outputs/CapabilityEdiConfiguration.cs new file mode 100644 index 0000000000..4ea9ff5b03 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/CapabilityEdiConfiguration.cs @@ -0,0 +1,37 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class CapabilityEdiConfiguration + { + public readonly Outputs.CapabilityS3Location InputLocation; + public readonly Outputs.CapabilityS3Location OutputLocation; + public readonly string TransformerId; + public readonly Outputs.CapabilityEdiTypeProperties Type; + + [OutputConstructor] + private CapabilityEdiConfiguration( + Outputs.CapabilityS3Location inputLocation, + + Outputs.CapabilityS3Location outputLocation, + + string transformerId, + + Outputs.CapabilityEdiTypeProperties type) + { + InputLocation = inputLocation; + OutputLocation = outputLocation; + TransformerId = transformerId; + Type = type; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/CapabilityEdiTypeProperties.cs b/sdk/dotnet/B2bi/Outputs/CapabilityEdiTypeProperties.cs new file mode 100644 index 0000000000..1633530e9d --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/CapabilityEdiTypeProperties.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class CapabilityEdiTypeProperties + { + public readonly Outputs.CapabilityX12Details X12Details; + + [OutputConstructor] + private CapabilityEdiTypeProperties(Outputs.CapabilityX12Details x12Details) + { + X12Details = x12Details; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/CapabilityS3Location.cs b/sdk/dotnet/B2bi/Outputs/CapabilityS3Location.cs new file mode 100644 index 0000000000..ad887323b0 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/CapabilityS3Location.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class CapabilityS3Location + { + public readonly string? BucketName; + public readonly string? Key; + + [OutputConstructor] + private CapabilityS3Location( + string? bucketName, + + string? key) + { + BucketName = bucketName; + Key = key; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/CapabilityTag.cs b/sdk/dotnet/B2bi/Outputs/CapabilityTag.cs new file mode 100644 index 0000000000..f1372911d7 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/CapabilityTag.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class CapabilityTag + { + public readonly string Key; + public readonly string Value; + + [OutputConstructor] + private CapabilityTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/CapabilityX12Details.cs b/sdk/dotnet/B2bi/Outputs/CapabilityX12Details.cs new file mode 100644 index 0000000000..c09e5b5523 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/CapabilityX12Details.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class CapabilityX12Details + { + public readonly Pulumi.AwsNative.B2bi.CapabilityX12TransactionSet? TransactionSet; + public readonly Pulumi.AwsNative.B2bi.CapabilityX12Version? Version; + + [OutputConstructor] + private CapabilityX12Details( + Pulumi.AwsNative.B2bi.CapabilityX12TransactionSet? transactionSet, + + Pulumi.AwsNative.B2bi.CapabilityX12Version? version) + { + TransactionSet = transactionSet; + Version = version; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/PartnershipTag.cs b/sdk/dotnet/B2bi/Outputs/PartnershipTag.cs new file mode 100644 index 0000000000..324b1da058 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/PartnershipTag.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class PartnershipTag + { + public readonly string Key; + public readonly string Value; + + [OutputConstructor] + private PartnershipTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/ProfileTag.cs b/sdk/dotnet/B2bi/Outputs/ProfileTag.cs new file mode 100644 index 0000000000..d7391765f0 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/ProfileTag.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class ProfileTag + { + public readonly string Key; + public readonly string Value; + + [OutputConstructor] + private ProfileTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/TransformerEdiTypeProperties.cs b/sdk/dotnet/B2bi/Outputs/TransformerEdiTypeProperties.cs new file mode 100644 index 0000000000..8918ddbe50 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/TransformerEdiTypeProperties.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class TransformerEdiTypeProperties + { + public readonly Outputs.TransformerX12Details X12Details; + + [OutputConstructor] + private TransformerEdiTypeProperties(Outputs.TransformerX12Details x12Details) + { + X12Details = x12Details; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/TransformerTag.cs b/sdk/dotnet/B2bi/Outputs/TransformerTag.cs new file mode 100644 index 0000000000..eb751ba2b2 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/TransformerTag.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class TransformerTag + { + public readonly string Key; + public readonly string Value; + + [OutputConstructor] + private TransformerTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/B2bi/Outputs/TransformerX12Details.cs b/sdk/dotnet/B2bi/Outputs/TransformerX12Details.cs new file mode 100644 index 0000000000..6d42e74ea6 --- /dev/null +++ b/sdk/dotnet/B2bi/Outputs/TransformerX12Details.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi.Outputs +{ + + [OutputType] + public sealed class TransformerX12Details + { + public readonly Pulumi.AwsNative.B2bi.TransformerX12TransactionSet? TransactionSet; + public readonly Pulumi.AwsNative.B2bi.TransformerX12Version? Version; + + [OutputConstructor] + private TransformerX12Details( + Pulumi.AwsNative.B2bi.TransformerX12TransactionSet? transactionSet, + + Pulumi.AwsNative.B2bi.TransformerX12Version? version) + { + TransactionSet = transactionSet; + Version = version; + } + } +} diff --git a/sdk/dotnet/B2bi/Partnership.cs b/sdk/dotnet/B2bi/Partnership.cs new file mode 100644 index 0000000000..20005768aa --- /dev/null +++ b/sdk/dotnet/B2bi/Partnership.cs @@ -0,0 +1,135 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi +{ + /// + /// Definition of AWS::B2BI::Partnership Resource Type + /// + [AwsNativeResourceType("aws-native:b2bi:Partnership")] + public partial class Partnership : global::Pulumi.CustomResource + { + [Output("capabilities")] + public Output> Capabilities { get; private set; } = null!; + + [Output("createdAt")] + public Output CreatedAt { get; private set; } = null!; + + [Output("email")] + public Output Email { get; private set; } = null!; + + [Output("modifiedAt")] + public Output ModifiedAt { get; private set; } = null!; + + [Output("name")] + public Output Name { get; private set; } = null!; + + [Output("partnershipArn")] + public Output PartnershipArn { get; private set; } = null!; + + [Output("partnershipId")] + public Output PartnershipId { get; private set; } = null!; + + [Output("phone")] + public Output Phone { get; private set; } = null!; + + [Output("profileId")] + public Output ProfileId { get; private set; } = null!; + + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + [Output("tradingPartnerId")] + public Output TradingPartnerId { get; private set; } = null!; + + + /// + /// Create a Partnership 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 Partnership(string name, PartnershipArgs args, CustomResourceOptions? options = null) + : base("aws-native:b2bi:Partnership", name, args ?? new PartnershipArgs(), MakeResourceOptions(options, "")) + { + } + + private Partnership(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:b2bi:Partnership", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "email", + "phone", + "profileId", + }, + }; + 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 Partnership 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 Partnership Get(string name, Input id, CustomResourceOptions? options = null) + { + return new Partnership(name, id, options); + } + } + + public sealed class PartnershipArgs : global::Pulumi.ResourceArgs + { + [Input("capabilities")] + private InputList? _capabilities; + public InputList Capabilities + { + get => _capabilities ?? (_capabilities = new InputList()); + set => _capabilities = value; + } + + [Input("email", required: true)] + public Input Email { get; set; } = null!; + + [Input("name")] + public Input? Name { get; set; } + + [Input("phone")] + public Input? Phone { get; set; } + + [Input("profileId", required: true)] + public Input ProfileId { get; set; } = null!; + + [Input("tags")] + private InputList? _tags; + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public PartnershipArgs() + { + } + public static new PartnershipArgs Empty => new PartnershipArgs(); + } +} diff --git a/sdk/dotnet/B2bi/Profile.cs b/sdk/dotnet/B2bi/Profile.cs new file mode 100644 index 0000000000..f92bed78f2 --- /dev/null +++ b/sdk/dotnet/B2bi/Profile.cs @@ -0,0 +1,128 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi +{ + /// + /// Definition of AWS::B2BI::Profile Resource Type + /// + [AwsNativeResourceType("aws-native:b2bi:Profile")] + public partial class Profile : global::Pulumi.CustomResource + { + [Output("businessName")] + public Output BusinessName { get; private set; } = null!; + + [Output("createdAt")] + public Output CreatedAt { get; private set; } = null!; + + [Output("email")] + public Output Email { get; private set; } = null!; + + [Output("logGroupName")] + public Output LogGroupName { get; private set; } = null!; + + [Output("logging")] + public Output Logging { get; private set; } = null!; + + [Output("modifiedAt")] + public Output ModifiedAt { get; private set; } = null!; + + [Output("name")] + public Output Name { get; private set; } = null!; + + [Output("phone")] + public Output Phone { get; private set; } = null!; + + [Output("profileArn")] + public Output ProfileArn { get; private set; } = null!; + + [Output("profileId")] + public Output ProfileId { get; private set; } = null!; + + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + + /// + /// Create a Profile 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 Profile(string name, ProfileArgs args, CustomResourceOptions? options = null) + : base("aws-native:b2bi:Profile", name, args ?? new ProfileArgs(), MakeResourceOptions(options, "")) + { + } + + private Profile(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:b2bi:Profile", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "logging", + }, + }; + 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 Profile 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 Profile Get(string name, Input id, CustomResourceOptions? options = null) + { + return new Profile(name, id, options); + } + } + + public sealed class ProfileArgs : global::Pulumi.ResourceArgs + { + [Input("businessName", required: true)] + public Input BusinessName { get; set; } = null!; + + [Input("email")] + public Input? Email { get; set; } + + [Input("logging", required: true)] + public Input Logging { get; set; } = null!; + + [Input("name")] + public Input? Name { get; set; } + + [Input("phone", required: true)] + public Input Phone { get; set; } = null!; + + [Input("tags")] + private InputList? _tags; + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public ProfileArgs() + { + } + public static new ProfileArgs Empty => new ProfileArgs(); + } +} diff --git a/sdk/dotnet/B2bi/README.md b/sdk/dotnet/B2bi/README.md new file mode 100644 index 0000000000..77b2f47ec2 --- /dev/null +++ b/sdk/dotnet/B2bi/README.md @@ -0,0 +1 @@ +A native Pulumi package for creating and managing Amazon Web Services (AWS) resources. diff --git a/sdk/dotnet/B2bi/Transformer.cs b/sdk/dotnet/B2bi/Transformer.cs new file mode 100644 index 0000000000..549abce586 --- /dev/null +++ b/sdk/dotnet/B2bi/Transformer.cs @@ -0,0 +1,130 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.B2bi +{ + /// + /// Definition of AWS::B2BI::Transformer Resource Type + /// + [AwsNativeResourceType("aws-native:b2bi:Transformer")] + public partial class Transformer : global::Pulumi.CustomResource + { + [Output("createdAt")] + public Output CreatedAt { get; private set; } = null!; + + [Output("ediType")] + public Output EdiType { get; private set; } = null!; + + [Output("fileFormat")] + public Output FileFormat { get; private set; } = null!; + + [Output("mappingTemplate")] + public Output MappingTemplate { get; private set; } = null!; + + [Output("modifiedAt")] + public Output ModifiedAt { get; private set; } = null!; + + [Output("name")] + public Output Name { get; private set; } = null!; + + [Output("sampleDocument")] + public Output SampleDocument { get; private set; } = null!; + + [Output("status")] + public Output Status { get; private set; } = null!; + + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + [Output("transformerArn")] + public Output TransformerArn { get; private set; } = null!; + + [Output("transformerId")] + public Output TransformerId { 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:b2bi:Transformer", name, args ?? new TransformerArgs(), MakeResourceOptions(options, "")) + { + } + + private Transformer(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:b2bi:Transformer", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing 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 + { + [Input("ediType", required: true)] + public Input EdiType { get; set; } = null!; + + [Input("fileFormat", required: true)] + public Input FileFormat { get; set; } = null!; + + [Input("mappingTemplate", required: true)] + public Input MappingTemplate { get; set; } = null!; + + [Input("modifiedAt")] + public Input? ModifiedAt { get; set; } + + [Input("name")] + public Input? Name { get; set; } + + [Input("sampleDocument")] + public Input? SampleDocument { get; set; } + + [Input("status", required: true)] + public Input Status { get; set; } = null!; + + [Input("tags")] + private InputList? _tags; + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public TransformerArgs() + { + } + public static new TransformerArgs Empty => new TransformerArgs(); + } +} diff --git a/sdk/dotnet/Batch/GetJobDefinition.cs b/sdk/dotnet/Batch/GetJobDefinition.cs index 5c51791a0f..e38ea22f98 100644 --- a/sdk/dotnet/Batch/GetJobDefinition.cs +++ b/sdk/dotnet/Batch/GetJobDefinition.cs @@ -27,8 +27,8 @@ public static Output Invoke(GetJobDefinitionInvokeArgs a public sealed class GetJobDefinitionArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + [Input("jobDefinitionArn", required: true)] + public string JobDefinitionArn { get; set; } = null!; public GetJobDefinitionArgs() { @@ -38,8 +38,8 @@ public GetJobDefinitionArgs() public sealed class GetJobDefinitionInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + [Input("jobDefinitionArn", required: true)] + public Input JobDefinitionArn { get; set; } = null!; public GetJobDefinitionInvokeArgs() { @@ -51,53 +51,32 @@ public GetJobDefinitionInvokeArgs() [OutputType] public sealed class GetJobDefinitionResult { - public readonly Outputs.JobDefinitionContainerProperties? ContainerProperties; - public readonly Outputs.JobDefinitionEksProperties? EksProperties; - public readonly string? Id; - public readonly Outputs.JobDefinitionNodeProperties? NodeProperties; - public readonly object? Parameters; - public readonly ImmutableArray PlatformCapabilities; - public readonly bool? PropagateTags; - public readonly Outputs.JobDefinitionRetryStrategy? RetryStrategy; - public readonly int? SchedulingPriority; - public readonly Outputs.JobDefinitionTimeout? Timeout; - public readonly string? Type; + public readonly string? ContainerOrchestrationType; + public readonly string? JobDefinitionArn; + public readonly int? Revision; + public readonly string? Status; + /// + /// A key-value pair to associate with a resource. + /// + public readonly object? Tags; [OutputConstructor] private GetJobDefinitionResult( - Outputs.JobDefinitionContainerProperties? containerProperties, - - Outputs.JobDefinitionEksProperties? eksProperties, - - string? id, - - Outputs.JobDefinitionNodeProperties? nodeProperties, - - object? parameters, - - ImmutableArray platformCapabilities, - - bool? propagateTags, + string? containerOrchestrationType, - Outputs.JobDefinitionRetryStrategy? retryStrategy, + string? jobDefinitionArn, - int? schedulingPriority, + int? revision, - Outputs.JobDefinitionTimeout? timeout, + string? status, - string? type) + object? tags) { - ContainerProperties = containerProperties; - EksProperties = eksProperties; - Id = id; - NodeProperties = nodeProperties; - Parameters = parameters; - PlatformCapabilities = platformCapabilities; - PropagateTags = propagateTags; - RetryStrategy = retryStrategy; - SchedulingPriority = schedulingPriority; - Timeout = timeout; - Type = type; + ContainerOrchestrationType = containerOrchestrationType; + JobDefinitionArn = jobDefinitionArn; + Revision = revision; + Status = status; + Tags = tags; } } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesArgs.cs index c59f1d1221..0ba8bc0fd0 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesArgs.cs @@ -29,13 +29,13 @@ public InputList Environment } [Input("ephemeralStorage")] - public Input? EphemeralStorage { get; set; } + public Input? EphemeralStorage { get; set; } [Input("executionRoleArn")] public Input? ExecutionRoleArn { get; set; } [Input("fargatePlatformConfiguration")] - public Input? FargatePlatformConfiguration { get; set; } + public Input? FargatePlatformConfiguration { get; set; } [Input("image", required: true)] public Input Image { get; set; } = null!; @@ -47,24 +47,24 @@ public InputList Environment public Input? JobRoleArn { get; set; } [Input("linuxParameters")] - public Input? LinuxParameters { get; set; } + public Input? LinuxParameters { get; set; } [Input("logConfiguration")] - public Input? LogConfiguration { get; set; } + public Input? LogConfiguration { get; set; } [Input("memory")] public Input? Memory { get; set; } [Input("mountPoints")] - private InputList? _mountPoints; - public InputList MountPoints + private InputList? _mountPoints; + public InputList MountPoints { - get => _mountPoints ?? (_mountPoints = new InputList()); + get => _mountPoints ?? (_mountPoints = new InputList()); set => _mountPoints = value; } [Input("networkConfiguration")] - public Input? NetworkConfiguration { get; set; } + public Input? NetworkConfiguration { get; set; } [Input("privileged")] public Input? Privileged { get; set; } @@ -81,7 +81,7 @@ public InputList ResourceRequiremen } [Input("runtimePlatform")] - public Input? RuntimePlatform { get; set; } + public Input? RuntimePlatform { get; set; } [Input("secrets")] private InputList? _secrets; @@ -106,10 +106,10 @@ public InputList Ulimits public Input? Vcpus { get; set; } [Input("volumes")] - private InputList? _volumes; - public InputList Volumes + private 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/JobDefinitionEphemeralStorageArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs.cs similarity index 56% rename from sdk/dotnet/Batch/Inputs/JobDefinitionEphemeralStorageArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs.cs index 9952883a06..f9318d1c2b 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionEphemeralStorageArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs.cs @@ -10,14 +10,14 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionEphemeralStorageArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs : global::Pulumi.ResourceArgs { [Input("sizeInGiB", required: true)] public Input SizeInGiB { get; set; } = null!; - public JobDefinitionEphemeralStorageArgs() + public JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs() { } - public static new JobDefinitionEphemeralStorageArgs Empty => new JobDefinitionEphemeralStorageArgs(); + public static new JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs Empty => new JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionFargatePlatformConfigurationArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs.cs similarity index 53% rename from sdk/dotnet/Batch/Inputs/JobDefinitionFargatePlatformConfigurationArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs.cs index b4d2394524..0571424585 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionFargatePlatformConfigurationArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs.cs @@ -10,14 +10,14 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionFargatePlatformConfigurationArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs : global::Pulumi.ResourceArgs { [Input("platformVersion")] public Input? PlatformVersion { get; set; } - public JobDefinitionFargatePlatformConfigurationArgs() + public JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs() { } - public static new JobDefinitionFargatePlatformConfigurationArgs Empty => new JobDefinitionFargatePlatformConfigurationArgs(); + public static new JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs Empty => new JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionLinuxParametersArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs.cs similarity index 78% rename from sdk/dotnet/Batch/Inputs/JobDefinitionLinuxParametersArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs.cs index 66beefcf70..a60f5ad878 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionLinuxParametersArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionLinuxParametersArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs : global::Pulumi.ResourceArgs { [Input("devices")] private InputList? _devices; @@ -40,9 +40,9 @@ public InputList Tmpfs set => _tmpfs = value; } - public JobDefinitionLinuxParametersArgs() + public JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs() { } - public static new JobDefinitionLinuxParametersArgs Empty => new JobDefinitionLinuxParametersArgs(); + public static new JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs Empty => new JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionLogConfigurationArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs.cs similarity index 71% rename from sdk/dotnet/Batch/Inputs/JobDefinitionLogConfigurationArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs.cs index f1779c3430..63302950e5 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionLogConfigurationArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionLogConfigurationArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs : global::Pulumi.ResourceArgs { [Input("logDriver", required: true)] public Input LogDriver { get; set; } = null!; @@ -26,9 +26,9 @@ public InputList SecretOptions set => _secretOptions = value; } - public JobDefinitionLogConfigurationArgs() + public JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs() { } - public static new JobDefinitionLogConfigurationArgs Empty => new JobDefinitionLogConfigurationArgs(); + public static new JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs Empty => new JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionNetworkConfigurationArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs.cs similarity index 55% rename from sdk/dotnet/Batch/Inputs/JobDefinitionNetworkConfigurationArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs.cs index 599d647f06..b980127ca0 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionNetworkConfigurationArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs.cs @@ -10,14 +10,14 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionNetworkConfigurationArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs : global::Pulumi.ResourceArgs { [Input("assignPublicIp")] public Input? AssignPublicIp { get; set; } - public JobDefinitionNetworkConfigurationArgs() + public JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs() { } - public static new JobDefinitionNetworkConfigurationArgs Empty => new JobDefinitionNetworkConfigurationArgs(); + public static new JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs Empty => new JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionRuntimePlatformArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs.cs similarity index 61% rename from sdk/dotnet/Batch/Inputs/JobDefinitionRuntimePlatformArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs.cs index 911d9b7db2..c62526aed8 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionRuntimePlatformArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionRuntimePlatformArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs : global::Pulumi.ResourceArgs { [Input("cpuArchitecture")] public Input? CpuArchitecture { get; set; } @@ -18,9 +18,9 @@ public sealed class JobDefinitionRuntimePlatformArgs : global::Pulumi.ResourceAr [Input("operatingSystemFamily")] public Input? OperatingSystemFamily { get; set; } - public JobDefinitionRuntimePlatformArgs() + public JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs() { } - public static new JobDefinitionRuntimePlatformArgs Empty => new JobDefinitionRuntimePlatformArgs(); + public static new JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs Empty => new JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs(); } } diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionAuthorizationConfigArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEfsAuthorizationConfigArgs.cs similarity index 66% rename from sdk/dotnet/Batch/Inputs/JobDefinitionAuthorizationConfigArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionEfsAuthorizationConfigArgs.cs index 1a590f18e9..9e17038ecb 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 { [Input("accessPointId")] public Input? AccessPointId { get; set; } @@ -18,9 +18,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 70e138699d..ce6089a456 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionEfsVolumeConfigurationArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEfsVolumeConfigurationArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.AwsNative.Batch.Inputs public sealed class JobDefinitionEfsVolumeConfigurationArgs : global::Pulumi.ResourceArgs { [Input("authorizationConfig")] - public Input? AuthorizationConfig { get; set; } + public Input? AuthorizationConfig { get; set; } [Input("fileSystemId", required: true)] public Input FileSystemId { get; set; } = null!; diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionMetadataArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionEksMetadataArgs.cs similarity index 66% rename from sdk/dotnet/Batch/Inputs/JobDefinitionMetadataArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionEksMetadataArgs.cs index d1a797a4cc..356bc8de52 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionMetadataArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEksMetadataArgs.cs @@ -10,14 +10,14 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionMetadataArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionEksMetadataArgs : global::Pulumi.ResourceArgs { [Input("labels")] public Input? Labels { get; set; } - 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 80% rename from sdk/dotnet/Batch/Inputs/JobDefinitionPodPropertiesArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionEksPodPropertiesArgs.cs index f52d3bdf87..78ed1dd216 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; @@ -27,7 +27,7 @@ public InputList Containers public Input? HostNetwork { get; set; } [Input("metadata")] - public Input? Metadata { get; set; } + public Input? Metadata { get; set; } [Input("serviceAccountName")] public Input? ServiceAccountName { get; set; } @@ -40,9 +40,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 be0d668806..575267bf5d 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionEksPropertiesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionEksPropertiesArgs.cs @@ -13,7 +13,7 @@ namespace Pulumi.AwsNative.Batch.Inputs public sealed class JobDefinitionEksPropertiesArgs : global::Pulumi.ResourceArgs { [Input("podProperties")] - public Input? PodProperties { get; set; } + public Input? PodProperties { get; set; } public JobDefinitionEksPropertiesArgs() { diff --git a/sdk/dotnet/Batch/Inputs/JobDefinitionVolumesHostArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionHostArgs.cs similarity index 66% rename from sdk/dotnet/Batch/Inputs/JobDefinitionVolumesHostArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionHostArgs.cs index d84e3e0d4b..d03eb6b238 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionVolumesHostArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionHostArgs.cs @@ -10,14 +10,14 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionVolumesHostArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionHostArgs : 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/JobDefinitionTimeoutArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionJobTimeoutArgs.cs similarity index 68% rename from sdk/dotnet/Batch/Inputs/JobDefinitionTimeoutArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionJobTimeoutArgs.cs index 097dd2ff12..a9f8a67a33 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionTimeoutArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionJobTimeoutArgs.cs @@ -10,14 +10,14 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionTimeoutArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionJobTimeoutArgs : 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/JobDefinitionMountPointsArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionMountPointArgs.cs similarity index 73% rename from sdk/dotnet/Batch/Inputs/JobDefinitionMountPointsArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionMountPointArgs.cs index 9e74f6a158..015f24636c 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 { [Input("containerPath")] public Input? ContainerPath { get; set; } @@ -21,9 +21,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/JobDefinitionVolumesArgs.cs b/sdk/dotnet/Batch/Inputs/JobDefinitionVolumeArgs.cs similarity index 68% rename from sdk/dotnet/Batch/Inputs/JobDefinitionVolumesArgs.cs rename to sdk/dotnet/Batch/Inputs/JobDefinitionVolumeArgs.cs index 77512653e2..31419da673 100644 --- a/sdk/dotnet/Batch/Inputs/JobDefinitionVolumesArgs.cs +++ b/sdk/dotnet/Batch/Inputs/JobDefinitionVolumeArgs.cs @@ -10,20 +10,20 @@ namespace Pulumi.AwsNative.Batch.Inputs { - public sealed class JobDefinitionVolumesArgs : global::Pulumi.ResourceArgs + public sealed class JobDefinitionVolumeArgs : global::Pulumi.ResourceArgs { [Input("efsVolumeConfiguration")] public Input? EfsVolumeConfiguration { get; set; } [Input("host")] - public Input? Host { get; set; } + public Input? Host { get; set; } [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 4236f5464f..3f7384d057 100644 --- a/sdk/dotnet/Batch/JobDefinition.cs +++ b/sdk/dotnet/Batch/JobDefinition.cs @@ -12,16 +12,21 @@ namespace Pulumi.AwsNative.Batch /// /// Resource Type definition for AWS::Batch::JobDefinition /// - [Obsolete(@"JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:batch:JobDefinition")] public partial class JobDefinition : global::Pulumi.CustomResource { + [Output("containerOrchestrationType")] + public Output ContainerOrchestrationType { get; private set; } = null!; + [Output("containerProperties")] public Output ContainerProperties { get; private set; } = null!; [Output("eksProperties")] public Output EksProperties { get; private set; } = null!; + [Output("jobDefinitionArn")] + public Output JobDefinitionArn { get; private set; } = null!; + [Output("jobDefinitionName")] public Output JobDefinitionName { get; private set; } = null!; @@ -40,14 +45,23 @@ public partial class JobDefinition : global::Pulumi.CustomResource [Output("retryStrategy")] public Output RetryStrategy { get; private set; } = null!; + [Output("revision")] + public Output Revision { get; private set; } = null!; + [Output("schedulingPriority")] public Output SchedulingPriority { get; private set; } = null!; + [Output("status")] + public Output Status { get; private set; } = null!; + + /// + /// A key-value pair to associate with a resource. + /// [Output("tags")] public Output Tags { get; private set; } = null!; [Output("timeout")] - public Output Timeout { get; private set; } = null!; + public Output Timeout { get; private set; } = null!; [Output("type")] public Output Type { get; private set; } = null!; @@ -77,8 +91,17 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { + "containerProperties", + "eksProperties", "jobDefinitionName", - "tags", + "nodeProperties", + "parameters", + "platformCapabilities[*]", + "propagateTags", + "retryStrategy", + "schedulingPriority", + "timeout", + "type", }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); @@ -134,11 +157,14 @@ public InputList PlatformCapabilities [Input("schedulingPriority")] public Input? SchedulingPriority { get; set; } + /// + /// A key-value pair to associate with a resource. + /// [Input("tags")] public Input? Tags { get; set; } [Input("timeout")] - public Input? Timeout { get; set; } + public Input? Timeout { get; set; } [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionContainerProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerProperties.cs index ad7fec8011..5f69dd381d 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionContainerProperties.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerProperties.cs @@ -15,26 +15,26 @@ public sealed class JobDefinitionContainerProperties { public readonly ImmutableArray Command; public readonly ImmutableArray Environment; - public readonly Outputs.JobDefinitionEphemeralStorage? EphemeralStorage; + public readonly Outputs.JobDefinitionContainerPropertiesEphemeralStorageProperties? EphemeralStorage; public readonly string? ExecutionRoleArn; - public readonly Outputs.JobDefinitionFargatePlatformConfiguration? FargatePlatformConfiguration; + public readonly Outputs.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties? FargatePlatformConfiguration; public readonly string Image; public readonly string? InstanceType; public readonly string? JobRoleArn; - public readonly Outputs.JobDefinitionLinuxParameters? LinuxParameters; - public readonly Outputs.JobDefinitionLogConfiguration? LogConfiguration; + public readonly Outputs.JobDefinitionContainerPropertiesLinuxParametersProperties? LinuxParameters; + public readonly Outputs.JobDefinitionContainerPropertiesLogConfigurationProperties? LogConfiguration; public readonly int? Memory; - public readonly ImmutableArray MountPoints; - public readonly Outputs.JobDefinitionNetworkConfiguration? NetworkConfiguration; + public readonly ImmutableArray MountPoints; + public readonly Outputs.JobDefinitionContainerPropertiesNetworkConfigurationProperties? NetworkConfiguration; public readonly bool? Privileged; public readonly bool? ReadonlyRootFilesystem; public readonly ImmutableArray ResourceRequirements; - public readonly Outputs.JobDefinitionRuntimePlatform? RuntimePlatform; + public readonly Outputs.JobDefinitionContainerPropertiesRuntimePlatformProperties? RuntimePlatform; public readonly ImmutableArray Secrets; public readonly ImmutableArray Ulimits; public readonly string? User; public readonly int? Vcpus; - public readonly ImmutableArray Volumes; + public readonly ImmutableArray Volumes; [OutputConstructor] private JobDefinitionContainerProperties( @@ -42,11 +42,11 @@ private JobDefinitionContainerProperties( ImmutableArray environment, - Outputs.JobDefinitionEphemeralStorage? ephemeralStorage, + Outputs.JobDefinitionContainerPropertiesEphemeralStorageProperties? ephemeralStorage, string? executionRoleArn, - Outputs.JobDefinitionFargatePlatformConfiguration? fargatePlatformConfiguration, + Outputs.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties? fargatePlatformConfiguration, string image, @@ -54,15 +54,15 @@ private JobDefinitionContainerProperties( string? jobRoleArn, - Outputs.JobDefinitionLinuxParameters? linuxParameters, + Outputs.JobDefinitionContainerPropertiesLinuxParametersProperties? linuxParameters, - Outputs.JobDefinitionLogConfiguration? logConfiguration, + Outputs.JobDefinitionContainerPropertiesLogConfigurationProperties? logConfiguration, int? memory, - ImmutableArray mountPoints, + ImmutableArray mountPoints, - Outputs.JobDefinitionNetworkConfiguration? networkConfiguration, + Outputs.JobDefinitionContainerPropertiesNetworkConfigurationProperties? networkConfiguration, bool? privileged, @@ -70,7 +70,7 @@ private JobDefinitionContainerProperties( ImmutableArray resourceRequirements, - Outputs.JobDefinitionRuntimePlatform? runtimePlatform, + Outputs.JobDefinitionContainerPropertiesRuntimePlatformProperties? runtimePlatform, ImmutableArray secrets, @@ -80,7 +80,7 @@ private JobDefinitionContainerProperties( int? vcpus, - ImmutableArray volumes) + ImmutableArray volumes) { Command = command; Environment = environment; diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionEphemeralStorage.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesEphemeralStorageProperties.cs similarity index 74% rename from sdk/dotnet/Batch/Outputs/JobDefinitionEphemeralStorage.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesEphemeralStorageProperties.cs index 49787816e3..dec2cb6e65 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionEphemeralStorage.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesEphemeralStorageProperties.cs @@ -11,12 +11,12 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionEphemeralStorage + public sealed class JobDefinitionContainerPropertiesEphemeralStorageProperties { public readonly int SizeInGiB; [OutputConstructor] - private JobDefinitionEphemeralStorage(int sizeInGiB) + private JobDefinitionContainerPropertiesEphemeralStorageProperties(int sizeInGiB) { SizeInGiB = sizeInGiB; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionFargatePlatformConfiguration.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties.cs similarity index 71% rename from sdk/dotnet/Batch/Outputs/JobDefinitionFargatePlatformConfiguration.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties.cs index c1d865c459..bc1fe1193c 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionFargatePlatformConfiguration.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties.cs @@ -11,12 +11,12 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionFargatePlatformConfiguration + public sealed class JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { public readonly string? PlatformVersion; [OutputConstructor] - private JobDefinitionFargatePlatformConfiguration(string? platformVersion) + private JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties(string? platformVersion) { PlatformVersion = platformVersion; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionLinuxParameters.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesLinuxParametersProperties.cs similarity index 88% rename from sdk/dotnet/Batch/Outputs/JobDefinitionLinuxParameters.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesLinuxParametersProperties.cs index db5da2730c..67763adff6 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionLinuxParameters.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesLinuxParametersProperties.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionLinuxParameters + public sealed class JobDefinitionContainerPropertiesLinuxParametersProperties { public readonly ImmutableArray Devices; public readonly bool? InitProcessEnabled; @@ -21,7 +21,7 @@ public sealed class JobDefinitionLinuxParameters public readonly ImmutableArray Tmpfs; [OutputConstructor] - private JobDefinitionLinuxParameters( + private JobDefinitionContainerPropertiesLinuxParametersProperties( ImmutableArray devices, bool? initProcessEnabled, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionLogConfiguration.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesLogConfigurationProperties.cs similarity index 83% rename from sdk/dotnet/Batch/Outputs/JobDefinitionLogConfiguration.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesLogConfigurationProperties.cs index 323b872dac..c3de0317e1 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionLogConfiguration.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesLogConfigurationProperties.cs @@ -11,14 +11,14 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionLogConfiguration + public sealed class JobDefinitionContainerPropertiesLogConfigurationProperties { public readonly string LogDriver; public readonly object? Options; public readonly ImmutableArray SecretOptions; [OutputConstructor] - private JobDefinitionLogConfiguration( + private JobDefinitionContainerPropertiesLogConfigurationProperties( string logDriver, object? options, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionNetworkConfiguration.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesNetworkConfigurationProperties.cs similarity index 73% rename from sdk/dotnet/Batch/Outputs/JobDefinitionNetworkConfiguration.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesNetworkConfigurationProperties.cs index 71b55d75a6..50c8afec50 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionNetworkConfiguration.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesNetworkConfigurationProperties.cs @@ -11,12 +11,12 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionNetworkConfiguration + public sealed class JobDefinitionContainerPropertiesNetworkConfigurationProperties { public readonly string? AssignPublicIp; [OutputConstructor] - private JobDefinitionNetworkConfiguration(string? assignPublicIp) + private JobDefinitionContainerPropertiesNetworkConfigurationProperties(string? assignPublicIp) { AssignPublicIp = assignPublicIp; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionRuntimePlatform.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesRuntimePlatformProperties.cs similarity index 81% rename from sdk/dotnet/Batch/Outputs/JobDefinitionRuntimePlatform.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesRuntimePlatformProperties.cs index 5f0c06738e..629d247e18 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionRuntimePlatform.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionContainerPropertiesRuntimePlatformProperties.cs @@ -11,13 +11,13 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionRuntimePlatform + public sealed class JobDefinitionContainerPropertiesRuntimePlatformProperties { public readonly string? CpuArchitecture; public readonly string? OperatingSystemFamily; [OutputConstructor] - private JobDefinitionRuntimePlatform( + private JobDefinitionContainerPropertiesRuntimePlatformProperties( string? cpuArchitecture, string? operatingSystemFamily) diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionAuthorizationConfig.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEfsAuthorizationConfig.cs similarity index 84% rename from sdk/dotnet/Batch/Outputs/JobDefinitionAuthorizationConfig.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionEfsAuthorizationConfig.cs index 69bf866919..d367194775 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionAuthorizationConfig.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEfsAuthorizationConfig.cs @@ -11,13 +11,13 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionAuthorizationConfig + public sealed class JobDefinitionEfsAuthorizationConfig { public readonly string? AccessPointId; 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 f944bd54d1..d4a1b739e6 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionEfsVolumeConfiguration.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEfsVolumeConfiguration.cs @@ -13,7 +13,7 @@ namespace Pulumi.AwsNative.Batch.Outputs [OutputType] public sealed class JobDefinitionEfsVolumeConfiguration { - public readonly Outputs.JobDefinitionAuthorizationConfig? AuthorizationConfig; + public readonly Outputs.JobDefinitionEfsAuthorizationConfig? AuthorizationConfig; public readonly string FileSystemId; public readonly string? RootDirectory; public readonly string? TransitEncryption; @@ -21,7 +21,7 @@ public sealed class JobDefinitionEfsVolumeConfiguration [OutputConstructor] private JobDefinitionEfsVolumeConfiguration( - Outputs.JobDefinitionAuthorizationConfig? authorizationConfig, + Outputs.JobDefinitionEfsAuthorizationConfig? authorizationConfig, string fileSystemId, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionMetadata.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEksMetadata.cs similarity index 82% rename from sdk/dotnet/Batch/Outputs/JobDefinitionMetadata.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionEksMetadata.cs index 2188ffe0af..54bd6abc17 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionMetadata.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEksMetadata.cs @@ -11,12 +11,12 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionMetadata + public sealed class JobDefinitionEksMetadata { public readonly object? Labels; [OutputConstructor] - private JobDefinitionMetadata(object? labels) + private JobDefinitionEksMetadata(object? labels) { Labels = labels; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionPodProperties.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionEksPodProperties.cs similarity index 84% rename from sdk/dotnet/Batch/Outputs/JobDefinitionPodProperties.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionEksPodProperties.cs index 31bc3fdf3b..64717ac89d 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionPodProperties.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEksPodProperties.cs @@ -11,24 +11,24 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionPodProperties + public sealed class JobDefinitionEksPodProperties { public readonly ImmutableArray Containers; public readonly string? DnsPolicy; public readonly bool? HostNetwork; - public readonly Outputs.JobDefinitionMetadata? Metadata; + public readonly Outputs.JobDefinitionEksMetadata? Metadata; public readonly string? ServiceAccountName; public readonly ImmutableArray Volumes; [OutputConstructor] - private JobDefinitionPodProperties( + private JobDefinitionEksPodProperties( ImmutableArray containers, string? dnsPolicy, bool? hostNetwork, - 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 381e836d07..e8109d2f4e 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionEksProperties.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionEksProperties.cs @@ -13,10 +13,10 @@ namespace Pulumi.AwsNative.Batch.Outputs [OutputType] public sealed class JobDefinitionEksProperties { - 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/JobDefinitionVolumesHost.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionHost.cs similarity index 82% rename from sdk/dotnet/Batch/Outputs/JobDefinitionVolumesHost.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionHost.cs index 02a65595b5..a80c604d03 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionVolumesHost.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionHost.cs @@ -11,12 +11,12 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionVolumesHost + public sealed class JobDefinitionHost { public readonly string? SourcePath; [OutputConstructor] - private JobDefinitionVolumesHost(string? sourcePath) + private JobDefinitionHost(string? sourcePath) { SourcePath = sourcePath; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionTimeout.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionJobTimeout.cs similarity index 82% rename from sdk/dotnet/Batch/Outputs/JobDefinitionTimeout.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionJobTimeout.cs index 3920a006e8..976fda2642 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionTimeout.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionJobTimeout.cs @@ -11,12 +11,12 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionTimeout + public sealed class JobDefinitionJobTimeout { public readonly int? AttemptDurationSeconds; [OutputConstructor] - private JobDefinitionTimeout(int? attemptDurationSeconds) + private JobDefinitionJobTimeout(int? attemptDurationSeconds) { AttemptDurationSeconds = attemptDurationSeconds; } diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionMountPoints.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionMountPoint.cs similarity index 89% rename from sdk/dotnet/Batch/Outputs/JobDefinitionMountPoints.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionMountPoint.cs index 04a40898fa..a4cdbb6871 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionMountPoints.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionMountPoint.cs @@ -11,14 +11,14 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionMountPoints + public sealed class JobDefinitionMountPoint { public readonly string? ContainerPath; public readonly bool? ReadOnly; public readonly string? SourceVolume; [OutputConstructor] - private JobDefinitionMountPoints( + private JobDefinitionMountPoint( string? containerPath, bool? readOnly, diff --git a/sdk/dotnet/Batch/Outputs/JobDefinitionVolumes.cs b/sdk/dotnet/Batch/Outputs/JobDefinitionVolume.cs similarity index 79% rename from sdk/dotnet/Batch/Outputs/JobDefinitionVolumes.cs rename to sdk/dotnet/Batch/Outputs/JobDefinitionVolume.cs index b16027d0ba..3c0828c51b 100644 --- a/sdk/dotnet/Batch/Outputs/JobDefinitionVolumes.cs +++ b/sdk/dotnet/Batch/Outputs/JobDefinitionVolume.cs @@ -11,17 +11,17 @@ namespace Pulumi.AwsNative.Batch.Outputs { [OutputType] - public sealed class JobDefinitionVolumes + public sealed class JobDefinitionVolume { public readonly Outputs.JobDefinitionEfsVolumeConfiguration? EfsVolumeConfiguration; - public readonly Outputs.JobDefinitionVolumesHost? Host; + public readonly Outputs.JobDefinitionHost? Host; 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/BillingConductor/CustomLineItem.cs b/sdk/dotnet/BillingConductor/CustomLineItem.cs index a1df1b45af..a7eaaa5375 100644 --- a/sdk/dotnet/BillingConductor/CustomLineItem.cs +++ b/sdk/dotnet/BillingConductor/CustomLineItem.cs @@ -16,6 +16,12 @@ namespace Pulumi.AwsNative.BillingConductor [AwsNativeResourceType("aws-native:billingconductor:CustomLineItem")] public partial class CustomLineItem : global::Pulumi.CustomResource { + /// + /// The account which this custom line item will be charged to + /// + [Output("accountId")] + public Output AccountId { get; private set; } = null!; + /// /// ARN /// @@ -92,6 +98,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { + "accountId", "billingGroupArn", "billingPeriodRange.exclusiveEndBillingPeriod", "billingPeriodRange.inclusiveStartBillingPeriod", @@ -119,6 +126,12 @@ public static CustomLineItem Get(string name, Input id, CustomResourceOp public sealed class CustomLineItemArgs : global::Pulumi.ResourceArgs { + /// + /// The account which this custom line item will be charged to + /// + [Input("accountId")] + public Input? AccountId { get; set; } + /// /// Billing Group ARN /// diff --git a/sdk/dotnet/Ce/AnomalyMonitor.cs b/sdk/dotnet/Ce/AnomalyMonitor.cs index ceb2f3cd5b..6e2fb98a13 100644 --- a/sdk/dotnet/Ce/AnomalyMonitor.cs +++ b/sdk/dotnet/Ce/AnomalyMonitor.cs @@ -12,7 +12,6 @@ namespace Pulumi.AwsNative.Ce /// /// 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. /// - [Obsolete(@"AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:ce:AnomalyMonitor")] public partial class AnomalyMonitor : global::Pulumi.CustomResource { diff --git a/sdk/dotnet/Ce/AnomalySubscription.cs b/sdk/dotnet/Ce/AnomalySubscription.cs index 5bb27ed95b..76a267d352 100644 --- a/sdk/dotnet/Ce/AnomalySubscription.cs +++ b/sdk/dotnet/Ce/AnomalySubscription.cs @@ -12,7 +12,6 @@ namespace Pulumi.AwsNative.Ce /// /// AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified /// - [Obsolete(@"AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:ce:AnomalySubscription")] public partial class AnomalySubscription : global::Pulumi.CustomResource { diff --git a/sdk/dotnet/CleanRooms/Collaboration.cs b/sdk/dotnet/CleanRooms/Collaboration.cs index 60dc824af2..68d2e2b7bf 100644 --- a/sdk/dotnet/CleanRooms/Collaboration.cs +++ b/sdk/dotnet/CleanRooms/Collaboration.cs @@ -27,6 +27,9 @@ public partial class Collaboration : global::Pulumi.CustomResource [Output("creatorMemberAbilities")] public Output> CreatorMemberAbilities { get; private set; } = null!; + [Output("creatorPaymentConfiguration")] + public Output CreatorPaymentConfiguration { get; private set; } = null!; + [Output("dataEncryptionMetadata")] public Output DataEncryptionMetadata { get; private set; } = null!; @@ -75,6 +78,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? { "creatorDisplayName", "creatorMemberAbilities[*]", + "creatorPaymentConfiguration", "dataEncryptionMetadata", "members[*]", "queryLogStatus", @@ -112,6 +116,9 @@ public InputList Creator set => _creatorMemberAbilities = value; } + [Input("creatorPaymentConfiguration")] + public Input? CreatorPaymentConfiguration { get; set; } + [Input("dataEncryptionMetadata")] public Input? DataEncryptionMetadata { get; set; } diff --git a/sdk/dotnet/CleanRooms/GetMembership.cs b/sdk/dotnet/CleanRooms/GetMembership.cs index 486bbf72c0..79bfeb2560 100644 --- a/sdk/dotnet/CleanRooms/GetMembership.cs +++ b/sdk/dotnet/CleanRooms/GetMembership.cs @@ -56,6 +56,7 @@ public sealed class GetMembershipResult public readonly string? CollaborationCreatorAccountId; public readonly Outputs.MembershipProtectedQueryResultConfiguration? DefaultResultConfiguration; public readonly string? MembershipIdentifier; + public readonly Outputs.MembershipPaymentConfiguration? PaymentConfiguration; public readonly Pulumi.AwsNative.CleanRooms.MembershipQueryLogStatus? QueryLogStatus; /// /// An arbitrary set of tags (key-value pairs) for this cleanrooms membership. @@ -74,6 +75,8 @@ private GetMembershipResult( string? membershipIdentifier, + Outputs.MembershipPaymentConfiguration? paymentConfiguration, + Pulumi.AwsNative.CleanRooms.MembershipQueryLogStatus? queryLogStatus, ImmutableArray tags) @@ -83,6 +86,7 @@ private GetMembershipResult( CollaborationCreatorAccountId = collaborationCreatorAccountId; DefaultResultConfiguration = defaultResultConfiguration; MembershipIdentifier = membershipIdentifier; + PaymentConfiguration = paymentConfiguration; QueryLogStatus = queryLogStatus; Tags = tags; } diff --git a/sdk/dotnet/CleanRooms/Inputs/CollaborationMemberSpecificationArgs.cs b/sdk/dotnet/CleanRooms/Inputs/CollaborationMemberSpecificationArgs.cs index 5cc4104cdf..b4473801c8 100644 --- a/sdk/dotnet/CleanRooms/Inputs/CollaborationMemberSpecificationArgs.cs +++ b/sdk/dotnet/CleanRooms/Inputs/CollaborationMemberSpecificationArgs.cs @@ -26,6 +26,9 @@ public InputList MemberA set => _memberAbilities = value; } + [Input("paymentConfiguration")] + public Input? PaymentConfiguration { get; set; } + public CollaborationMemberSpecificationArgs() { } diff --git a/sdk/dotnet/CleanRooms/Inputs/CollaborationPaymentConfigurationArgs.cs b/sdk/dotnet/CleanRooms/Inputs/CollaborationPaymentConfigurationArgs.cs new file mode 100644 index 0000000000..fbba7482c4 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/CollaborationPaymentConfigurationArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 CollaborationPaymentConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("queryCompute", required: true)] + public Input QueryCompute { get; set; } = null!; + + public CollaborationPaymentConfigurationArgs() + { + } + public static new CollaborationPaymentConfigurationArgs Empty => new CollaborationPaymentConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/CollaborationQueryComputePaymentConfigArgs.cs b/sdk/dotnet/CleanRooms/Inputs/CollaborationQueryComputePaymentConfigArgs.cs new file mode 100644 index 0000000000..08ac214721 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/CollaborationQueryComputePaymentConfigArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 CollaborationQueryComputePaymentConfigArgs : global::Pulumi.ResourceArgs + { + [Input("isResponsible", required: true)] + public Input IsResponsible { get; set; } = null!; + + public CollaborationQueryComputePaymentConfigArgs() + { + } + public static new CollaborationQueryComputePaymentConfigArgs Empty => new CollaborationQueryComputePaymentConfigArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationArgs.cs new file mode 100644 index 0000000000..32fc43f91b --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipPaymentConfigurationArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 MembershipPaymentConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("queryCompute", required: true)] + public Input QueryCompute { get; set; } = null!; + + public MembershipPaymentConfigurationArgs() + { + } + public static new MembershipPaymentConfigurationArgs Empty => new MembershipPaymentConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Inputs/MembershipQueryComputePaymentConfigArgs.cs b/sdk/dotnet/CleanRooms/Inputs/MembershipQueryComputePaymentConfigArgs.cs new file mode 100644 index 0000000000..ac183598b1 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Inputs/MembershipQueryComputePaymentConfigArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 MembershipQueryComputePaymentConfigArgs : global::Pulumi.ResourceArgs + { + [Input("isResponsible", required: true)] + public Input IsResponsible { get; set; } = null!; + + public MembershipQueryComputePaymentConfigArgs() + { + } + public static new MembershipQueryComputePaymentConfigArgs Empty => new MembershipQueryComputePaymentConfigArgs(); + } +} diff --git a/sdk/dotnet/CleanRooms/Membership.cs b/sdk/dotnet/CleanRooms/Membership.cs index 542df9932c..7a8e81d5be 100644 --- a/sdk/dotnet/CleanRooms/Membership.cs +++ b/sdk/dotnet/CleanRooms/Membership.cs @@ -33,6 +33,9 @@ public partial class Membership : global::Pulumi.CustomResource [Output("membershipIdentifier")] public Output MembershipIdentifier { get; private set; } = null!; + [Output("paymentConfiguration")] + public Output PaymentConfiguration { get; private set; } = null!; + [Output("queryLogStatus")] public Output QueryLogStatus { get; private set; } = null!; @@ -97,6 +100,9 @@ public sealed class MembershipArgs : global::Pulumi.ResourceArgs [Input("defaultResultConfiguration")] public Input? DefaultResultConfiguration { get; set; } + [Input("paymentConfiguration")] + public Input? PaymentConfiguration { get; set; } + [Input("queryLogStatus", required: true)] public Input QueryLogStatus { get; set; } = null!; diff --git a/sdk/dotnet/CleanRooms/Outputs/CollaborationMemberSpecification.cs b/sdk/dotnet/CleanRooms/Outputs/CollaborationMemberSpecification.cs index a82ab7b7a7..6b2c6c5590 100644 --- a/sdk/dotnet/CleanRooms/Outputs/CollaborationMemberSpecification.cs +++ b/sdk/dotnet/CleanRooms/Outputs/CollaborationMemberSpecification.cs @@ -16,6 +16,7 @@ public sealed class CollaborationMemberSpecification public readonly string AccountId; public readonly string DisplayName; public readonly ImmutableArray MemberAbilities; + public readonly Outputs.CollaborationPaymentConfiguration? PaymentConfiguration; [OutputConstructor] private CollaborationMemberSpecification( @@ -23,11 +24,14 @@ private CollaborationMemberSpecification( string displayName, - ImmutableArray memberAbilities) + ImmutableArray memberAbilities, + + Outputs.CollaborationPaymentConfiguration? paymentConfiguration) { AccountId = accountId; DisplayName = displayName; MemberAbilities = memberAbilities; + PaymentConfiguration = paymentConfiguration; } } } diff --git a/sdk/dotnet/CleanRooms/Outputs/CollaborationPaymentConfiguration.cs b/sdk/dotnet/CleanRooms/Outputs/CollaborationPaymentConfiguration.cs new file mode 100644 index 0000000000..01f763d1f8 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/CollaborationPaymentConfiguration.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 CollaborationPaymentConfiguration + { + public readonly Outputs.CollaborationQueryComputePaymentConfig QueryCompute; + + [OutputConstructor] + private CollaborationPaymentConfiguration(Outputs.CollaborationQueryComputePaymentConfig queryCompute) + { + QueryCompute = queryCompute; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/CollaborationQueryComputePaymentConfig.cs b/sdk/dotnet/CleanRooms/Outputs/CollaborationQueryComputePaymentConfig.cs new file mode 100644 index 0000000000..766dd5752b --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/CollaborationQueryComputePaymentConfig.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 CollaborationQueryComputePaymentConfig + { + public readonly bool IsResponsible; + + [OutputConstructor] + private CollaborationQueryComputePaymentConfig(bool isResponsible) + { + IsResponsible = isResponsible; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfiguration.cs b/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfiguration.cs new file mode 100644 index 0000000000..7ea12a6668 --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/MembershipPaymentConfiguration.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 MembershipPaymentConfiguration + { + public readonly Outputs.MembershipQueryComputePaymentConfig QueryCompute; + + [OutputConstructor] + private MembershipPaymentConfiguration(Outputs.MembershipQueryComputePaymentConfig queryCompute) + { + QueryCompute = queryCompute; + } + } +} diff --git a/sdk/dotnet/CleanRooms/Outputs/MembershipQueryComputePaymentConfig.cs b/sdk/dotnet/CleanRooms/Outputs/MembershipQueryComputePaymentConfig.cs new file mode 100644 index 0000000000..dfb4326d5a --- /dev/null +++ b/sdk/dotnet/CleanRooms/Outputs/MembershipQueryComputePaymentConfig.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 MembershipQueryComputePaymentConfig + { + public readonly bool IsResponsible; + + [OutputConstructor] + private MembershipQueryComputePaymentConfig(bool isResponsible) + { + IsResponsible = isResponsible; + } + } +} diff --git a/sdk/dotnet/Cloud9/EnvironmentEc2.cs b/sdk/dotnet/Cloud9/EnvironmentEc2.cs index 8b1fce604e..6838c4cd98 100644 --- a/sdk/dotnet/Cloud9/EnvironmentEc2.cs +++ b/sdk/dotnet/Cloud9/EnvironmentEc2.cs @@ -29,7 +29,7 @@ public partial class EnvironmentEc2 : global::Pulumi.CustomResource public Output Description { get; private set; } = null!; [Output("imageId")] - public Output ImageId { get; private set; } = null!; + public Output ImageId { get; private set; } = null!; [Output("instanceType")] public Output InstanceType { get; private set; } = null!; @@ -113,8 +113,8 @@ public sealed class EnvironmentEc2Args : global::Pulumi.ResourceArgs [Input("description")] public Input? Description { get; set; } - [Input("imageId")] - public Input? ImageId { get; set; } + [Input("imageId", required: true)] + public Input ImageId { get; set; } = null!; [Input("instanceType", required: true)] public Input InstanceType { get; set; } = null!; diff --git a/sdk/dotnet/CloudFront/GetKeyValueStore.cs b/sdk/dotnet/CloudFront/GetKeyValueStore.cs new file mode 100644 index 0000000000..fcdf836672 --- /dev/null +++ b/sdk/dotnet/CloudFront/GetKeyValueStore.cs @@ -0,0 +1,75 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 +{ + public static class GetKeyValueStore + { + /// + /// Resource Type definition for AWS::CloudFront::KeyValueStore + /// + public static Task InvokeAsync(GetKeyValueStoreArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:cloudfront:getKeyValueStore", args ?? new GetKeyValueStoreArgs(), options.WithDefaults()); + + /// + /// Resource Type definition for AWS::CloudFront::KeyValueStore + /// + public static Output Invoke(GetKeyValueStoreInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:cloudfront:getKeyValueStore", args ?? new GetKeyValueStoreInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetKeyValueStoreArgs : global::Pulumi.InvokeArgs + { + [Input("name", required: true)] + public string Name { get; set; } = null!; + + public GetKeyValueStoreArgs() + { + } + public static new GetKeyValueStoreArgs Empty => new GetKeyValueStoreArgs(); + } + + public sealed class GetKeyValueStoreInvokeArgs : global::Pulumi.InvokeArgs + { + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + public GetKeyValueStoreInvokeArgs() + { + } + public static new GetKeyValueStoreInvokeArgs Empty => new GetKeyValueStoreInvokeArgs(); + } + + + [OutputType] + public sealed class GetKeyValueStoreResult + { + public readonly string? Arn; + public readonly string? Comment; + public readonly string? Id; + public readonly string? Status; + + [OutputConstructor] + private GetKeyValueStoreResult( + string? arn, + + string? comment, + + string? id, + + string? status) + { + Arn = arn; + Comment = comment; + Id = id; + Status = status; + } + } +} diff --git a/sdk/dotnet/CloudFront/Inputs/KeyValueStoreImportSourceArgs.cs b/sdk/dotnet/CloudFront/Inputs/KeyValueStoreImportSourceArgs.cs new file mode 100644 index 0000000000..c31fe22319 --- /dev/null +++ b/sdk/dotnet/CloudFront/Inputs/KeyValueStoreImportSourceArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 KeyValueStoreImportSourceArgs : global::Pulumi.ResourceArgs + { + [Input("sourceArn", required: true)] + public Input SourceArn { get; set; } = null!; + + [Input("sourceType", required: true)] + public Input SourceType { get; set; } = null!; + + public KeyValueStoreImportSourceArgs() + { + } + public static new KeyValueStoreImportSourceArgs Empty => new KeyValueStoreImportSourceArgs(); + } +} diff --git a/sdk/dotnet/CloudFront/KeyValueStore.cs b/sdk/dotnet/CloudFront/KeyValueStore.cs new file mode 100644 index 0000000000..496c3ca320 --- /dev/null +++ b/sdk/dotnet/CloudFront/KeyValueStore.cs @@ -0,0 +1,97 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 +{ + /// + /// Resource Type definition for AWS::CloudFront::KeyValueStore + /// + [Obsolete(@"KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] + [AwsNativeResourceType("aws-native:cloudfront:KeyValueStore")] + public partial class KeyValueStore : global::Pulumi.CustomResource + { + [Output("arn")] + public Output Arn { get; private set; } = null!; + + [Output("comment")] + public Output Comment { get; private set; } = null!; + + [Output("importSource")] + public Output ImportSource { get; private set; } = null!; + + [Output("name")] + public Output Name { get; private set; } = null!; + + [Output("status")] + public Output Status { get; private set; } = null!; + + + /// + /// Create a KeyValueStore 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 KeyValueStore(string name, KeyValueStoreArgs? args = null, CustomResourceOptions? options = null) + : base("aws-native:cloudfront:KeyValueStore", name, args ?? new KeyValueStoreArgs(), MakeResourceOptions(options, "")) + { + } + + private KeyValueStore(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:cloudfront:KeyValueStore", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "name", + }, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing KeyValueStore 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 KeyValueStore Get(string name, Input id, CustomResourceOptions? options = null) + { + return new KeyValueStore(name, id, options); + } + } + + public sealed class KeyValueStoreArgs : global::Pulumi.ResourceArgs + { + [Input("comment")] + public Input? Comment { get; set; } + + [Input("importSource")] + public Input? ImportSource { get; set; } + + [Input("name")] + public Input? Name { get; set; } + + public KeyValueStoreArgs() + { + } + public static new KeyValueStoreArgs Empty => new KeyValueStoreArgs(); + } +} diff --git a/sdk/dotnet/CloudFront/Outputs/KeyValueStoreImportSource.cs b/sdk/dotnet/CloudFront/Outputs/KeyValueStoreImportSource.cs new file mode 100644 index 0000000000..bb1a5c30d3 --- /dev/null +++ b/sdk/dotnet/CloudFront/Outputs/KeyValueStoreImportSource.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 KeyValueStoreImportSource + { + public readonly string SourceArn; + public readonly string SourceType; + + [OutputConstructor] + private KeyValueStoreImportSource( + string sourceArn, + + string sourceType) + { + SourceArn = sourceArn; + SourceType = sourceType; + } + } +} diff --git a/sdk/dotnet/CloudTrail/EventDataStore.cs b/sdk/dotnet/CloudTrail/EventDataStore.cs index 53164734bb..35da68380b 100644 --- a/sdk/dotnet/CloudTrail/EventDataStore.cs +++ b/sdk/dotnet/CloudTrail/EventDataStore.cs @@ -39,6 +39,18 @@ public partial class EventDataStore : global::Pulumi.CustomResource [Output("eventDataStoreArn")] public Output EventDataStoreArn { get; private set; } = null!; + /// + /// Indicates whether federation is enabled on an event data store. + /// + [Output("federationEnabled")] + public Output FederationEnabled { get; private set; } = null!; + + /// + /// The ARN of the role used for event data store federation. + /// + [Output("federationRoleArn")] + public Output FederationRoleArn { get; private set; } = null!; + /// /// Indicates whether the event data store is ingesting events. /// @@ -171,6 +183,18 @@ public InputList AdvancedEventSe [Input("billingMode")] public Input? BillingMode { get; set; } + /// + /// Indicates whether federation is enabled on an event data store. + /// + [Input("federationEnabled")] + public Input? FederationEnabled { get; set; } + + /// + /// The ARN of the role used for event data store federation. + /// + [Input("federationRoleArn")] + public Input? FederationRoleArn { get; set; } + /// /// Indicates whether the event data store is ingesting events. /// diff --git a/sdk/dotnet/CloudTrail/GetEventDataStore.cs b/sdk/dotnet/CloudTrail/GetEventDataStore.cs index 06691e4905..55a2c1d691 100644 --- a/sdk/dotnet/CloudTrail/GetEventDataStore.cs +++ b/sdk/dotnet/CloudTrail/GetEventDataStore.cs @@ -74,6 +74,14 @@ public sealed class GetEventDataStoreResult /// public readonly string? EventDataStoreArn; /// + /// Indicates whether federation is enabled on an event data store. + /// + public readonly bool? FederationEnabled; + /// + /// The ARN of the role used for event data store federation. + /// + public readonly string? FederationRoleArn; + /// /// Indicates whether the event data store is ingesting events. /// public readonly bool? IngestionEnabled; @@ -129,6 +137,10 @@ private GetEventDataStoreResult( string? eventDataStoreArn, + bool? federationEnabled, + + string? federationRoleArn, + bool? ingestionEnabled, ImmutableArray insightSelectors, @@ -157,6 +169,8 @@ private GetEventDataStoreResult( BillingMode = billingMode; CreatedTimestamp = createdTimestamp; EventDataStoreArn = eventDataStoreArn; + FederationEnabled = federationEnabled; + FederationRoleArn = federationRoleArn; IngestionEnabled = ingestionEnabled; InsightSelectors = insightSelectors; InsightsDestination = insightsDestination; diff --git a/sdk/dotnet/CodeDeploy/DeploymentConfig.cs b/sdk/dotnet/CodeDeploy/DeploymentConfig.cs index 9744930164..ddb8e6b663 100644 --- a/sdk/dotnet/CodeDeploy/DeploymentConfig.cs +++ b/sdk/dotnet/CodeDeploy/DeploymentConfig.cs @@ -39,6 +39,12 @@ public partial class DeploymentConfig : global::Pulumi.CustomResource [Output("trafficRoutingConfig")] public Output TrafficRoutingConfig { get; private set; } = null!; + /// + /// The zonal deployment config that specifies how the zonal deployment behaves + /// + [Output("zonalConfig")] + public Output ZonalConfig { get; private set; } = null!; + /// /// Create a DeploymentConfig resource with the given unique name, arguments, and options. @@ -68,6 +74,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? "deploymentConfigName", "minimumHealthyHosts", "trafficRoutingConfig", + "zonalConfig", }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); @@ -115,6 +122,12 @@ public sealed class DeploymentConfigArgs : global::Pulumi.ResourceArgs [Input("trafficRoutingConfig")] public Input? TrafficRoutingConfig { get; set; } + /// + /// The zonal deployment config that specifies how the zonal deployment behaves + /// + [Input("zonalConfig")] + public Input? ZonalConfig { get; set; } + public DeploymentConfigArgs() { } diff --git a/sdk/dotnet/CodeDeploy/DeploymentGroup.cs b/sdk/dotnet/CodeDeploy/DeploymentGroup.cs index 7f3f4596dd..0a80a32029 100644 --- a/sdk/dotnet/CodeDeploy/DeploymentGroup.cs +++ b/sdk/dotnet/CodeDeploy/DeploymentGroup.cs @@ -70,6 +70,9 @@ public partial class DeploymentGroup : global::Pulumi.CustomResource [Output("tags")] public Output> Tags { get; private set; } = null!; + [Output("terminationHookEnabled")] + public Output TerminationHookEnabled { get; private set; } = null!; + [Output("triggerConfigurations")] public Output> TriggerConfigurations { get; private set; } = null!; @@ -202,6 +205,9 @@ public InputList Tags set => _tags = value; } + [Input("terminationHookEnabled")] + public Input? TerminationHookEnabled { get; set; } + [Input("triggerConfigurations")] private InputList? _triggerConfigurations; public InputList TriggerConfigurations diff --git a/sdk/dotnet/CodeDeploy/GetDeploymentGroup.cs b/sdk/dotnet/CodeDeploy/GetDeploymentGroup.cs index 0f8d22c5dc..acf84976a0 100644 --- a/sdk/dotnet/CodeDeploy/GetDeploymentGroup.cs +++ b/sdk/dotnet/CodeDeploy/GetDeploymentGroup.cs @@ -68,6 +68,7 @@ public sealed class GetDeploymentGroupResult public readonly string? OutdatedInstancesStrategy; public readonly string? ServiceRoleArn; public readonly ImmutableArray Tags; + public readonly bool? TerminationHookEnabled; public readonly ImmutableArray TriggerConfigurations; [OutputConstructor] @@ -106,6 +107,8 @@ private GetDeploymentGroupResult( ImmutableArray tags, + bool? terminationHookEnabled, + ImmutableArray triggerConfigurations) { AlarmConfiguration = alarmConfiguration; @@ -125,6 +128,7 @@ private GetDeploymentGroupResult( OutdatedInstancesStrategy = outdatedInstancesStrategy; ServiceRoleArn = serviceRoleArn; Tags = tags; + TerminationHookEnabled = terminationHookEnabled; TriggerConfigurations = triggerConfigurations; } } diff --git a/sdk/dotnet/CodeDeploy/Inputs/DeploymentConfigMinimumHealthyHostsPerZoneArgs.cs b/sdk/dotnet/CodeDeploy/Inputs/DeploymentConfigMinimumHealthyHostsPerZoneArgs.cs new file mode 100644 index 0000000000..0a396f6c3f --- /dev/null +++ b/sdk/dotnet/CodeDeploy/Inputs/DeploymentConfigMinimumHealthyHostsPerZoneArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodeDeploy.Inputs +{ + + public sealed class DeploymentConfigMinimumHealthyHostsPerZoneArgs : global::Pulumi.ResourceArgs + { + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public DeploymentConfigMinimumHealthyHostsPerZoneArgs() + { + } + public static new DeploymentConfigMinimumHealthyHostsPerZoneArgs Empty => new DeploymentConfigMinimumHealthyHostsPerZoneArgs(); + } +} diff --git a/sdk/dotnet/CodeDeploy/Inputs/DeploymentConfigZonalConfigArgs.cs b/sdk/dotnet/CodeDeploy/Inputs/DeploymentConfigZonalConfigArgs.cs new file mode 100644 index 0000000000..a499165e63 --- /dev/null +++ b/sdk/dotnet/CodeDeploy/Inputs/DeploymentConfigZonalConfigArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodeDeploy.Inputs +{ + + public sealed class DeploymentConfigZonalConfigArgs : global::Pulumi.ResourceArgs + { + [Input("firstZoneMonitorDurationInSeconds")] + public Input? FirstZoneMonitorDurationInSeconds { get; set; } + + [Input("minimumHealthyHostsPerZone")] + public Input? MinimumHealthyHostsPerZone { get; set; } + + [Input("monitorDurationInSeconds")] + public Input? MonitorDurationInSeconds { get; set; } + + public DeploymentConfigZonalConfigArgs() + { + } + public static new DeploymentConfigZonalConfigArgs Empty => new DeploymentConfigZonalConfigArgs(); + } +} diff --git a/sdk/dotnet/CodeDeploy/Outputs/DeploymentConfigMinimumHealthyHostsPerZone.cs b/sdk/dotnet/CodeDeploy/Outputs/DeploymentConfigMinimumHealthyHostsPerZone.cs new file mode 100644 index 0000000000..52382cde1f --- /dev/null +++ b/sdk/dotnet/CodeDeploy/Outputs/DeploymentConfigMinimumHealthyHostsPerZone.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodeDeploy.Outputs +{ + + [OutputType] + public sealed class DeploymentConfigMinimumHealthyHostsPerZone + { + public readonly string Type; + public readonly int Value; + + [OutputConstructor] + private DeploymentConfigMinimumHealthyHostsPerZone( + string type, + + int value) + { + Type = type; + Value = value; + } + } +} diff --git a/sdk/dotnet/CodeDeploy/Outputs/DeploymentConfigZonalConfig.cs b/sdk/dotnet/CodeDeploy/Outputs/DeploymentConfigZonalConfig.cs new file mode 100644 index 0000000000..a111b93b0c --- /dev/null +++ b/sdk/dotnet/CodeDeploy/Outputs/DeploymentConfigZonalConfig.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodeDeploy.Outputs +{ + + [OutputType] + public sealed class DeploymentConfigZonalConfig + { + public readonly int? FirstZoneMonitorDurationInSeconds; + public readonly Outputs.DeploymentConfigMinimumHealthyHostsPerZone? MinimumHealthyHostsPerZone; + public readonly int? MonitorDurationInSeconds; + + [OutputConstructor] + private DeploymentConfigZonalConfig( + int? firstZoneMonitorDurationInSeconds, + + Outputs.DeploymentConfigMinimumHealthyHostsPerZone? minimumHealthyHostsPerZone, + + int? monitorDurationInSeconds) + { + FirstZoneMonitorDurationInSeconds = firstZoneMonitorDurationInSeconds; + MinimumHealthyHostsPerZone = minimumHealthyHostsPerZone; + MonitorDurationInSeconds = monitorDurationInSeconds; + } + } +} diff --git a/sdk/dotnet/CodePipeline/GetPipeline.cs b/sdk/dotnet/CodePipeline/GetPipeline.cs index 4293d0f8dd..8072f31523 100644 --- a/sdk/dotnet/CodePipeline/GetPipeline.cs +++ b/sdk/dotnet/CodePipeline/GetPipeline.cs @@ -55,10 +55,13 @@ public sealed class GetPipelineResult public readonly ImmutableArray ArtifactStores; public readonly ImmutableArray DisableInboundStageTransitions; public readonly string? Id; + public readonly string? PipelineType; public readonly bool? RestartExecutionOnUpdate; public readonly string? RoleArn; public readonly ImmutableArray Stages; public readonly ImmutableArray Tags; + public readonly ImmutableArray Triggers; + public readonly ImmutableArray Variables; public readonly string? Version; [OutputConstructor] @@ -71,6 +74,8 @@ private GetPipelineResult( string? id, + string? pipelineType, + bool? restartExecutionOnUpdate, string? roleArn, @@ -79,16 +84,23 @@ private GetPipelineResult( ImmutableArray tags, + ImmutableArray triggers, + + ImmutableArray variables, + string? version) { ArtifactStore = artifactStore; ArtifactStores = artifactStores; DisableInboundStageTransitions = disableInboundStageTransitions; Id = id; + PipelineType = pipelineType; RestartExecutionOnUpdate = restartExecutionOnUpdate; RoleArn = roleArn; Stages = stages; Tags = tags; + Triggers = triggers; + Variables = variables; Version = version; } } diff --git a/sdk/dotnet/CodePipeline/Inputs/PipelineGitConfigurationArgs.cs b/sdk/dotnet/CodePipeline/Inputs/PipelineGitConfigurationArgs.cs new file mode 100644 index 0000000000..4f55bed3fe --- /dev/null +++ b/sdk/dotnet/CodePipeline/Inputs/PipelineGitConfigurationArgs.cs @@ -0,0 +1,31 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Inputs +{ + + public sealed class PipelineGitConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("push")] + private InputList? _push; + public InputList Push + { + get => _push ?? (_push = new InputList()); + set => _push = value; + } + + [Input("sourceActionName", required: true)] + public Input SourceActionName { get; set; } = null!; + + public PipelineGitConfigurationArgs() + { + } + public static new PipelineGitConfigurationArgs Empty => new PipelineGitConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CodePipeline/Inputs/PipelineGitPushFilterArgs.cs b/sdk/dotnet/CodePipeline/Inputs/PipelineGitPushFilterArgs.cs new file mode 100644 index 0000000000..afe508ce6e --- /dev/null +++ b/sdk/dotnet/CodePipeline/Inputs/PipelineGitPushFilterArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Inputs +{ + + public sealed class PipelineGitPushFilterArgs : global::Pulumi.ResourceArgs + { + [Input("tags")] + public Input? Tags { get; set; } + + public PipelineGitPushFilterArgs() + { + } + public static new PipelineGitPushFilterArgs Empty => new PipelineGitPushFilterArgs(); + } +} diff --git a/sdk/dotnet/CodePipeline/Inputs/PipelineGitTagFilterCriteriaArgs.cs b/sdk/dotnet/CodePipeline/Inputs/PipelineGitTagFilterCriteriaArgs.cs new file mode 100644 index 0000000000..81a09b4d76 --- /dev/null +++ b/sdk/dotnet/CodePipeline/Inputs/PipelineGitTagFilterCriteriaArgs.cs @@ -0,0 +1,36 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Inputs +{ + + public sealed class PipelineGitTagFilterCriteriaArgs : global::Pulumi.ResourceArgs + { + [Input("excludes")] + private InputList? _excludes; + public InputList Excludes + { + get => _excludes ?? (_excludes = new InputList()); + set => _excludes = value; + } + + [Input("includes")] + private InputList? _includes; + public InputList Includes + { + get => _includes ?? (_includes = new InputList()); + set => _includes = value; + } + + public PipelineGitTagFilterCriteriaArgs() + { + } + public static new PipelineGitTagFilterCriteriaArgs Empty => new PipelineGitTagFilterCriteriaArgs(); + } +} diff --git a/sdk/dotnet/CodePipeline/Inputs/PipelineTriggerDeclarationArgs.cs b/sdk/dotnet/CodePipeline/Inputs/PipelineTriggerDeclarationArgs.cs new file mode 100644 index 0000000000..302be170bb --- /dev/null +++ b/sdk/dotnet/CodePipeline/Inputs/PipelineTriggerDeclarationArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Inputs +{ + + public sealed class PipelineTriggerDeclarationArgs : global::Pulumi.ResourceArgs + { + [Input("gitConfiguration")] + public Input? GitConfiguration { get; set; } + + [Input("providerType", required: true)] + public Input ProviderType { get; set; } = null!; + + public PipelineTriggerDeclarationArgs() + { + } + public static new PipelineTriggerDeclarationArgs Empty => new PipelineTriggerDeclarationArgs(); + } +} diff --git a/sdk/dotnet/CodePipeline/Inputs/PipelineVariableDeclarationArgs.cs b/sdk/dotnet/CodePipeline/Inputs/PipelineVariableDeclarationArgs.cs new file mode 100644 index 0000000000..efcab2a965 --- /dev/null +++ b/sdk/dotnet/CodePipeline/Inputs/PipelineVariableDeclarationArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Inputs +{ + + public sealed class PipelineVariableDeclarationArgs : global::Pulumi.ResourceArgs + { + [Input("defaultValue")] + public Input? DefaultValue { get; set; } + + [Input("description")] + public Input? Description { get; set; } + + [Input("name", required: true)] + public Input Name { get; set; } = null!; + + public PipelineVariableDeclarationArgs() + { + } + public static new PipelineVariableDeclarationArgs Empty => new PipelineVariableDeclarationArgs(); + } +} diff --git a/sdk/dotnet/CodePipeline/Outputs/PipelineGitConfiguration.cs b/sdk/dotnet/CodePipeline/Outputs/PipelineGitConfiguration.cs new file mode 100644 index 0000000000..308095e812 --- /dev/null +++ b/sdk/dotnet/CodePipeline/Outputs/PipelineGitConfiguration.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Outputs +{ + + [OutputType] + public sealed class PipelineGitConfiguration + { + public readonly ImmutableArray Push; + public readonly string SourceActionName; + + [OutputConstructor] + private PipelineGitConfiguration( + ImmutableArray push, + + string sourceActionName) + { + Push = push; + SourceActionName = sourceActionName; + } + } +} diff --git a/sdk/dotnet/CodePipeline/Outputs/PipelineGitPushFilter.cs b/sdk/dotnet/CodePipeline/Outputs/PipelineGitPushFilter.cs new file mode 100644 index 0000000000..142cb89a2c --- /dev/null +++ b/sdk/dotnet/CodePipeline/Outputs/PipelineGitPushFilter.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Outputs +{ + + [OutputType] + public sealed class PipelineGitPushFilter + { + public readonly Outputs.PipelineGitTagFilterCriteria? Tags; + + [OutputConstructor] + private PipelineGitPushFilter(Outputs.PipelineGitTagFilterCriteria? tags) + { + Tags = tags; + } + } +} diff --git a/sdk/dotnet/CodePipeline/Outputs/PipelineGitTagFilterCriteria.cs b/sdk/dotnet/CodePipeline/Outputs/PipelineGitTagFilterCriteria.cs new file mode 100644 index 0000000000..32dd73f576 --- /dev/null +++ b/sdk/dotnet/CodePipeline/Outputs/PipelineGitTagFilterCriteria.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Outputs +{ + + [OutputType] + public sealed class PipelineGitTagFilterCriteria + { + public readonly ImmutableArray Excludes; + public readonly ImmutableArray Includes; + + [OutputConstructor] + private PipelineGitTagFilterCriteria( + ImmutableArray excludes, + + ImmutableArray includes) + { + Excludes = excludes; + Includes = includes; + } + } +} diff --git a/sdk/dotnet/CodePipeline/Outputs/PipelineTriggerDeclaration.cs b/sdk/dotnet/CodePipeline/Outputs/PipelineTriggerDeclaration.cs new file mode 100644 index 0000000000..8edb4cd07f --- /dev/null +++ b/sdk/dotnet/CodePipeline/Outputs/PipelineTriggerDeclaration.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Outputs +{ + + [OutputType] + public sealed class PipelineTriggerDeclaration + { + public readonly Outputs.PipelineGitConfiguration? GitConfiguration; + public readonly string ProviderType; + + [OutputConstructor] + private PipelineTriggerDeclaration( + Outputs.PipelineGitConfiguration? gitConfiguration, + + string providerType) + { + GitConfiguration = gitConfiguration; + ProviderType = providerType; + } + } +} diff --git a/sdk/dotnet/CodePipeline/Outputs/PipelineVariableDeclaration.cs b/sdk/dotnet/CodePipeline/Outputs/PipelineVariableDeclaration.cs new file mode 100644 index 0000000000..d741405832 --- /dev/null +++ b/sdk/dotnet/CodePipeline/Outputs/PipelineVariableDeclaration.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.CodePipeline.Outputs +{ + + [OutputType] + public sealed class PipelineVariableDeclaration + { + public readonly string? DefaultValue; + public readonly string? Description; + public readonly string Name; + + [OutputConstructor] + private PipelineVariableDeclaration( + string? defaultValue, + + string? description, + + string name) + { + DefaultValue = defaultValue; + Description = description; + Name = name; + } + } +} diff --git a/sdk/dotnet/CodePipeline/Pipeline.cs b/sdk/dotnet/CodePipeline/Pipeline.cs index a968657c62..b8544d5f75 100644 --- a/sdk/dotnet/CodePipeline/Pipeline.cs +++ b/sdk/dotnet/CodePipeline/Pipeline.cs @@ -28,6 +28,9 @@ public partial class Pipeline : global::Pulumi.CustomResource [Output("name")] public Output Name { get; private set; } = null!; + [Output("pipelineType")] + public Output PipelineType { get; private set; } = null!; + [Output("restartExecutionOnUpdate")] public Output RestartExecutionOnUpdate { get; private set; } = null!; @@ -40,6 +43,12 @@ public partial class Pipeline : global::Pulumi.CustomResource [Output("tags")] public Output> Tags { get; private set; } = null!; + [Output("triggers")] + public Output> Triggers { get; private set; } = null!; + + [Output("variables")] + public Output> Variables { get; private set; } = null!; + [Output("version")] public Output Version { get; private set; } = null!; @@ -114,6 +123,9 @@ public InputList DisableInboundStageTransiti [Input("name")] public Input? Name { get; set; } + [Input("pipelineType")] + public Input? PipelineType { get; set; } + [Input("restartExecutionOnUpdate")] public Input? RestartExecutionOnUpdate { get; set; } @@ -136,6 +148,22 @@ public InputList Tags set => _tags = value; } + [Input("triggers")] + private InputList? _triggers; + public InputList Triggers + { + get => _triggers ?? (_triggers = new InputList()); + set => _triggers = value; + } + + [Input("variables")] + private InputList? _variables; + public InputList Variables + { + get => _variables ?? (_variables = new InputList()); + set => _variables = value; + } + public PipelineArgs() { } diff --git a/sdk/dotnet/Configuration/ConfigurationRecorder.cs b/sdk/dotnet/Configuration/ConfigurationRecorder.cs index ad2f74d71a..29d3a84e59 100644 --- a/sdk/dotnet/Configuration/ConfigurationRecorder.cs +++ b/sdk/dotnet/Configuration/ConfigurationRecorder.cs @@ -22,6 +22,9 @@ public partial class ConfigurationRecorder : global::Pulumi.CustomResource [Output("recordingGroup")] public Output RecordingGroup { get; private set; } = null!; + [Output("recordingMode")] + public Output RecordingMode { get; private set; } = null!; + [Output("roleArn")] public Output RoleArn { get; private set; } = null!; @@ -80,6 +83,9 @@ public sealed class ConfigurationRecorderArgs : global::Pulumi.ResourceArgs [Input("recordingGroup")] public Input? RecordingGroup { get; set; } + [Input("recordingMode")] + public Input? RecordingMode { get; set; } + [Input("roleArn", required: true)] public Input RoleArn { get; set; } = null!; diff --git a/sdk/dotnet/Configuration/GetConfigurationRecorder.cs b/sdk/dotnet/Configuration/GetConfigurationRecorder.cs index c333313e15..60cb0a8f0f 100644 --- a/sdk/dotnet/Configuration/GetConfigurationRecorder.cs +++ b/sdk/dotnet/Configuration/GetConfigurationRecorder.cs @@ -53,6 +53,7 @@ public sealed class GetConfigurationRecorderResult { public readonly string? Id; public readonly Outputs.ConfigurationRecorderRecordingGroup? RecordingGroup; + public readonly Outputs.ConfigurationRecorderRecordingMode? RecordingMode; public readonly string? RoleArn; [OutputConstructor] @@ -61,10 +62,13 @@ private GetConfigurationRecorderResult( Outputs.ConfigurationRecorderRecordingGroup? recordingGroup, + Outputs.ConfigurationRecorderRecordingMode? recordingMode, + string? roleArn) { Id = id; RecordingGroup = recordingGroup; + RecordingMode = recordingMode; RoleArn = roleArn; } } diff --git a/sdk/dotnet/Configuration/Inputs/ConfigurationRecorderRecordingModeArgs.cs b/sdk/dotnet/Configuration/Inputs/ConfigurationRecorderRecordingModeArgs.cs new file mode 100644 index 0000000000..ff09bc24c4 --- /dev/null +++ b/sdk/dotnet/Configuration/Inputs/ConfigurationRecorderRecordingModeArgs.cs @@ -0,0 +1,31 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Configuration.Inputs +{ + + public sealed class ConfigurationRecorderRecordingModeArgs : global::Pulumi.ResourceArgs + { + [Input("recordingFrequency", required: true)] + public Input RecordingFrequency { get; set; } = null!; + + [Input("recordingModeOverrides")] + private InputList? _recordingModeOverrides; + public InputList RecordingModeOverrides + { + get => _recordingModeOverrides ?? (_recordingModeOverrides = new InputList()); + set => _recordingModeOverrides = value; + } + + public ConfigurationRecorderRecordingModeArgs() + { + } + public static new ConfigurationRecorderRecordingModeArgs Empty => new ConfigurationRecorderRecordingModeArgs(); + } +} diff --git a/sdk/dotnet/Configuration/Inputs/ConfigurationRecorderRecordingModeOverrideArgs.cs b/sdk/dotnet/Configuration/Inputs/ConfigurationRecorderRecordingModeOverrideArgs.cs new file mode 100644 index 0000000000..5bb6b904d5 --- /dev/null +++ b/sdk/dotnet/Configuration/Inputs/ConfigurationRecorderRecordingModeOverrideArgs.cs @@ -0,0 +1,34 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Configuration.Inputs +{ + + public sealed class ConfigurationRecorderRecordingModeOverrideArgs : global::Pulumi.ResourceArgs + { + [Input("description")] + public Input? Description { get; set; } + + [Input("recordingFrequency", required: true)] + public Input RecordingFrequency { get; set; } = null!; + + [Input("resourceTypes", required: true)] + private InputList? _resourceTypes; + public InputList ResourceTypes + { + get => _resourceTypes ?? (_resourceTypes = new InputList()); + set => _resourceTypes = value; + } + + public ConfigurationRecorderRecordingModeOverrideArgs() + { + } + public static new ConfigurationRecorderRecordingModeOverrideArgs Empty => new ConfigurationRecorderRecordingModeOverrideArgs(); + } +} diff --git a/sdk/dotnet/Configuration/Outputs/ConfigurationRecorderRecordingMode.cs b/sdk/dotnet/Configuration/Outputs/ConfigurationRecorderRecordingMode.cs new file mode 100644 index 0000000000..548c43e31d --- /dev/null +++ b/sdk/dotnet/Configuration/Outputs/ConfigurationRecorderRecordingMode.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Configuration.Outputs +{ + + [OutputType] + public sealed class ConfigurationRecorderRecordingMode + { + public readonly string RecordingFrequency; + public readonly ImmutableArray RecordingModeOverrides; + + [OutputConstructor] + private ConfigurationRecorderRecordingMode( + string recordingFrequency, + + ImmutableArray recordingModeOverrides) + { + RecordingFrequency = recordingFrequency; + RecordingModeOverrides = recordingModeOverrides; + } + } +} diff --git a/sdk/dotnet/Configuration/Outputs/ConfigurationRecorderRecordingModeOverride.cs b/sdk/dotnet/Configuration/Outputs/ConfigurationRecorderRecordingModeOverride.cs new file mode 100644 index 0000000000..b65b4f6c32 --- /dev/null +++ b/sdk/dotnet/Configuration/Outputs/ConfigurationRecorderRecordingModeOverride.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Configuration.Outputs +{ + + [OutputType] + public sealed class ConfigurationRecorderRecordingModeOverride + { + public readonly string? Description; + public readonly string RecordingFrequency; + public readonly ImmutableArray ResourceTypes; + + [OutputConstructor] + private ConfigurationRecorderRecordingModeOverride( + string? description, + + string recordingFrequency, + + ImmutableArray resourceTypes) + { + Description = description; + RecordingFrequency = recordingFrequency; + ResourceTypes = resourceTypes; + } + } +} diff --git a/sdk/dotnet/Connect/Enums.cs b/sdk/dotnet/Connect/Enums.cs index e0481bd98d..5c12e6f76c 100644 --- a/sdk/dotnet/Connect/Enums.cs +++ b/sdk/dotnet/Connect/Enums.cs @@ -513,6 +513,7 @@ private IntegrationAssociationIntegrationType(string value) public static IntegrationAssociationIntegrationType LexBot { get; } = new IntegrationAssociationIntegrationType("LEX_BOT"); public static IntegrationAssociationIntegrationType LambdaFunction { get; } = new IntegrationAssociationIntegrationType("LAMBDA_FUNCTION"); + public static IntegrationAssociationIntegrationType Application { get; } = new IntegrationAssociationIntegrationType("APPLICATION"); public static bool operator ==(IntegrationAssociationIntegrationType left, IntegrationAssociationIntegrationType right) => left.Equals(right); public static bool operator !=(IntegrationAssociationIntegrationType left, IntegrationAssociationIntegrationType right) => !left.Equals(right); @@ -830,6 +831,8 @@ private RuleTriggerEventSourceEventSourceName(string value) public static RuleTriggerEventSourceEventSourceName OnZendeskTicketStatusUpdate { get; } = new RuleTriggerEventSourceEventSourceName("OnZendeskTicketStatusUpdate"); public static RuleTriggerEventSourceEventSourceName OnSalesforceCaseCreate { get; } = new RuleTriggerEventSourceEventSourceName("OnSalesforceCaseCreate"); public static RuleTriggerEventSourceEventSourceName OnMetricDataUpdate { get; } = new RuleTriggerEventSourceEventSourceName("OnMetricDataUpdate"); + public static RuleTriggerEventSourceEventSourceName OnCaseCreate { get; } = new RuleTriggerEventSourceEventSourceName("OnCaseCreate"); + public static RuleTriggerEventSourceEventSourceName OnCasesUpdate { get; } = new RuleTriggerEventSourceEventSourceName("OnCasesUpdate"); public static bool operator ==(RuleTriggerEventSourceEventSourceName left, RuleTriggerEventSourceEventSourceName right) => left.Equals(right); public static bool operator !=(RuleTriggerEventSourceEventSourceName left, RuleTriggerEventSourceEventSourceName right) => !left.Equals(right); diff --git a/sdk/dotnet/Connect/GetInstance.cs b/sdk/dotnet/Connect/GetInstance.cs index 4c4a737282..ff183afaee 100644 --- a/sdk/dotnet/Connect/GetInstance.cs +++ b/sdk/dotnet/Connect/GetInstance.cs @@ -81,6 +81,10 @@ public sealed class GetInstanceResult /// Service linked role created as part of instance creation. /// public readonly string? ServiceRole; + /// + /// An array of key-value pairs to apply to this resource. + /// + public readonly ImmutableArray Tags; [OutputConstructor] private GetInstanceResult( @@ -94,7 +98,9 @@ private GetInstanceResult( Pulumi.AwsNative.Connect.InstanceStatus? instanceStatus, - string? serviceRole) + string? serviceRole, + + ImmutableArray tags) { Arn = arn; Attributes = attributes; @@ -102,6 +108,7 @@ private GetInstanceResult( Id = id; InstanceStatus = instanceStatus; ServiceRole = serviceRole; + Tags = tags; } } } diff --git a/sdk/dotnet/Connect/Inputs/InstanceStorageConfigKinesisVideoStreamConfigArgs.cs b/sdk/dotnet/Connect/Inputs/InstanceStorageConfigKinesisVideoStreamConfigArgs.cs index 75cbb144c5..c9c2a97801 100644 --- a/sdk/dotnet/Connect/Inputs/InstanceStorageConfigKinesisVideoStreamConfigArgs.cs +++ b/sdk/dotnet/Connect/Inputs/InstanceStorageConfigKinesisVideoStreamConfigArgs.cs @@ -12,8 +12,8 @@ namespace Pulumi.AwsNative.Connect.Inputs public sealed class InstanceStorageConfigKinesisVideoStreamConfigArgs : global::Pulumi.ResourceArgs { - [Input("encryptionConfig")] - public Input? EncryptionConfig { get; set; } + [Input("encryptionConfig", required: true)] + public Input EncryptionConfig { get; set; } = null!; [Input("prefix", required: true)] public Input Prefix { get; set; } = null!; diff --git a/sdk/dotnet/Connect/Inputs/InstanceTagArgs.cs b/sdk/dotnet/Connect/Inputs/InstanceTagArgs.cs new file mode 100644 index 0000000000..f50d560627 --- /dev/null +++ b/sdk/dotnet/Connect/Inputs/InstanceTagArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Connect.Inputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + public sealed class InstanceTagArgs : 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 InstanceTagArgs() + { + } + public static new InstanceTagArgs Empty => new InstanceTagArgs(); + } +} diff --git a/sdk/dotnet/Connect/Inputs/RuleActionsArgs.cs b/sdk/dotnet/Connect/Inputs/RuleActionsArgs.cs index c237eedfd2..abdfb46b68 100644 --- a/sdk/dotnet/Connect/Inputs/RuleActionsArgs.cs +++ b/sdk/dotnet/Connect/Inputs/RuleActionsArgs.cs @@ -23,6 +23,22 @@ public InputList AssignContactCatego set => _assignContactCategoryActions = value; } + [Input("createCaseActions")] + private InputList? _createCaseActions; + public InputList CreateCaseActions + { + get => _createCaseActions ?? (_createCaseActions = new InputList()); + set => _createCaseActions = value; + } + + [Input("endAssociatedTaskActions")] + private InputList? _endAssociatedTaskActions; + public InputList EndAssociatedTaskActions + { + get => _endAssociatedTaskActions ?? (_endAssociatedTaskActions = new InputList()); + set => _endAssociatedTaskActions = value; + } + [Input("eventBridgeActions")] private InputList? _eventBridgeActions; public InputList EventBridgeActions @@ -47,6 +63,14 @@ public InputList TaskActions set => _taskActions = value; } + [Input("updateCaseActions")] + private InputList? _updateCaseActions; + public InputList UpdateCaseActions + { + get => _updateCaseActions ?? (_updateCaseActions = new InputList()); + set => _updateCaseActions = value; + } + public RuleActionsArgs() { } diff --git a/sdk/dotnet/Connect/Inputs/RuleCreateCaseActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleCreateCaseActionArgs.cs new file mode 100644 index 0000000000..06e13d850c --- /dev/null +++ b/sdk/dotnet/Connect/Inputs/RuleCreateCaseActionArgs.cs @@ -0,0 +1,37 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 definition for create case action. + /// + public sealed class RuleCreateCaseActionArgs : global::Pulumi.ResourceArgs + { + [Input("fields", required: true)] + private InputList? _fields; + public InputList Fields + { + get => _fields ?? (_fields = new InputList()); + set => _fields = value; + } + + /// + /// The Id of template. + /// + [Input("templateId", required: true)] + public Input TemplateId { get; set; } = null!; + + public RuleCreateCaseActionArgs() + { + } + public static new RuleCreateCaseActionArgs Empty => new RuleCreateCaseActionArgs(); + } +} diff --git a/sdk/dotnet/Connect/Inputs/RuleEndAssociatedTasksActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleEndAssociatedTasksActionArgs.cs new file mode 100644 index 0000000000..7859206cd8 --- /dev/null +++ b/sdk/dotnet/Connect/Inputs/RuleEndAssociatedTasksActionArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 definition for ending associated task action. + /// + public sealed class RuleEndAssociatedTasksActionArgs : global::Pulumi.ResourceArgs + { + public RuleEndAssociatedTasksActionArgs() + { + } + public static new RuleEndAssociatedTasksActionArgs Empty => new RuleEndAssociatedTasksActionArgs(); + } +} diff --git a/sdk/dotnet/Connect/Inputs/RuleFieldArgs.cs b/sdk/dotnet/Connect/Inputs/RuleFieldArgs.cs new file mode 100644 index 0000000000..723cdb9ab9 --- /dev/null +++ b/sdk/dotnet/Connect/Inputs/RuleFieldArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 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!; + + [Input("value", required: true)] + public Input Value { get; set; } = null!; + + public RuleFieldArgs() + { + } + public static new RuleFieldArgs Empty => new RuleFieldArgs(); + } +} diff --git a/sdk/dotnet/Connect/Inputs/RuleFieldValueArgs.cs b/sdk/dotnet/Connect/Inputs/RuleFieldValueArgs.cs new file mode 100644 index 0000000000..fe76f32f4e --- /dev/null +++ b/sdk/dotnet/Connect/Inputs/RuleFieldValueArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 value of the field. + /// + public sealed class RuleFieldValueArgs : global::Pulumi.ResourceArgs + { + [Input("booleanValue")] + public Input? BooleanValue { get; set; } + + [Input("doubleValue")] + public Input? DoubleValue { get; set; } + + [Input("emptyValue")] + public Input? EmptyValue { get; set; } + + [Input("stringValue")] + public Input? StringValue { get; set; } + + public RuleFieldValueArgs() + { + } + public static new RuleFieldValueArgs Empty => new RuleFieldValueArgs(); + } +} diff --git a/sdk/dotnet/Connect/Inputs/RuleUpdateCaseActionArgs.cs b/sdk/dotnet/Connect/Inputs/RuleUpdateCaseActionArgs.cs new file mode 100644 index 0000000000..fa844de7a3 --- /dev/null +++ b/sdk/dotnet/Connect/Inputs/RuleUpdateCaseActionArgs.cs @@ -0,0 +1,31 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 definition for update case action. + /// + public sealed class RuleUpdateCaseActionArgs : global::Pulumi.ResourceArgs + { + [Input("fields", required: true)] + private InputList? _fields; + public InputList Fields + { + get => _fields ?? (_fields = new InputList()); + set => _fields = value; + } + + public RuleUpdateCaseActionArgs() + { + } + public static new RuleUpdateCaseActionArgs Empty => new RuleUpdateCaseActionArgs(); + } +} diff --git a/sdk/dotnet/Connect/Instance.cs b/sdk/dotnet/Connect/Instance.cs index 4e60a6d0b1..c000fdd7ed 100644 --- a/sdk/dotnet/Connect/Instance.cs +++ b/sdk/dotnet/Connect/Instance.cs @@ -63,6 +63,12 @@ public partial class Instance : global::Pulumi.CustomResource [Output("serviceRole")] public Output ServiceRole { get; private set; } = null!; + /// + /// An array of key-value pairs to apply to this resource. + /// + [Output("tags")] + public Output> Tags { get; private set; } = null!; + /// /// Create a Instance resource with the given unique name, arguments, and options. @@ -138,6 +144,18 @@ public sealed class InstanceArgs : global::Pulumi.ResourceArgs [Input("instanceAlias")] public Input? InstanceAlias { get; set; } + [Input("tags")] + private InputList? _tags; + + /// + /// An array of key-value pairs to apply to this resource. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + public InstanceArgs() { } diff --git a/sdk/dotnet/Connect/Outputs/InstanceStorageConfigKinesisVideoStreamConfig.cs b/sdk/dotnet/Connect/Outputs/InstanceStorageConfigKinesisVideoStreamConfig.cs index d0d3765576..e122c5d95a 100644 --- a/sdk/dotnet/Connect/Outputs/InstanceStorageConfigKinesisVideoStreamConfig.cs +++ b/sdk/dotnet/Connect/Outputs/InstanceStorageConfigKinesisVideoStreamConfig.cs @@ -13,13 +13,13 @@ namespace Pulumi.AwsNative.Connect.Outputs [OutputType] public sealed class InstanceStorageConfigKinesisVideoStreamConfig { - public readonly Outputs.InstanceStorageConfigEncryptionConfig? EncryptionConfig; + public readonly Outputs.InstanceStorageConfigEncryptionConfig EncryptionConfig; public readonly string Prefix; public readonly double RetentionPeriodHours; [OutputConstructor] private InstanceStorageConfigKinesisVideoStreamConfig( - Outputs.InstanceStorageConfigEncryptionConfig? encryptionConfig, + Outputs.InstanceStorageConfigEncryptionConfig encryptionConfig, string prefix, diff --git a/sdk/dotnet/Connect/Outputs/InstanceTag.cs b/sdk/dotnet/Connect/Outputs/InstanceTag.cs new file mode 100644 index 0000000000..6fc5acf25b --- /dev/null +++ b/sdk/dotnet/Connect/Outputs/InstanceTag.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Connect.Outputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + [OutputType] + public sealed class InstanceTag + { + /// + /// 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 InstanceTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/Connect/Outputs/RuleActions.cs b/sdk/dotnet/Connect/Outputs/RuleActions.cs index ec47a70fae..e78d644125 100644 --- a/sdk/dotnet/Connect/Outputs/RuleActions.cs +++ b/sdk/dotnet/Connect/Outputs/RuleActions.cs @@ -17,24 +17,36 @@ namespace Pulumi.AwsNative.Connect.Outputs public sealed class RuleActions { public readonly ImmutableArray AssignContactCategoryActions; + public readonly ImmutableArray CreateCaseActions; + public readonly ImmutableArray EndAssociatedTaskActions; public readonly ImmutableArray EventBridgeActions; public readonly ImmutableArray SendNotificationActions; public readonly ImmutableArray TaskActions; + public readonly ImmutableArray UpdateCaseActions; [OutputConstructor] private RuleActions( ImmutableArray assignContactCategoryActions, + ImmutableArray createCaseActions, + + ImmutableArray endAssociatedTaskActions, + ImmutableArray eventBridgeActions, ImmutableArray sendNotificationActions, - ImmutableArray taskActions) + ImmutableArray taskActions, + + ImmutableArray updateCaseActions) { AssignContactCategoryActions = assignContactCategoryActions; + CreateCaseActions = createCaseActions; + EndAssociatedTaskActions = endAssociatedTaskActions; EventBridgeActions = eventBridgeActions; SendNotificationActions = sendNotificationActions; TaskActions = taskActions; + UpdateCaseActions = updateCaseActions; } } } diff --git a/sdk/dotnet/Connect/Outputs/RuleCreateCaseAction.cs b/sdk/dotnet/Connect/Outputs/RuleCreateCaseAction.cs new file mode 100644 index 0000000000..c3967b9c45 --- /dev/null +++ b/sdk/dotnet/Connect/Outputs/RuleCreateCaseAction.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 definition for create case action. + /// + [OutputType] + public sealed class RuleCreateCaseAction + { + public readonly ImmutableArray Fields; + /// + /// The Id of template. + /// + public readonly string TemplateId; + + [OutputConstructor] + private RuleCreateCaseAction( + ImmutableArray fields, + + string templateId) + { + Fields = fields; + TemplateId = templateId; + } + } +} diff --git a/sdk/dotnet/Connect/Outputs/RuleEndAssociatedTasksAction.cs b/sdk/dotnet/Connect/Outputs/RuleEndAssociatedTasksAction.cs new file mode 100644 index 0000000000..d90e5d73a2 --- /dev/null +++ b/sdk/dotnet/Connect/Outputs/RuleEndAssociatedTasksAction.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 definition for ending associated task action. + /// + [OutputType] + public sealed class RuleEndAssociatedTasksAction + { + [OutputConstructor] + private RuleEndAssociatedTasksAction() + { + } + } +} diff --git a/sdk/dotnet/Connect/Outputs/RuleField.cs b/sdk/dotnet/Connect/Outputs/RuleField.cs new file mode 100644 index 0000000000..983895633d --- /dev/null +++ b/sdk/dotnet/Connect/Outputs/RuleField.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 field of the case. + /// + [OutputType] + public sealed class RuleField + { + /// + /// The Id of the field + /// + public readonly string Id; + public readonly Outputs.RuleFieldValue Value; + + [OutputConstructor] + private RuleField( + string id, + + Outputs.RuleFieldValue value) + { + Id = id; + Value = value; + } + } +} diff --git a/sdk/dotnet/Connect/Outputs/RuleFieldValue.cs b/sdk/dotnet/Connect/Outputs/RuleFieldValue.cs new file mode 100644 index 0000000000..52e5094aa0 --- /dev/null +++ b/sdk/dotnet/Connect/Outputs/RuleFieldValue.cs @@ -0,0 +1,40 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 value of the field. + /// + [OutputType] + public sealed class RuleFieldValue + { + public readonly bool? BooleanValue; + public readonly double? DoubleValue; + public readonly object? EmptyValue; + public readonly string? StringValue; + + [OutputConstructor] + private RuleFieldValue( + bool? booleanValue, + + double? doubleValue, + + object? emptyValue, + + string? stringValue) + { + BooleanValue = booleanValue; + DoubleValue = doubleValue; + EmptyValue = emptyValue; + StringValue = stringValue; + } + } +} diff --git a/sdk/dotnet/Connect/Outputs/RuleUpdateCaseAction.cs b/sdk/dotnet/Connect/Outputs/RuleUpdateCaseAction.cs new file mode 100644 index 0000000000..6fb83b3fc3 --- /dev/null +++ b/sdk/dotnet/Connect/Outputs/RuleUpdateCaseAction.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 definition for update case action. + /// + [OutputType] + public sealed class RuleUpdateCaseAction + { + public readonly ImmutableArray Fields; + + [OutputConstructor] + private RuleUpdateCaseAction(ImmutableArray fields) + { + Fields = fields; + } + } +} diff --git a/sdk/dotnet/Dms/DataProvider.cs b/sdk/dotnet/Dms/DataProvider.cs new file mode 100644 index 0000000000..1bca2364a0 --- /dev/null +++ b/sdk/dotnet/Dms/DataProvider.cs @@ -0,0 +1,170 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms +{ + /// + /// Resource schema for AWS::DMS::DataProvider + /// + [AwsNativeResourceType("aws-native:dms:DataProvider")] + public partial class DataProvider : global::Pulumi.CustomResource + { + /// + /// The data provider ARN. + /// + [Output("dataProviderArn")] + public Output DataProviderArn { get; private set; } = null!; + + /// + /// The data provider creation time. + /// + [Output("dataProviderCreationTime")] + public Output DataProviderCreationTime { get; private set; } = null!; + + /// + /// The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + /// + [Output("dataProviderIdentifier")] + public Output DataProviderIdentifier { get; private set; } = null!; + + /// + /// The property describes a name to identify the data provider. + /// + [Output("dataProviderName")] + public Output DataProviderName { get; private set; } = null!; + + /// + /// The optional description of the data provider. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// The property describes a data engine for the data provider. + /// + [Output("engine")] + public Output Engine { get; private set; } = null!; + + /// + /// The property describes the exact settings which can be modified + /// + [Output("exactSettings")] + public Output ExactSettings { get; private set; } = null!; + + /// + /// The property identifies the exact type of settings for the data provider. + /// + [Output("settings")] + public Output Settings { get; private set; } = null!; + + /// + /// An array of key-value pairs to apply to this resource. + /// + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + + /// + /// Create a DataProvider 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 DataProvider(string name, DataProviderArgs args, CustomResourceOptions? options = null) + : base("aws-native:dms:DataProvider", name, args ?? new DataProviderArgs(), MakeResourceOptions(options, "")) + { + } + + private DataProvider(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:dms:DataProvider", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing DataProvider 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 DataProvider Get(string name, Input id, CustomResourceOptions? options = null) + { + return new DataProvider(name, id, options); + } + } + + public sealed class DataProviderArgs : global::Pulumi.ResourceArgs + { + /// + /// The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + /// + [Input("dataProviderIdentifier")] + public Input? DataProviderIdentifier { get; set; } + + /// + /// The property describes a name to identify the data provider. + /// + [Input("dataProviderName")] + public Input? DataProviderName { get; set; } + + /// + /// The optional description of the data provider. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The property describes a data engine for the data provider. + /// + [Input("engine", required: true)] + public Input Engine { get; set; } = null!; + + /// + /// The property describes the exact settings which can be modified + /// + [Input("exactSettings")] + public Input? ExactSettings { get; set; } + + /// + /// The property identifies the exact type of settings for the data provider. + /// + [Input("settings")] + public object? Settings { get; set; } + + [Input("tags")] + private InputList? _tags; + + /// + /// An array of key-value pairs to apply to this resource. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public DataProviderArgs() + { + } + public static new DataProviderArgs Empty => new DataProviderArgs(); + } +} diff --git a/sdk/dotnet/Dms/Enums.cs b/sdk/dotnet/Dms/Enums.cs index 4b260e9c06..c660532ada 100644 --- a/sdk/dotnet/Dms/Enums.cs +++ b/sdk/dotnet/Dms/Enums.cs @@ -7,6 +7,103 @@ namespace Pulumi.AwsNative.Dms { + [EnumType] + public readonly struct DataProviderDmsSslModeValue : IEquatable + { + private readonly string _value; + + private DataProviderDmsSslModeValue(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DataProviderDmsSslModeValue None { get; } = new DataProviderDmsSslModeValue("none"); + public static DataProviderDmsSslModeValue Require { get; } = new DataProviderDmsSslModeValue("require"); + public static DataProviderDmsSslModeValue VerifyCa { get; } = new DataProviderDmsSslModeValue("verify_ca"); + public static DataProviderDmsSslModeValue VerifyFull { get; } = new DataProviderDmsSslModeValue("verify_full"); + + public static bool operator ==(DataProviderDmsSslModeValue left, DataProviderDmsSslModeValue right) => left.Equals(right); + public static bool operator !=(DataProviderDmsSslModeValue left, DataProviderDmsSslModeValue right) => !left.Equals(right); + + public static explicit operator string(DataProviderDmsSslModeValue value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DataProviderDmsSslModeValue other && Equals(other); + public bool Equals(DataProviderDmsSslModeValue other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + + /// + /// The property describes a data engine for the data provider. + /// + [EnumType] + public readonly struct DataProviderEngine : IEquatable + { + private readonly string _value; + + private DataProviderEngine(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DataProviderEngine Postgresql { get; } = new DataProviderEngine("postgresql"); + public static DataProviderEngine Mysql { get; } = new DataProviderEngine("mysql"); + public static DataProviderEngine Oracle { get; } = new DataProviderEngine("oracle"); + public static DataProviderEngine Sqlserver { get; } = new DataProviderEngine("sqlserver"); + public static DataProviderEngine Aurora { get; } = new DataProviderEngine("aurora"); + public static DataProviderEngine AuroraPostgresql { get; } = new DataProviderEngine("aurora_postgresql"); + + public static bool operator ==(DataProviderEngine left, DataProviderEngine right) => left.Equals(right); + public static bool operator !=(DataProviderEngine left, DataProviderEngine right) => !left.Equals(right); + + public static explicit operator string(DataProviderEngine value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DataProviderEngine other && Equals(other); + public bool Equals(DataProviderEngine other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + + /// + /// The property describes a network type for the instance profile. + /// + [EnumType] + public readonly struct InstanceProfileNetworkType : IEquatable + { + private readonly string _value; + + private InstanceProfileNetworkType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static InstanceProfileNetworkType Ipv4 { get; } = new InstanceProfileNetworkType("IPV4"); + public static InstanceProfileNetworkType Ipv6 { get; } = new InstanceProfileNetworkType("IPV6"); + public static InstanceProfileNetworkType Dual { get; } = new InstanceProfileNetworkType("DUAL"); + + public static bool operator ==(InstanceProfileNetworkType left, InstanceProfileNetworkType right) => left.Equals(right); + public static bool operator !=(InstanceProfileNetworkType left, InstanceProfileNetworkType right) => !left.Equals(right); + + public static explicit operator string(InstanceProfileNetworkType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is InstanceProfileNetworkType other && Equals(other); + public bool Equals(InstanceProfileNetworkType 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 AWS DMS Serverless replication to provision using this replication configuration /// diff --git a/sdk/dotnet/Dms/GetDataProvider.cs b/sdk/dotnet/Dms/GetDataProvider.cs new file mode 100644 index 0000000000..3a42b8c5e1 --- /dev/null +++ b/sdk/dotnet/Dms/GetDataProvider.cs @@ -0,0 +1,114 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms +{ + public static class GetDataProvider + { + /// + /// Resource schema for AWS::DMS::DataProvider + /// + public static Task InvokeAsync(GetDataProviderArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:dms:getDataProvider", args ?? new GetDataProviderArgs(), options.WithDefaults()); + + /// + /// Resource schema for AWS::DMS::DataProvider + /// + public static Output Invoke(GetDataProviderInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:dms:getDataProvider", args ?? new GetDataProviderInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetDataProviderArgs : global::Pulumi.InvokeArgs + { + /// + /// The data provider ARN. + /// + [Input("dataProviderArn", required: true)] + public string DataProviderArn { get; set; } = null!; + + public GetDataProviderArgs() + { + } + public static new GetDataProviderArgs Empty => new GetDataProviderArgs(); + } + + public sealed class GetDataProviderInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The data provider ARN. + /// + [Input("dataProviderArn", required: true)] + public Input DataProviderArn { get; set; } = null!; + + public GetDataProviderInvokeArgs() + { + } + public static new GetDataProviderInvokeArgs Empty => new GetDataProviderInvokeArgs(); + } + + + [OutputType] + public sealed class GetDataProviderResult + { + /// + /// The data provider ARN. + /// + public readonly string? DataProviderArn; + /// + /// The data provider creation time. + /// + public readonly string? DataProviderCreationTime; + /// + /// The property describes a name to identify the data provider. + /// + public readonly string? DataProviderName; + /// + /// The optional description of the data provider. + /// + public readonly string? Description; + /// + /// The property describes a data engine for the data provider. + /// + public readonly Pulumi.AwsNative.Dms.DataProviderEngine? Engine; + /// + /// The property identifies the exact type of settings for the data provider. + /// + public readonly object? Settings; + /// + /// An array of key-value pairs to apply to this resource. + /// + public readonly ImmutableArray Tags; + + [OutputConstructor] + private GetDataProviderResult( + string? dataProviderArn, + + string? dataProviderCreationTime, + + string? dataProviderName, + + string? description, + + Pulumi.AwsNative.Dms.DataProviderEngine? engine, + + object? settings, + + ImmutableArray tags) + { + DataProviderArn = dataProviderArn; + DataProviderCreationTime = dataProviderCreationTime; + DataProviderName = dataProviderName; + Description = description; + Engine = engine; + Settings = settings; + Tags = tags; + } + } +} diff --git a/sdk/dotnet/Dms/GetInstanceProfile.cs b/sdk/dotnet/Dms/GetInstanceProfile.cs new file mode 100644 index 0000000000..c4281d65f0 --- /dev/null +++ b/sdk/dotnet/Dms/GetInstanceProfile.cs @@ -0,0 +1,142 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms +{ + public static class GetInstanceProfile + { + /// + /// Resource schema for AWS::DMS::InstanceProfile. + /// + public static Task InvokeAsync(GetInstanceProfileArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:dms:getInstanceProfile", args ?? new GetInstanceProfileArgs(), options.WithDefaults()); + + /// + /// Resource schema for AWS::DMS::InstanceProfile. + /// + public static Output Invoke(GetInstanceProfileInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:dms:getInstanceProfile", args ?? new GetInstanceProfileInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetInstanceProfileArgs : global::Pulumi.InvokeArgs + { + /// + /// The property describes an ARN of the instance profile. + /// + [Input("instanceProfileArn", required: true)] + public string InstanceProfileArn { get; set; } = null!; + + public GetInstanceProfileArgs() + { + } + public static new GetInstanceProfileArgs Empty => new GetInstanceProfileArgs(); + } + + public sealed class GetInstanceProfileInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The property describes an ARN of the instance profile. + /// + [Input("instanceProfileArn", required: true)] + public Input InstanceProfileArn { get; set; } = null!; + + public GetInstanceProfileInvokeArgs() + { + } + public static new GetInstanceProfileInvokeArgs Empty => new GetInstanceProfileInvokeArgs(); + } + + + [OutputType] + public sealed class GetInstanceProfileResult + { + /// + /// The property describes an availability zone of the instance profile. + /// + public readonly string? AvailabilityZone; + /// + /// The optional description of the instance profile. + /// + public readonly string? Description; + /// + /// The property describes an ARN of the instance profile. + /// + public readonly string? InstanceProfileArn; + /// + /// The property describes a creating time of the instance profile. + /// + public readonly string? InstanceProfileCreationTime; + /// + /// The property describes a name for the instance profile. + /// + public readonly string? InstanceProfileName; + /// + /// The property describes kms key arn for the instance profile. + /// + public readonly string? KmsKeyArn; + /// + /// The property describes a network type for the instance profile. + /// + public readonly Pulumi.AwsNative.Dms.InstanceProfileNetworkType? NetworkType; + /// + /// The property describes the publicly accessible of the instance profile + /// + public readonly bool? PubliclyAccessible; + /// + /// The property describes a subnet group identifier for the instance profile. + /// + public readonly string? SubnetGroupIdentifier; + /// + /// An array of key-value pairs to apply to this resource. + /// + public readonly ImmutableArray Tags; + /// + /// The property describes vps security groups for the instance profile. + /// + public readonly ImmutableArray VpcSecurityGroups; + + [OutputConstructor] + private GetInstanceProfileResult( + string? availabilityZone, + + string? description, + + string? instanceProfileArn, + + string? instanceProfileCreationTime, + + string? instanceProfileName, + + string? kmsKeyArn, + + Pulumi.AwsNative.Dms.InstanceProfileNetworkType? networkType, + + bool? publiclyAccessible, + + string? subnetGroupIdentifier, + + ImmutableArray tags, + + ImmutableArray vpcSecurityGroups) + { + AvailabilityZone = availabilityZone; + Description = description; + InstanceProfileArn = instanceProfileArn; + InstanceProfileCreationTime = instanceProfileCreationTime; + InstanceProfileName = instanceProfileName; + KmsKeyArn = kmsKeyArn; + NetworkType = networkType; + PubliclyAccessible = publiclyAccessible; + SubnetGroupIdentifier = subnetGroupIdentifier; + Tags = tags; + VpcSecurityGroups = vpcSecurityGroups; + } + } +} diff --git a/sdk/dotnet/Dms/GetMigrationProject.cs b/sdk/dotnet/Dms/GetMigrationProject.cs new file mode 100644 index 0000000000..9e571c76a5 --- /dev/null +++ b/sdk/dotnet/Dms/GetMigrationProject.cs @@ -0,0 +1,142 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms +{ + public static class GetMigrationProject + { + /// + /// Resource schema for AWS::DMS::MigrationProject + /// + public static Task InvokeAsync(GetMigrationProjectArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:dms:getMigrationProject", args ?? new GetMigrationProjectArgs(), options.WithDefaults()); + + /// + /// Resource schema for AWS::DMS::MigrationProject + /// + public static Output Invoke(GetMigrationProjectInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:dms:getMigrationProject", args ?? new GetMigrationProjectInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetMigrationProjectArgs : global::Pulumi.InvokeArgs + { + /// + /// The property describes an ARN of the migration project. + /// + [Input("migrationProjectArn", required: true)] + public string MigrationProjectArn { get; set; } = null!; + + public GetMigrationProjectArgs() + { + } + public static new GetMigrationProjectArgs Empty => new GetMigrationProjectArgs(); + } + + public sealed class GetMigrationProjectInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The property describes an ARN of the migration project. + /// + [Input("migrationProjectArn", required: true)] + public Input MigrationProjectArn { get; set; } = null!; + + public GetMigrationProjectInvokeArgs() + { + } + public static new GetMigrationProjectInvokeArgs Empty => new GetMigrationProjectInvokeArgs(); + } + + + [OutputType] + public sealed class GetMigrationProjectResult + { + /// + /// The optional description of the migration project. + /// + public readonly string? Description; + /// + /// The property describes an instance profile arn for the migration project. For read + /// + public readonly string? InstanceProfileArn; + /// + /// The property describes an instance profile name for the migration project. For read + /// + public readonly string? InstanceProfileName; + /// + /// The property describes an ARN of the migration project. + /// + public readonly string? MigrationProjectArn; + /// + /// The property describes a creating time of the migration project. + /// + public readonly string? MigrationProjectCreationTime; + /// + /// The property describes a name to identify the migration project. + /// + public readonly string? MigrationProjectName; + /// + /// The property describes schema conversion application attributes for the migration project. + /// + public readonly Outputs.SchemaConversionApplicationAttributesProperties? SchemaConversionApplicationAttributes; + /// + /// The property describes source data provider descriptors for the migration project. + /// + public readonly ImmutableArray SourceDataProviderDescriptors; + /// + /// An array of key-value pairs to apply to this resource. + /// + public readonly ImmutableArray Tags; + /// + /// The property describes target data provider descriptors for the migration project. + /// + public readonly ImmutableArray TargetDataProviderDescriptors; + /// + /// The property describes transformation rules for the migration project. + /// + public readonly string? TransformationRules; + + [OutputConstructor] + private GetMigrationProjectResult( + string? description, + + string? instanceProfileArn, + + string? instanceProfileName, + + string? migrationProjectArn, + + string? migrationProjectCreationTime, + + string? migrationProjectName, + + Outputs.SchemaConversionApplicationAttributesProperties? schemaConversionApplicationAttributes, + + ImmutableArray sourceDataProviderDescriptors, + + ImmutableArray tags, + + ImmutableArray targetDataProviderDescriptors, + + string? transformationRules) + { + Description = description; + InstanceProfileArn = instanceProfileArn; + InstanceProfileName = instanceProfileName; + MigrationProjectArn = migrationProjectArn; + MigrationProjectCreationTime = migrationProjectCreationTime; + MigrationProjectName = migrationProjectName; + SchemaConversionApplicationAttributes = schemaConversionApplicationAttributes; + SourceDataProviderDescriptors = sourceDataProviderDescriptors; + Tags = tags; + TargetDataProviderDescriptors = targetDataProviderDescriptors; + TransformationRules = transformationRules; + } + } +} diff --git a/sdk/dotnet/Dms/GetReplicationConfig.cs b/sdk/dotnet/Dms/GetReplicationConfig.cs index d46b1e39b3..e338439a0d 100644 --- a/sdk/dotnet/Dms/GetReplicationConfig.cs +++ b/sdk/dotnet/Dms/GetReplicationConfig.cs @@ -75,10 +75,6 @@ public sealed class GetReplicationConfigResult /// public readonly Pulumi.AwsNative.Dms.ReplicationConfigReplicationType? ReplicationType; /// - /// A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource - /// - public readonly string? ResourceIdentifier; - /// /// The Amazon Resource Name (ARN) of the source endpoint for this AWS DMS Serverless replication configuration /// public readonly string? SourceEndpointArn; @@ -111,8 +107,6 @@ private GetReplicationConfigResult( Pulumi.AwsNative.Dms.ReplicationConfigReplicationType? replicationType, - string? resourceIdentifier, - string? sourceEndpointArn, object? supplementalSettings, @@ -128,7 +122,6 @@ private GetReplicationConfigResult( ReplicationConfigIdentifier = replicationConfigIdentifier; ReplicationSettings = replicationSettings; ReplicationType = replicationType; - ResourceIdentifier = resourceIdentifier; SourceEndpointArn = sourceEndpointArn; SupplementalSettings = supplementalSettings; TableMappings = tableMappings; diff --git a/sdk/dotnet/Dms/Inputs/DataProviderTagArgs.cs b/sdk/dotnet/Dms/Inputs/DataProviderTagArgs.cs new file mode 100644 index 0000000000..2f953bace9 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/DataProviderTagArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + public sealed class DataProviderTagArgs : 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 DataProviderTagArgs() + { + } + public static new DataProviderTagArgs Empty => new DataProviderTagArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/EndpointIbmDb2SettingsArgs.cs b/sdk/dotnet/Dms/Inputs/EndpointIbmDb2SettingsArgs.cs index b29d7b67fa..ce25d5930a 100644 --- a/sdk/dotnet/Dms/Inputs/EndpointIbmDb2SettingsArgs.cs +++ b/sdk/dotnet/Dms/Inputs/EndpointIbmDb2SettingsArgs.cs @@ -15,6 +15,15 @@ public sealed class EndpointIbmDb2SettingsArgs : global::Pulumi.ResourceArgs [Input("currentLsn")] public Input? CurrentLsn { get; set; } + [Input("keepCsvFiles")] + public Input? KeepCsvFiles { get; set; } + + [Input("loadTimeout")] + public Input? LoadTimeout { get; set; } + + [Input("maxFileSize")] + public Input? MaxFileSize { get; set; } + [Input("maxKBytesPerRead")] public Input? MaxKBytesPerRead { get; set; } @@ -27,6 +36,9 @@ public sealed class EndpointIbmDb2SettingsArgs : global::Pulumi.ResourceArgs [Input("setDataCaptureChanges")] public Input? SetDataCaptureChanges { get; set; } + [Input("writeBufferSize")] + public Input? WriteBufferSize { get; set; } + public EndpointIbmDb2SettingsArgs() { } diff --git a/sdk/dotnet/Dms/Inputs/InstanceProfileTagArgs.cs b/sdk/dotnet/Dms/Inputs/InstanceProfileTagArgs.cs new file mode 100644 index 0000000000..f2c6d7edab --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/InstanceProfileTagArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + public sealed class InstanceProfileTagArgs : 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 InstanceProfileTagArgs() + { + } + public static new InstanceProfileTagArgs Empty => new InstanceProfileTagArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/MigrationProjectDataProviderDescriptorArgs.cs b/sdk/dotnet/Dms/Inputs/MigrationProjectDataProviderDescriptorArgs.cs new file mode 100644 index 0000000000..00a2da7990 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/MigrationProjectDataProviderDescriptorArgs.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject + /// + public sealed class MigrationProjectDataProviderDescriptorArgs : global::Pulumi.ResourceArgs + { + [Input("dataProviderArn")] + public Input? DataProviderArn { get; set; } + + [Input("dataProviderIdentifier")] + public Input? DataProviderIdentifier { get; set; } + + [Input("dataProviderName")] + public Input? DataProviderName { get; set; } + + [Input("secretsManagerAccessRoleArn")] + public Input? SecretsManagerAccessRoleArn { get; set; } + + [Input("secretsManagerSecretId")] + public Input? SecretsManagerSecretId { get; set; } + + public MigrationProjectDataProviderDescriptorArgs() + { + } + public static new MigrationProjectDataProviderDescriptorArgs Empty => new MigrationProjectDataProviderDescriptorArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/MigrationProjectTagArgs.cs b/sdk/dotnet/Dms/Inputs/MigrationProjectTagArgs.cs new file mode 100644 index 0000000000..226a3430a2 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/MigrationProjectTagArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + public sealed class MigrationProjectTagArgs : 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 MigrationProjectTagArgs() + { + } + public static new MigrationProjectTagArgs Empty => new MigrationProjectTagArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/SchemaConversionApplicationAttributesPropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/SchemaConversionApplicationAttributesPropertiesArgs.cs new file mode 100644 index 0000000000..f2ea13b2ba --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/SchemaConversionApplicationAttributesPropertiesArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// The property describes schema conversion application attributes for the migration project. + /// + public sealed class SchemaConversionApplicationAttributesPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("s3BucketPath")] + public Input? S3BucketPath { get; set; } + + [Input("s3BucketRoleArn")] + public Input? S3BucketRoleArn { get; set; } + + public SchemaConversionApplicationAttributesPropertiesArgs() + { + } + public static new SchemaConversionApplicationAttributesPropertiesArgs Empty => new SchemaConversionApplicationAttributesPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/Settings0PropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/Settings0PropertiesArgs.cs new file mode 100644 index 0000000000..ef22047b8f --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/Settings0PropertiesArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// PostgreSqlSettings property identifier. + /// + public sealed class Settings0PropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("postgreSqlSettings")] + public Input? PostgreSqlSettings { get; set; } + + public Settings0PropertiesArgs() + { + } + public static new Settings0PropertiesArgs Empty => new Settings0PropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/Settings0PropertiesPostgreSqlSettingsPropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/Settings0PropertiesPostgreSqlSettingsPropertiesArgs.cs new file mode 100644 index 0000000000..387f877935 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/Settings0PropertiesPostgreSqlSettingsPropertiesArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + public sealed class Settings0PropertiesPostgreSqlSettingsPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("certificateArn")] + public Input? CertificateArn { get; set; } + + [Input("databaseName")] + public Input? DatabaseName { get; set; } + + [Input("port")] + public Input? Port { get; set; } + + [Input("serverName")] + public Input? ServerName { get; set; } + + [Input("sslMode")] + public Input? SslMode { get; set; } + + public Settings0PropertiesPostgreSqlSettingsPropertiesArgs() + { + } + public static new Settings0PropertiesPostgreSqlSettingsPropertiesArgs Empty => new Settings0PropertiesPostgreSqlSettingsPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/Settings1PropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/Settings1PropertiesArgs.cs new file mode 100644 index 0000000000..7a90a7e9e0 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/Settings1PropertiesArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// MySqlSettings property identifier. + /// + public sealed class Settings1PropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("mySqlSettings")] + public Input? MySqlSettings { get; set; } + + public Settings1PropertiesArgs() + { + } + public static new Settings1PropertiesArgs Empty => new Settings1PropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/Settings1PropertiesMySqlSettingsPropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/Settings1PropertiesMySqlSettingsPropertiesArgs.cs new file mode 100644 index 0000000000..28bf0b1c6f --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/Settings1PropertiesMySqlSettingsPropertiesArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + public sealed class Settings1PropertiesMySqlSettingsPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("certificateArn")] + public Input? CertificateArn { get; set; } + + [Input("port")] + public Input? Port { get; set; } + + [Input("serverName")] + public Input? ServerName { get; set; } + + [Input("sslMode")] + public Input? SslMode { get; set; } + + public Settings1PropertiesMySqlSettingsPropertiesArgs() + { + } + public static new Settings1PropertiesMySqlSettingsPropertiesArgs Empty => new Settings1PropertiesMySqlSettingsPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/Settings2PropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/Settings2PropertiesArgs.cs new file mode 100644 index 0000000000..89a477fa95 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/Settings2PropertiesArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// OracleSettings property identifier. + /// + public sealed class Settings2PropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("oracleSettings")] + public Input? OracleSettings { get; set; } + + public Settings2PropertiesArgs() + { + } + public static new Settings2PropertiesArgs Empty => new Settings2PropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/Settings2PropertiesOracleSettingsPropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/Settings2PropertiesOracleSettingsPropertiesArgs.cs new file mode 100644 index 0000000000..ae3e18a2d0 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/Settings2PropertiesOracleSettingsPropertiesArgs.cs @@ -0,0 +1,50 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + public sealed class Settings2PropertiesOracleSettingsPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("asmServer")] + public Input? AsmServer { get; set; } + + [Input("certificateArn")] + public Input? CertificateArn { get; set; } + + [Input("databaseName")] + public Input? DatabaseName { get; set; } + + [Input("port")] + public Input? Port { get; set; } + + [Input("secretsManagerOracleAsmAccessRoleArn")] + public Input? SecretsManagerOracleAsmAccessRoleArn { get; set; } + + [Input("secretsManagerOracleAsmSecretId")] + public Input? SecretsManagerOracleAsmSecretId { get; set; } + + [Input("secretsManagerSecurityDbEncryptionAccessRoleArn")] + public Input? SecretsManagerSecurityDbEncryptionAccessRoleArn { get; set; } + + [Input("secretsManagerSecurityDbEncryptionSecretId")] + public Input? SecretsManagerSecurityDbEncryptionSecretId { get; set; } + + [Input("serverName")] + public Input? ServerName { get; set; } + + [Input("sslMode")] + public Input? SslMode { get; set; } + + public Settings2PropertiesOracleSettingsPropertiesArgs() + { + } + public static new Settings2PropertiesOracleSettingsPropertiesArgs Empty => new Settings2PropertiesOracleSettingsPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/Settings3PropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/Settings3PropertiesArgs.cs new file mode 100644 index 0000000000..24dc642727 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/Settings3PropertiesArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + /// + /// MicrosoftSqlServerSettings property identifier. + /// + public sealed class Settings3PropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("microsoftSqlServerSettings")] + public Input? MicrosoftSqlServerSettings { get; set; } + + public Settings3PropertiesArgs() + { + } + public static new Settings3PropertiesArgs Empty => new Settings3PropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/Inputs/Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs.cs b/sdk/dotnet/Dms/Inputs/Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs.cs new file mode 100644 index 0000000000..80d783a096 --- /dev/null +++ b/sdk/dotnet/Dms/Inputs/Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Inputs +{ + + public sealed class Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs : global::Pulumi.ResourceArgs + { + [Input("certificateArn")] + public Input? CertificateArn { get; set; } + + [Input("databaseName")] + public Input? DatabaseName { get; set; } + + [Input("port")] + public Input? Port { get; set; } + + [Input("serverName")] + public Input? ServerName { get; set; } + + [Input("sslMode")] + public Input? SslMode { get; set; } + + public Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs() + { + } + public static new Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs Empty => new Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs(); + } +} diff --git a/sdk/dotnet/Dms/InstanceProfile.cs b/sdk/dotnet/Dms/InstanceProfile.cs new file mode 100644 index 0000000000..4cc55a12c2 --- /dev/null +++ b/sdk/dotnet/Dms/InstanceProfile.cs @@ -0,0 +1,212 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms +{ + /// + /// Resource schema for AWS::DMS::InstanceProfile. + /// + [AwsNativeResourceType("aws-native:dms:InstanceProfile")] + public partial class InstanceProfile : global::Pulumi.CustomResource + { + /// + /// The property describes an availability zone of the instance profile. + /// + [Output("availabilityZone")] + public Output AvailabilityZone { get; private set; } = null!; + + /// + /// The optional description of the instance profile. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// The property describes an ARN of the instance profile. + /// + [Output("instanceProfileArn")] + public Output InstanceProfileArn { get; private set; } = null!; + + /// + /// The property describes a creating time of the instance profile. + /// + [Output("instanceProfileCreationTime")] + public Output InstanceProfileCreationTime { get; private set; } = null!; + + /// + /// The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + /// + [Output("instanceProfileIdentifier")] + public Output InstanceProfileIdentifier { get; private set; } = null!; + + /// + /// The property describes a name for the instance profile. + /// + [Output("instanceProfileName")] + public Output InstanceProfileName { get; private set; } = null!; + + /// + /// The property describes kms key arn for the instance profile. + /// + [Output("kmsKeyArn")] + public Output KmsKeyArn { get; private set; } = null!; + + /// + /// The property describes a network type for the instance profile. + /// + [Output("networkType")] + public Output NetworkType { get; private set; } = null!; + + /// + /// The property describes the publicly accessible of the instance profile + /// + [Output("publiclyAccessible")] + public Output PubliclyAccessible { get; private set; } = null!; + + /// + /// The property describes a subnet group identifier for the instance profile. + /// + [Output("subnetGroupIdentifier")] + public Output SubnetGroupIdentifier { get; private set; } = null!; + + /// + /// An array of key-value pairs to apply to this resource. + /// + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + /// + /// The property describes vps security groups for the instance profile. + /// + [Output("vpcSecurityGroups")] + public Output> VpcSecurityGroups { get; private set; } = null!; + + + /// + /// Create a InstanceProfile 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 InstanceProfile(string name, InstanceProfileArgs? args = null, CustomResourceOptions? options = null) + : base("aws-native:dms:InstanceProfile", name, args ?? new InstanceProfileArgs(), MakeResourceOptions(options, "")) + { + } + + private InstanceProfile(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:dms:InstanceProfile", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing InstanceProfile 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 InstanceProfile Get(string name, Input id, CustomResourceOptions? options = null) + { + return new InstanceProfile(name, id, options); + } + } + + public sealed class InstanceProfileArgs : global::Pulumi.ResourceArgs + { + /// + /// The property describes an availability zone of the instance profile. + /// + [Input("availabilityZone")] + public Input? AvailabilityZone { get; set; } + + /// + /// The optional description of the instance profile. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + /// + [Input("instanceProfileIdentifier")] + public Input? InstanceProfileIdentifier { get; set; } + + /// + /// The property describes a name for the instance profile. + /// + [Input("instanceProfileName")] + public Input? InstanceProfileName { get; set; } + + /// + /// The property describes kms key arn for the instance profile. + /// + [Input("kmsKeyArn")] + public Input? KmsKeyArn { get; set; } + + /// + /// The property describes a network type for the instance profile. + /// + [Input("networkType")] + public Input? NetworkType { get; set; } + + /// + /// The property describes the publicly accessible of the instance profile + /// + [Input("publiclyAccessible")] + public Input? PubliclyAccessible { get; set; } + + /// + /// The property describes a subnet group identifier for the instance profile. + /// + [Input("subnetGroupIdentifier")] + public Input? SubnetGroupIdentifier { get; set; } + + [Input("tags")] + private InputList? _tags; + + /// + /// An array of key-value pairs to apply to this resource. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + [Input("vpcSecurityGroups")] + private InputList? _vpcSecurityGroups; + + /// + /// The property describes vps security groups for the instance profile. + /// + public InputList VpcSecurityGroups + { + get => _vpcSecurityGroups ?? (_vpcSecurityGroups = new InputList()); + set => _vpcSecurityGroups = value; + } + + public InstanceProfileArgs() + { + } + public static new InstanceProfileArgs Empty => new InstanceProfileArgs(); + } +} diff --git a/sdk/dotnet/Dms/MigrationProject.cs b/sdk/dotnet/Dms/MigrationProject.cs new file mode 100644 index 0000000000..136cfc260a --- /dev/null +++ b/sdk/dotnet/Dms/MigrationProject.cs @@ -0,0 +1,236 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms +{ + /// + /// Resource schema for AWS::DMS::MigrationProject + /// + [AwsNativeResourceType("aws-native:dms:MigrationProject")] + public partial class MigrationProject : global::Pulumi.CustomResource + { + /// + /// The optional description of the migration project. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// The property describes an instance profile arn for the migration project. For read + /// + [Output("instanceProfileArn")] + public Output InstanceProfileArn { get; private set; } = null!; + + /// + /// The property describes an instance profile identifier for the migration project. For create + /// + [Output("instanceProfileIdentifier")] + public Output InstanceProfileIdentifier { get; private set; } = null!; + + /// + /// The property describes an instance profile name for the migration project. For read + /// + [Output("instanceProfileName")] + public Output InstanceProfileName { get; private set; } = null!; + + /// + /// The property describes an ARN of the migration project. + /// + [Output("migrationProjectArn")] + public Output MigrationProjectArn { get; private set; } = null!; + + /// + /// The property describes a creating time of the migration project. + /// + [Output("migrationProjectCreationTime")] + public Output MigrationProjectCreationTime { get; private set; } = null!; + + /// + /// The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + /// + [Output("migrationProjectIdentifier")] + public Output MigrationProjectIdentifier { get; private set; } = null!; + + /// + /// The property describes a name to identify the migration project. + /// + [Output("migrationProjectName")] + public Output MigrationProjectName { get; private set; } = null!; + + /// + /// The property describes schema conversion application attributes for the migration project. + /// + [Output("schemaConversionApplicationAttributes")] + public Output SchemaConversionApplicationAttributes { get; private set; } = null!; + + /// + /// The property describes source data provider descriptors for the migration project. + /// + [Output("sourceDataProviderDescriptors")] + public Output> SourceDataProviderDescriptors { get; private set; } = null!; + + /// + /// An array of key-value pairs to apply to this resource. + /// + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + /// + /// The property describes target data provider descriptors for the migration project. + /// + [Output("targetDataProviderDescriptors")] + public Output> TargetDataProviderDescriptors { get; private set; } = null!; + + /// + /// The property describes transformation rules for the migration project. + /// + [Output("transformationRules")] + public Output TransformationRules { get; private set; } = null!; + + + /// + /// Create a MigrationProject 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 MigrationProject(string name, MigrationProjectArgs? args = null, CustomResourceOptions? options = null) + : base("aws-native:dms:MigrationProject", name, args ?? new MigrationProjectArgs(), MakeResourceOptions(options, "")) + { + } + + private MigrationProject(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:dms:MigrationProject", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing MigrationProject 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 MigrationProject Get(string name, Input id, CustomResourceOptions? options = null) + { + return new MigrationProject(name, id, options); + } + } + + public sealed class MigrationProjectArgs : global::Pulumi.ResourceArgs + { + /// + /// The optional description of the migration project. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The property describes an instance profile arn for the migration project. For read + /// + [Input("instanceProfileArn")] + public Input? InstanceProfileArn { get; set; } + + /// + /// The property describes an instance profile identifier for the migration project. For create + /// + [Input("instanceProfileIdentifier")] + public Input? InstanceProfileIdentifier { get; set; } + + /// + /// The property describes an instance profile name for the migration project. For read + /// + [Input("instanceProfileName")] + public Input? InstanceProfileName { get; set; } + + /// + /// The property describes a creating time of the migration project. + /// + [Input("migrationProjectCreationTime")] + public Input? MigrationProjectCreationTime { get; set; } + + /// + /// The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + /// + [Input("migrationProjectIdentifier")] + public Input? MigrationProjectIdentifier { get; set; } + + /// + /// The property describes a name to identify the migration project. + /// + [Input("migrationProjectName")] + public Input? MigrationProjectName { get; set; } + + /// + /// The property describes schema conversion application attributes for the migration project. + /// + [Input("schemaConversionApplicationAttributes")] + public Input? SchemaConversionApplicationAttributes { get; set; } + + [Input("sourceDataProviderDescriptors")] + private InputList? _sourceDataProviderDescriptors; + + /// + /// The property describes source data provider descriptors for the migration project. + /// + public InputList SourceDataProviderDescriptors + { + get => _sourceDataProviderDescriptors ?? (_sourceDataProviderDescriptors = new InputList()); + set => _sourceDataProviderDescriptors = value; + } + + [Input("tags")] + private InputList? _tags; + + /// + /// An array of key-value pairs to apply to this resource. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + [Input("targetDataProviderDescriptors")] + private InputList? _targetDataProviderDescriptors; + + /// + /// The property describes target data provider descriptors for the migration project. + /// + public InputList TargetDataProviderDescriptors + { + get => _targetDataProviderDescriptors ?? (_targetDataProviderDescriptors = new InputList()); + set => _targetDataProviderDescriptors = value; + } + + /// + /// The property describes transformation rules for the migration project. + /// + [Input("transformationRules")] + public Input? TransformationRules { get; set; } + + public MigrationProjectArgs() + { + } + public static new MigrationProjectArgs Empty => new MigrationProjectArgs(); + } +} diff --git a/sdk/dotnet/Dms/Outputs/DataProviderTag.cs b/sdk/dotnet/Dms/Outputs/DataProviderTag.cs new file mode 100644 index 0000000000..4a9efffecf --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/DataProviderTag.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + [OutputType] + public sealed class DataProviderTag + { + /// + /// 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 DataProviderTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/EndpointIbmDb2Settings.cs b/sdk/dotnet/Dms/Outputs/EndpointIbmDb2Settings.cs index db1f06baa5..664471d644 100644 --- a/sdk/dotnet/Dms/Outputs/EndpointIbmDb2Settings.cs +++ b/sdk/dotnet/Dms/Outputs/EndpointIbmDb2Settings.cs @@ -14,28 +14,44 @@ namespace Pulumi.AwsNative.Dms.Outputs public sealed class EndpointIbmDb2Settings { public readonly string? CurrentLsn; + public readonly bool? KeepCsvFiles; + public readonly int? LoadTimeout; + public readonly int? MaxFileSize; public readonly int? MaxKBytesPerRead; public readonly string? SecretsManagerAccessRoleArn; public readonly string? SecretsManagerSecretId; public readonly bool? SetDataCaptureChanges; + public readonly int? WriteBufferSize; [OutputConstructor] private EndpointIbmDb2Settings( string? currentLsn, + bool? keepCsvFiles, + + int? loadTimeout, + + int? maxFileSize, + int? maxKBytesPerRead, string? secretsManagerAccessRoleArn, string? secretsManagerSecretId, - bool? setDataCaptureChanges) + bool? setDataCaptureChanges, + + int? writeBufferSize) { CurrentLsn = currentLsn; + KeepCsvFiles = keepCsvFiles; + LoadTimeout = loadTimeout; + MaxFileSize = maxFileSize; MaxKBytesPerRead = maxKBytesPerRead; SecretsManagerAccessRoleArn = secretsManagerAccessRoleArn; SecretsManagerSecretId = secretsManagerSecretId; SetDataCaptureChanges = setDataCaptureChanges; + WriteBufferSize = writeBufferSize; } } } diff --git a/sdk/dotnet/Dms/Outputs/InstanceProfileTag.cs b/sdk/dotnet/Dms/Outputs/InstanceProfileTag.cs new file mode 100644 index 0000000000..497ee2829c --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/InstanceProfileTag.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + [OutputType] + public sealed class InstanceProfileTag + { + /// + /// 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 InstanceProfileTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/MigrationProjectDataProviderDescriptor.cs b/sdk/dotnet/Dms/Outputs/MigrationProjectDataProviderDescriptor.cs new file mode 100644 index 0000000000..144352a9f2 --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/MigrationProjectDataProviderDescriptor.cs @@ -0,0 +1,44 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject + /// + [OutputType] + public sealed class MigrationProjectDataProviderDescriptor + { + public readonly string? DataProviderArn; + public readonly string? DataProviderIdentifier; + public readonly string? DataProviderName; + public readonly string? SecretsManagerAccessRoleArn; + public readonly string? SecretsManagerSecretId; + + [OutputConstructor] + private MigrationProjectDataProviderDescriptor( + string? dataProviderArn, + + string? dataProviderIdentifier, + + string? dataProviderName, + + string? secretsManagerAccessRoleArn, + + string? secretsManagerSecretId) + { + DataProviderArn = dataProviderArn; + DataProviderIdentifier = dataProviderIdentifier; + DataProviderName = dataProviderName; + SecretsManagerAccessRoleArn = secretsManagerAccessRoleArn; + SecretsManagerSecretId = secretsManagerSecretId; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/MigrationProjectTag.cs b/sdk/dotnet/Dms/Outputs/MigrationProjectTag.cs new file mode 100644 index 0000000000..1d7f5d2bcb --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/MigrationProjectTag.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + [OutputType] + public sealed class MigrationProjectTag + { + /// + /// 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 MigrationProjectTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/SchemaConversionApplicationAttributesProperties.cs b/sdk/dotnet/Dms/Outputs/SchemaConversionApplicationAttributesProperties.cs new file mode 100644 index 0000000000..525b4f7fc2 --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/SchemaConversionApplicationAttributesProperties.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// The property describes schema conversion application attributes for the migration project. + /// + [OutputType] + public sealed class SchemaConversionApplicationAttributesProperties + { + public readonly string? S3BucketPath; + public readonly string? S3BucketRoleArn; + + [OutputConstructor] + private SchemaConversionApplicationAttributesProperties( + string? s3BucketPath, + + string? s3BucketRoleArn) + { + S3BucketPath = s3BucketPath; + S3BucketRoleArn = s3BucketRoleArn; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/Settings0Properties.cs b/sdk/dotnet/Dms/Outputs/Settings0Properties.cs new file mode 100644 index 0000000000..a4df172109 --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/Settings0Properties.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// PostgreSqlSettings property identifier. + /// + [OutputType] + public sealed class Settings0Properties + { + public readonly Outputs.Settings0PropertiesPostgreSqlSettingsProperties? PostgreSqlSettings; + + [OutputConstructor] + private Settings0Properties(Outputs.Settings0PropertiesPostgreSqlSettingsProperties? postgreSqlSettings) + { + PostgreSqlSettings = postgreSqlSettings; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/Settings0PropertiesPostgreSqlSettingsProperties.cs b/sdk/dotnet/Dms/Outputs/Settings0PropertiesPostgreSqlSettingsProperties.cs new file mode 100644 index 0000000000..4f18faef07 --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/Settings0PropertiesPostgreSqlSettingsProperties.cs @@ -0,0 +1,41 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + [OutputType] + public sealed class Settings0PropertiesPostgreSqlSettingsProperties + { + public readonly string? CertificateArn; + public readonly string? DatabaseName; + public readonly int? Port; + public readonly string? ServerName; + public readonly Pulumi.AwsNative.Dms.DataProviderDmsSslModeValue? SslMode; + + [OutputConstructor] + private Settings0PropertiesPostgreSqlSettingsProperties( + string? certificateArn, + + string? databaseName, + + int? port, + + string? serverName, + + Pulumi.AwsNative.Dms.DataProviderDmsSslModeValue? sslMode) + { + CertificateArn = certificateArn; + DatabaseName = databaseName; + Port = port; + ServerName = serverName; + SslMode = sslMode; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/Settings1Properties.cs b/sdk/dotnet/Dms/Outputs/Settings1Properties.cs new file mode 100644 index 0000000000..6d583c2eab --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/Settings1Properties.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// MySqlSettings property identifier. + /// + [OutputType] + public sealed class Settings1Properties + { + public readonly Outputs.Settings1PropertiesMySqlSettingsProperties? MySqlSettings; + + [OutputConstructor] + private Settings1Properties(Outputs.Settings1PropertiesMySqlSettingsProperties? mySqlSettings) + { + MySqlSettings = mySqlSettings; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/Settings1PropertiesMySqlSettingsProperties.cs b/sdk/dotnet/Dms/Outputs/Settings1PropertiesMySqlSettingsProperties.cs new file mode 100644 index 0000000000..cc1d7a2b84 --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/Settings1PropertiesMySqlSettingsProperties.cs @@ -0,0 +1,37 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + [OutputType] + public sealed class Settings1PropertiesMySqlSettingsProperties + { + public readonly string? CertificateArn; + public readonly int? Port; + public readonly string? ServerName; + public readonly Pulumi.AwsNative.Dms.DataProviderDmsSslModeValue? SslMode; + + [OutputConstructor] + private Settings1PropertiesMySqlSettingsProperties( + string? certificateArn, + + int? port, + + string? serverName, + + Pulumi.AwsNative.Dms.DataProviderDmsSslModeValue? sslMode) + { + CertificateArn = certificateArn; + Port = port; + ServerName = serverName; + SslMode = sslMode; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/Settings2Properties.cs b/sdk/dotnet/Dms/Outputs/Settings2Properties.cs new file mode 100644 index 0000000000..8a06a8e035 --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/Settings2Properties.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// OracleSettings property identifier. + /// + [OutputType] + public sealed class Settings2Properties + { + public readonly Outputs.Settings2PropertiesOracleSettingsProperties? OracleSettings; + + [OutputConstructor] + private Settings2Properties(Outputs.Settings2PropertiesOracleSettingsProperties? oracleSettings) + { + OracleSettings = oracleSettings; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/Settings2PropertiesOracleSettingsProperties.cs b/sdk/dotnet/Dms/Outputs/Settings2PropertiesOracleSettingsProperties.cs new file mode 100644 index 0000000000..40f7772ffa --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/Settings2PropertiesOracleSettingsProperties.cs @@ -0,0 +1,61 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + [OutputType] + public sealed class Settings2PropertiesOracleSettingsProperties + { + public readonly string? AsmServer; + public readonly string? CertificateArn; + public readonly string? DatabaseName; + public readonly int? Port; + public readonly string? SecretsManagerOracleAsmAccessRoleArn; + public readonly string? SecretsManagerOracleAsmSecretId; + public readonly string? SecretsManagerSecurityDbEncryptionAccessRoleArn; + public readonly string? SecretsManagerSecurityDbEncryptionSecretId; + public readonly string? ServerName; + public readonly Pulumi.AwsNative.Dms.DataProviderDmsSslModeValue? SslMode; + + [OutputConstructor] + private Settings2PropertiesOracleSettingsProperties( + string? asmServer, + + string? certificateArn, + + string? databaseName, + + int? port, + + string? secretsManagerOracleAsmAccessRoleArn, + + string? secretsManagerOracleAsmSecretId, + + string? secretsManagerSecurityDbEncryptionAccessRoleArn, + + string? secretsManagerSecurityDbEncryptionSecretId, + + string? serverName, + + Pulumi.AwsNative.Dms.DataProviderDmsSslModeValue? sslMode) + { + AsmServer = asmServer; + CertificateArn = certificateArn; + DatabaseName = databaseName; + Port = port; + SecretsManagerOracleAsmAccessRoleArn = secretsManagerOracleAsmAccessRoleArn; + SecretsManagerOracleAsmSecretId = secretsManagerOracleAsmSecretId; + SecretsManagerSecurityDbEncryptionAccessRoleArn = secretsManagerSecurityDbEncryptionAccessRoleArn; + SecretsManagerSecurityDbEncryptionSecretId = secretsManagerSecurityDbEncryptionSecretId; + ServerName = serverName; + SslMode = sslMode; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/Settings3Properties.cs b/sdk/dotnet/Dms/Outputs/Settings3Properties.cs new file mode 100644 index 0000000000..012c6d2143 --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/Settings3Properties.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + /// + /// MicrosoftSqlServerSettings property identifier. + /// + [OutputType] + public sealed class Settings3Properties + { + public readonly Outputs.Settings3PropertiesMicrosoftSqlServerSettingsProperties? MicrosoftSqlServerSettings; + + [OutputConstructor] + private Settings3Properties(Outputs.Settings3PropertiesMicrosoftSqlServerSettingsProperties? microsoftSqlServerSettings) + { + MicrosoftSqlServerSettings = microsoftSqlServerSettings; + } + } +} diff --git a/sdk/dotnet/Dms/Outputs/Settings3PropertiesMicrosoftSqlServerSettingsProperties.cs b/sdk/dotnet/Dms/Outputs/Settings3PropertiesMicrosoftSqlServerSettingsProperties.cs new file mode 100644 index 0000000000..71dce1312e --- /dev/null +++ b/sdk/dotnet/Dms/Outputs/Settings3PropertiesMicrosoftSqlServerSettingsProperties.cs @@ -0,0 +1,41 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Dms.Outputs +{ + + [OutputType] + public sealed class Settings3PropertiesMicrosoftSqlServerSettingsProperties + { + public readonly string? CertificateArn; + public readonly string? DatabaseName; + public readonly int? Port; + public readonly string? ServerName; + public readonly Pulumi.AwsNative.Dms.DataProviderDmsSslModeValue? SslMode; + + [OutputConstructor] + private Settings3PropertiesMicrosoftSqlServerSettingsProperties( + string? certificateArn, + + string? databaseName, + + int? port, + + string? serverName, + + Pulumi.AwsNative.Dms.DataProviderDmsSslModeValue? sslMode) + { + CertificateArn = certificateArn; + DatabaseName = databaseName; + Port = port; + ServerName = serverName; + SslMode = sslMode; + } + } +} diff --git a/sdk/dotnet/Dms/ReplicationConfig.cs b/sdk/dotnet/Dms/ReplicationConfig.cs index bcd334b25e..878c73464b 100644 --- a/sdk/dotnet/Dms/ReplicationConfig.cs +++ b/sdk/dotnet/Dms/ReplicationConfig.cs @@ -101,6 +101,10 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, + ReplaceOnChanges = + { + "resourceIdentifier", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. diff --git a/sdk/dotnet/Ec2/Enums.cs b/sdk/dotnet/Ec2/Enums.cs index b9abb98fb5..1847a5cd11 100644 --- a/sdk/dotnet/Ec2/Enums.cs +++ b/sdk/dotnet/Ec2/Enums.cs @@ -1215,6 +1215,37 @@ private PrefixListAddressFamily(string value) public override string ToString() => _value; } + /// + /// The state of EBS Snapshot Block Public Access. + /// + [EnumType] + public readonly struct SnapshotBlockPublicAccessState : IEquatable + { + private readonly string _value; + + private SnapshotBlockPublicAccessState(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static SnapshotBlockPublicAccessState BlockAllSharing { get; } = new SnapshotBlockPublicAccessState("block-all-sharing"); + public static SnapshotBlockPublicAccessState BlockNewSharing { get; } = new SnapshotBlockPublicAccessState("block-new-sharing"); + + public static bool operator ==(SnapshotBlockPublicAccessState left, SnapshotBlockPublicAccessState right) => left.Equals(right); + public static bool operator !=(SnapshotBlockPublicAccessState left, SnapshotBlockPublicAccessState right) => !left.Equals(right); + + public static explicit operator string(SnapshotBlockPublicAccessState value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is SnapshotBlockPublicAccessState other && Equals(other); + public bool Equals(SnapshotBlockPublicAccessState 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 SpotFleetEbsBlockDeviceVolumeType : IEquatable { diff --git a/sdk/dotnet/Ec2/GetInstance.cs b/sdk/dotnet/Ec2/GetInstance.cs index 6477aa5e2d..4a04bf10d5 100644 --- a/sdk/dotnet/Ec2/GetInstance.cs +++ b/sdk/dotnet/Ec2/GetInstance.cs @@ -27,8 +27,8 @@ public static Output Invoke(GetInstanceInvokeArgs args, Invok public sealed class GetInstanceArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + [Input("instanceId", required: true)] + public string InstanceId { get; set; } = null!; public GetInstanceArgs() { @@ -38,8 +38,8 @@ public GetInstanceArgs() public sealed class GetInstanceInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + [Input("instanceId", required: true)] + public Input InstanceId { get; set; } = null!; public GetInstanceInvokeArgs() { @@ -59,7 +59,7 @@ public sealed class GetInstanceResult public readonly bool? EbsOptimized; public readonly string? HostId; public readonly string? IamInstanceProfile; - public readonly string? Id; + public readonly string? InstanceId; public readonly string? InstanceInitiatedShutdownBehavior; public readonly string? InstanceType; public readonly string? KernelId; @@ -97,7 +97,7 @@ private GetInstanceResult( string? iamInstanceProfile, - string? id, + string? instanceId, string? instanceInitiatedShutdownBehavior, @@ -143,7 +143,7 @@ private GetInstanceResult( EbsOptimized = ebsOptimized; HostId = hostId; IamInstanceProfile = iamInstanceProfile; - Id = id; + InstanceId = instanceId; InstanceInitiatedShutdownBehavior = instanceInitiatedShutdownBehavior; InstanceType = instanceType; KernelId = kernelId; diff --git a/sdk/dotnet/Ec2/GetRoute.cs b/sdk/dotnet/Ec2/GetRoute.cs index 9639781dbb..4836723059 100644 --- a/sdk/dotnet/Ec2/GetRoute.cs +++ b/sdk/dotnet/Ec2/GetRoute.cs @@ -78,6 +78,10 @@ public sealed class GetRouteResult /// public readonly string? CidrBlock; /// + /// The Amazon Resource Name (ARN) of the core network. + /// + public readonly string? CoreNetworkArn; + /// /// The ID of the egress-only internet gateway. /// public readonly string? EgressOnlyInternetGatewayId; @@ -120,6 +124,8 @@ private GetRouteResult( string? cidrBlock, + string? coreNetworkArn, + string? egressOnlyInternetGatewayId, string? gatewayId, @@ -140,6 +146,7 @@ private GetRouteResult( { CarrierGatewayId = carrierGatewayId; CidrBlock = cidrBlock; + CoreNetworkArn = coreNetworkArn; EgressOnlyInternetGatewayId = egressOnlyInternetGatewayId; GatewayId = gatewayId; InstanceId = instanceId; diff --git a/sdk/dotnet/Ec2/GetSecurityGroupEgress.cs b/sdk/dotnet/Ec2/GetSecurityGroupEgress.cs index 867098c3cd..e8e0a6a690 100644 --- a/sdk/dotnet/Ec2/GetSecurityGroupEgress.cs +++ b/sdk/dotnet/Ec2/GetSecurityGroupEgress.cs @@ -27,6 +27,9 @@ public static Output Invoke(GetSecurityGroupEgress public sealed class GetSecurityGroupEgressArgs : global::Pulumi.InvokeArgs { + /// + /// The Security Group Rule Id + /// [Input("id", required: true)] public string Id { get; set; } = null!; @@ -38,6 +41,9 @@ public GetSecurityGroupEgressArgs() public sealed class GetSecurityGroupEgressInvokeArgs : global::Pulumi.InvokeArgs { + /// + /// The Security Group Rule Id + /// [Input("id", required: true)] public Input Id { get; set; } = null!; @@ -51,7 +57,13 @@ public GetSecurityGroupEgressInvokeArgs() [OutputType] public sealed class GetSecurityGroupEgressResult { + /// + /// Resource Type definition for an egress (outbound) security group rule. + /// public readonly string? Description; + /// + /// The Security Group Rule Id + /// public readonly string? Id; [OutputConstructor] diff --git a/sdk/dotnet/Ec2/GetSnapshotBlockPublicAccess.cs b/sdk/dotnet/Ec2/GetSnapshotBlockPublicAccess.cs new file mode 100644 index 0000000000..218f51bdb9 --- /dev/null +++ b/sdk/dotnet/Ec2/GetSnapshotBlockPublicAccess.cs @@ -0,0 +1,79 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Ec2 +{ + public static class GetSnapshotBlockPublicAccess + { + /// + /// Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess + /// + public static Task InvokeAsync(GetSnapshotBlockPublicAccessArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:ec2:getSnapshotBlockPublicAccess", args ?? new GetSnapshotBlockPublicAccessArgs(), options.WithDefaults()); + + /// + /// Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess + /// + public static Output Invoke(GetSnapshotBlockPublicAccessInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:ec2:getSnapshotBlockPublicAccess", args ?? new GetSnapshotBlockPublicAccessInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetSnapshotBlockPublicAccessArgs : global::Pulumi.InvokeArgs + { + /// + /// The identifier for the specified AWS account. + /// + [Input("accountId", required: true)] + public string AccountId { get; set; } = null!; + + public GetSnapshotBlockPublicAccessArgs() + { + } + public static new GetSnapshotBlockPublicAccessArgs Empty => new GetSnapshotBlockPublicAccessArgs(); + } + + public sealed class GetSnapshotBlockPublicAccessInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The identifier for the specified AWS account. + /// + [Input("accountId", required: true)] + public Input AccountId { get; set; } = null!; + + public GetSnapshotBlockPublicAccessInvokeArgs() + { + } + public static new GetSnapshotBlockPublicAccessInvokeArgs Empty => new GetSnapshotBlockPublicAccessInvokeArgs(); + } + + + [OutputType] + public sealed class GetSnapshotBlockPublicAccessResult + { + /// + /// The identifier for the specified AWS account. + /// + public readonly string? AccountId; + /// + /// The state of EBS Snapshot Block Public Access. + /// + public readonly Pulumi.AwsNative.Ec2.SnapshotBlockPublicAccessState? State; + + [OutputConstructor] + private GetSnapshotBlockPublicAccessResult( + string? accountId, + + Pulumi.AwsNative.Ec2.SnapshotBlockPublicAccessState? state) + { + AccountId = accountId; + State = state; + } + } +} diff --git a/sdk/dotnet/Ec2/Inputs/InstanceBlockDeviceMappingArgs.cs b/sdk/dotnet/Ec2/Inputs/InstanceBlockDeviceMappingArgs.cs index f17d4c6f4a..5e412373cd 100644 --- a/sdk/dotnet/Ec2/Inputs/InstanceBlockDeviceMappingArgs.cs +++ b/sdk/dotnet/Ec2/Inputs/InstanceBlockDeviceMappingArgs.cs @@ -19,7 +19,7 @@ public sealed class InstanceBlockDeviceMappingArgs : global::Pulumi.ResourceArgs public Input? Ebs { get; set; } [Input("noDevice")] - public Input? NoDevice { get; set; } + public Input? NoDevice { get; set; } [Input("virtualName")] public Input? VirtualName { get; set; } diff --git a/sdk/dotnet/Ec2/Inputs/VerifiedAccessTrustProviderDeviceOptionsArgs.cs b/sdk/dotnet/Ec2/Inputs/VerifiedAccessTrustProviderDeviceOptionsArgs.cs index a76470e0d7..df99dc9712 100644 --- a/sdk/dotnet/Ec2/Inputs/VerifiedAccessTrustProviderDeviceOptionsArgs.cs +++ b/sdk/dotnet/Ec2/Inputs/VerifiedAccessTrustProviderDeviceOptionsArgs.cs @@ -15,6 +15,12 @@ namespace Pulumi.AwsNative.Ec2.Inputs /// public sealed class VerifiedAccessTrustProviderDeviceOptionsArgs : global::Pulumi.ResourceArgs { + /// + /// URL Verified Access will use to verify authenticity of the device tokens. + /// + [Input("publicSigningKeyUrl")] + public Input? PublicSigningKeyUrl { get; set; } + /// /// The ID of the tenant application with the device-identity provider. /// diff --git a/sdk/dotnet/Ec2/Instance.cs b/sdk/dotnet/Ec2/Instance.cs index d85b41df12..aa99883503 100644 --- a/sdk/dotnet/Ec2/Instance.cs +++ b/sdk/dotnet/Ec2/Instance.cs @@ -64,6 +64,9 @@ public partial class Instance : global::Pulumi.CustomResource [Output("imageId")] public Output ImageId { get; private set; } = null!; + [Output("instanceId")] + public Output InstanceId { get; private set; } = null!; + [Output("instanceInitiatedShutdownBehavior")] public Output InstanceInitiatedShutdownBehavior { get; private set; } = null!; diff --git a/sdk/dotnet/Ec2/Outputs/InstanceBlockDeviceMapping.cs b/sdk/dotnet/Ec2/Outputs/InstanceBlockDeviceMapping.cs index 035fc31fd2..9d71b9274c 100644 --- a/sdk/dotnet/Ec2/Outputs/InstanceBlockDeviceMapping.cs +++ b/sdk/dotnet/Ec2/Outputs/InstanceBlockDeviceMapping.cs @@ -15,7 +15,7 @@ public sealed class InstanceBlockDeviceMapping { public readonly string DeviceName; public readonly Outputs.InstanceEbs? Ebs; - public readonly Outputs.InstanceNoDevice? NoDevice; + public readonly object? NoDevice; public readonly string? VirtualName; [OutputConstructor] @@ -24,7 +24,7 @@ private InstanceBlockDeviceMapping( Outputs.InstanceEbs? ebs, - Outputs.InstanceNoDevice? noDevice, + object? noDevice, string? virtualName) { diff --git a/sdk/dotnet/Ec2/Outputs/VerifiedAccessTrustProviderDeviceOptions.cs b/sdk/dotnet/Ec2/Outputs/VerifiedAccessTrustProviderDeviceOptions.cs index 4177bfa8df..00b1e49007 100644 --- a/sdk/dotnet/Ec2/Outputs/VerifiedAccessTrustProviderDeviceOptions.cs +++ b/sdk/dotnet/Ec2/Outputs/VerifiedAccessTrustProviderDeviceOptions.cs @@ -16,14 +16,22 @@ namespace Pulumi.AwsNative.Ec2.Outputs [OutputType] public sealed class VerifiedAccessTrustProviderDeviceOptions { + /// + /// URL Verified Access will use to verify authenticity of the device tokens. + /// + public readonly string? PublicSigningKeyUrl; /// /// The ID of the tenant application with the device-identity provider. /// public readonly string? TenantId; [OutputConstructor] - private VerifiedAccessTrustProviderDeviceOptions(string? tenantId) + private VerifiedAccessTrustProviderDeviceOptions( + string? publicSigningKeyUrl, + + string? tenantId) { + PublicSigningKeyUrl = publicSigningKeyUrl; TenantId = tenantId; } } diff --git a/sdk/dotnet/Ec2/Route.cs b/sdk/dotnet/Ec2/Route.cs index 3fce8282f1..058d6b06ab 100644 --- a/sdk/dotnet/Ec2/Route.cs +++ b/sdk/dotnet/Ec2/Route.cs @@ -27,6 +27,12 @@ public partial class Route : global::Pulumi.CustomResource [Output("cidrBlock")] public Output CidrBlock { get; private set; } = null!; + /// + /// The Amazon Resource Name (ARN) of the core network. + /// + [Output("coreNetworkArn")] + public Output CoreNetworkArn { get; private set; } = null!; + /// /// The IPv4 CIDR block used for the destination match. /// @@ -163,6 +169,12 @@ public sealed class RouteArgs : global::Pulumi.ResourceArgs [Input("carrierGatewayId")] public Input? CarrierGatewayId { get; set; } + /// + /// The Amazon Resource Name (ARN) of the core network. + /// + [Input("coreNetworkArn")] + public Input? CoreNetworkArn { get; set; } + /// /// The IPv4 CIDR block used for the destination match. /// diff --git a/sdk/dotnet/Ec2/SecurityGroupEgress.cs b/sdk/dotnet/Ec2/SecurityGroupEgress.cs index ccdd31988f..7012276837 100644 --- a/sdk/dotnet/Ec2/SecurityGroupEgress.cs +++ b/sdk/dotnet/Ec2/SecurityGroupEgress.cs @@ -12,34 +12,60 @@ namespace Pulumi.AwsNative.Ec2 /// /// Resource Type definition for AWS::EC2::SecurityGroupEgress /// - [Obsolete(@"SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:ec2:SecurityGroupEgress")] public partial class SecurityGroupEgress : global::Pulumi.CustomResource { + /// + /// The IPv4 ranges + /// [Output("cidrIp")] public Output CidrIp { get; private set; } = null!; + /// + /// [VPC only] The IPv6 ranges + /// [Output("cidrIpv6")] public Output CidrIpv6 { get; private set; } = null!; + /// + /// Resource Type definition for an egress (outbound) security group rule. + /// [Output("description")] public Output Description { get; private set; } = null!; + /// + /// [EC2-VPC only] The ID of a prefix list. + /// [Output("destinationPrefixListId")] public Output DestinationPrefixListId { get; private set; } = null!; + /// + /// You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). + /// [Output("destinationSecurityGroupId")] public Output DestinationSecurityGroupId { get; private set; } = null!; + /// + /// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + /// [Output("fromPort")] public Output FromPort { get; private set; } = null!; + /// + /// The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + /// [Output("groupId")] public Output GroupId { get; private set; } = null!; + /// + /// [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + /// [Output("ipProtocol")] public Output IpProtocol { get; private set; } = null!; + /// + /// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + /// [Output("toPort")] public Output ToPort { get; private set; } = null!; @@ -99,30 +125,57 @@ public static SecurityGroupEgress Get(string name, Input id, CustomResou public sealed class SecurityGroupEgressArgs : global::Pulumi.ResourceArgs { + /// + /// The IPv4 ranges + /// [Input("cidrIp")] public Input? CidrIp { get; set; } + /// + /// [VPC only] The IPv6 ranges + /// [Input("cidrIpv6")] public Input? CidrIpv6 { get; set; } + /// + /// Resource Type definition for an egress (outbound) security group rule. + /// [Input("description")] public Input? Description { get; set; } + /// + /// [EC2-VPC only] The ID of a prefix list. + /// [Input("destinationPrefixListId")] public Input? DestinationPrefixListId { get; set; } + /// + /// You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). + /// [Input("destinationSecurityGroupId")] public Input? DestinationSecurityGroupId { get; set; } + /// + /// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + /// [Input("fromPort")] public Input? FromPort { get; set; } + /// + /// The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + /// [Input("groupId", required: true)] public Input GroupId { get; set; } = null!; + /// + /// [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + /// [Input("ipProtocol", required: true)] public Input IpProtocol { get; set; } = null!; + /// + /// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + /// [Input("toPort")] public Input? ToPort { get; set; } diff --git a/sdk/dotnet/Ec2/SnapshotBlockPublicAccess.cs b/sdk/dotnet/Ec2/SnapshotBlockPublicAccess.cs new file mode 100644 index 0000000000..b6435984ea --- /dev/null +++ b/sdk/dotnet/Ec2/SnapshotBlockPublicAccess.cs @@ -0,0 +1,86 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 +{ + /// + /// Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess + /// + [AwsNativeResourceType("aws-native:ec2:SnapshotBlockPublicAccess")] + public partial class SnapshotBlockPublicAccess : global::Pulumi.CustomResource + { + /// + /// The identifier for the specified AWS account. + /// + [Output("accountId")] + public Output AccountId { get; private set; } = null!; + + /// + /// The state of EBS Snapshot Block Public Access. + /// + [Output("state")] + public Output State { get; private set; } = null!; + + + /// + /// Create a SnapshotBlockPublicAccess 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 SnapshotBlockPublicAccess(string name, SnapshotBlockPublicAccessArgs args, CustomResourceOptions? options = null) + : base("aws-native:ec2:SnapshotBlockPublicAccess", name, args ?? new SnapshotBlockPublicAccessArgs(), MakeResourceOptions(options, "")) + { + } + + private SnapshotBlockPublicAccess(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:ec2:SnapshotBlockPublicAccess", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing SnapshotBlockPublicAccess 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 SnapshotBlockPublicAccess Get(string name, Input id, CustomResourceOptions? options = null) + { + return new SnapshotBlockPublicAccess(name, id, options); + } + } + + public sealed class SnapshotBlockPublicAccessArgs : global::Pulumi.ResourceArgs + { + /// + /// The state of EBS Snapshot Block Public Access. + /// + [Input("state", required: true)] + public Input State { get; set; } = null!; + + public SnapshotBlockPublicAccessArgs() + { + } + public static new SnapshotBlockPublicAccessArgs Empty => new SnapshotBlockPublicAccessArgs(); + } +} diff --git a/sdk/dotnet/Ecs/Enums.cs b/sdk/dotnet/Ecs/Enums.cs index a82f833027..3cdd5f149d 100644 --- a/sdk/dotnet/Ecs/Enums.cs +++ b/sdk/dotnet/Ecs/Enums.cs @@ -7,6 +7,34 @@ namespace Pulumi.AwsNative.Ecs { + [EnumType] + public readonly struct CapacityProviderAutoScalingGroupProviderManagedDraining : IEquatable + { + private readonly string _value; + + private CapacityProviderAutoScalingGroupProviderManagedDraining(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static CapacityProviderAutoScalingGroupProviderManagedDraining Disabled { get; } = new CapacityProviderAutoScalingGroupProviderManagedDraining("DISABLED"); + public static CapacityProviderAutoScalingGroupProviderManagedDraining Enabled { get; } = new CapacityProviderAutoScalingGroupProviderManagedDraining("ENABLED"); + + public static bool operator ==(CapacityProviderAutoScalingGroupProviderManagedDraining left, CapacityProviderAutoScalingGroupProviderManagedDraining right) => left.Equals(right); + public static bool operator !=(CapacityProviderAutoScalingGroupProviderManagedDraining left, CapacityProviderAutoScalingGroupProviderManagedDraining right) => !left.Equals(right); + + public static explicit operator string(CapacityProviderAutoScalingGroupProviderManagedDraining value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is CapacityProviderAutoScalingGroupProviderManagedDraining other && Equals(other); + public bool Equals(CapacityProviderAutoScalingGroupProviderManagedDraining 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 CapacityProviderAutoScalingGroupProviderManagedTerminationProtection : IEquatable { diff --git a/sdk/dotnet/Ecs/Inputs/CapacityProviderAutoScalingGroupProviderArgs.cs b/sdk/dotnet/Ecs/Inputs/CapacityProviderAutoScalingGroupProviderArgs.cs index 4bd8077763..e4de31934c 100644 --- a/sdk/dotnet/Ecs/Inputs/CapacityProviderAutoScalingGroupProviderArgs.cs +++ b/sdk/dotnet/Ecs/Inputs/CapacityProviderAutoScalingGroupProviderArgs.cs @@ -15,6 +15,9 @@ public sealed class CapacityProviderAutoScalingGroupProviderArgs : global::Pulum [Input("autoScalingGroupArn", required: true)] public Input AutoScalingGroupArn { get; set; } = null!; + [Input("managedDraining")] + public Input? ManagedDraining { get; set; } + [Input("managedScaling")] public Input? ManagedScaling { get; set; } diff --git a/sdk/dotnet/Ecs/Outputs/CapacityProviderAutoScalingGroupProvider.cs b/sdk/dotnet/Ecs/Outputs/CapacityProviderAutoScalingGroupProvider.cs index 8c2fdbbf40..2b24474d8a 100644 --- a/sdk/dotnet/Ecs/Outputs/CapacityProviderAutoScalingGroupProvider.cs +++ b/sdk/dotnet/Ecs/Outputs/CapacityProviderAutoScalingGroupProvider.cs @@ -14,6 +14,7 @@ namespace Pulumi.AwsNative.Ecs.Outputs public sealed class CapacityProviderAutoScalingGroupProvider { public readonly string AutoScalingGroupArn; + public readonly Pulumi.AwsNative.Ecs.CapacityProviderAutoScalingGroupProviderManagedDraining? ManagedDraining; public readonly Outputs.CapacityProviderManagedScaling? ManagedScaling; public readonly Pulumi.AwsNative.Ecs.CapacityProviderAutoScalingGroupProviderManagedTerminationProtection? ManagedTerminationProtection; @@ -21,11 +22,14 @@ public sealed class CapacityProviderAutoScalingGroupProvider private CapacityProviderAutoScalingGroupProvider( string autoScalingGroupArn, + Pulumi.AwsNative.Ecs.CapacityProviderAutoScalingGroupProviderManagedDraining? managedDraining, + Outputs.CapacityProviderManagedScaling? managedScaling, Pulumi.AwsNative.Ecs.CapacityProviderAutoScalingGroupProviderManagedTerminationProtection? managedTerminationProtection) { AutoScalingGroupArn = autoScalingGroupArn; + ManagedDraining = managedDraining; ManagedScaling = managedScaling; ManagedTerminationProtection = managedTerminationProtection; } diff --git a/sdk/dotnet/Eks/Cluster.cs b/sdk/dotnet/Eks/Cluster.cs index f550520081..2a138d937e 100644 --- a/sdk/dotnet/Eks/Cluster.cs +++ b/sdk/dotnet/Eks/Cluster.cs @@ -15,6 +15,9 @@ namespace Pulumi.AwsNative.Eks [AwsNativeResourceType("aws-native:eks:Cluster")] public partial class Cluster : global::Pulumi.CustomResource { + [Output("accessConfig")] + public Output AccessConfig { get; private set; } = null!; + /// /// The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod. /// @@ -115,6 +118,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { + "accessConfig.bootstrapClusterCreatorAdminPermissions", "encryptionConfig[*]", "kubernetesNetworkConfig", "name", @@ -143,6 +147,9 @@ public static Cluster Get(string name, Input id, CustomResourceOptions? public sealed class ClusterArgs : global::Pulumi.ResourceArgs { + [Input("accessConfig")] + public Input? AccessConfig { get; set; } + [Input("encryptionConfig")] private InputList? _encryptionConfig; public InputList EncryptionConfig diff --git a/sdk/dotnet/Eks/Enums.cs b/sdk/dotnet/Eks/Enums.cs index 853efdf11d..be79cd8017 100644 --- a/sdk/dotnet/Eks/Enums.cs +++ b/sdk/dotnet/Eks/Enums.cs @@ -39,6 +39,38 @@ private AddonResolveConflicts(string value) public override string ToString() => _value; } + /// + /// Specify the authentication mode that should be used to create your cluster. + /// + [EnumType] + public readonly struct ClusterAccessConfigAuthenticationMode : IEquatable + { + private readonly string _value; + + private ClusterAccessConfigAuthenticationMode(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ClusterAccessConfigAuthenticationMode ConfigMap { get; } = new ClusterAccessConfigAuthenticationMode("CONFIG_MAP"); + public static ClusterAccessConfigAuthenticationMode ApiAndConfigMap { get; } = new ClusterAccessConfigAuthenticationMode("API_AND_CONFIG_MAP"); + public static ClusterAccessConfigAuthenticationMode Api { get; } = new ClusterAccessConfigAuthenticationMode("API"); + + public static bool operator ==(ClusterAccessConfigAuthenticationMode left, ClusterAccessConfigAuthenticationMode right) => left.Equals(right); + public static bool operator !=(ClusterAccessConfigAuthenticationMode left, ClusterAccessConfigAuthenticationMode right) => !left.Equals(right); + + public static explicit operator string(ClusterAccessConfigAuthenticationMode value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ClusterAccessConfigAuthenticationMode other && Equals(other); + public bool Equals(ClusterAccessConfigAuthenticationMode other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// Ipv4 or Ipv6. You can only specify ipv6 for 1.21 and later clusters that use version 1.10.1 or later of the Amazon VPC CNI add-on /// diff --git a/sdk/dotnet/Eks/GetCluster.cs b/sdk/dotnet/Eks/GetCluster.cs index fd3d636544..c3d047d214 100644 --- a/sdk/dotnet/Eks/GetCluster.cs +++ b/sdk/dotnet/Eks/GetCluster.cs @@ -57,6 +57,7 @@ public GetClusterInvokeArgs() [OutputType] public sealed class GetClusterResult { + public readonly Outputs.ClusterAccessConfig? AccessConfig; /// /// The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod. /// @@ -98,6 +99,8 @@ public sealed class GetClusterResult [OutputConstructor] private GetClusterResult( + Outputs.ClusterAccessConfig? accessConfig, + string? arn, string? certificateAuthorityData, @@ -120,6 +123,7 @@ private GetClusterResult( string? version) { + AccessConfig = accessConfig; Arn = arn; CertificateAuthorityData = certificateAuthorityData; ClusterSecurityGroupId = clusterSecurityGroupId; diff --git a/sdk/dotnet/Eks/Inputs/ClusterAccessConfigArgs.cs b/sdk/dotnet/Eks/Inputs/ClusterAccessConfigArgs.cs new file mode 100644 index 0000000000..9879a395c5 --- /dev/null +++ b/sdk/dotnet/Eks/Inputs/ClusterAccessConfigArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Eks.Inputs +{ + + /// + /// An object representing the Access Config to use for the cluster. + /// + public sealed class ClusterAccessConfigArgs : global::Pulumi.ResourceArgs + { + /// + /// Specify the authentication mode that should be used to create your cluster. + /// + [Input("authenticationMode")] + public Input? AuthenticationMode { get; set; } + + /// + /// Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + /// + [Input("bootstrapClusterCreatorAdminPermissions")] + public Input? BootstrapClusterCreatorAdminPermissions { get; set; } + + public ClusterAccessConfigArgs() + { + } + public static new ClusterAccessConfigArgs Empty => new ClusterAccessConfigArgs(); + } +} diff --git a/sdk/dotnet/Eks/Outputs/ClusterAccessConfig.cs b/sdk/dotnet/Eks/Outputs/ClusterAccessConfig.cs new file mode 100644 index 0000000000..284c600472 --- /dev/null +++ b/sdk/dotnet/Eks/Outputs/ClusterAccessConfig.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Eks.Outputs +{ + + /// + /// An object representing the Access Config to use for the cluster. + /// + [OutputType] + public sealed class ClusterAccessConfig + { + /// + /// Specify the authentication mode that should be used to create your cluster. + /// + public readonly Pulumi.AwsNative.Eks.ClusterAccessConfigAuthenticationMode? AuthenticationMode; + /// + /// Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + /// + public readonly bool? BootstrapClusterCreatorAdminPermissions; + + [OutputConstructor] + private ClusterAccessConfig( + Pulumi.AwsNative.Eks.ClusterAccessConfigAuthenticationMode? authenticationMode, + + bool? bootstrapClusterCreatorAdminPermissions) + { + AuthenticationMode = authenticationMode; + BootstrapClusterCreatorAdminPermissions = bootstrapClusterCreatorAdminPermissions; + } + } +} diff --git a/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheEndpointArgs.cs b/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheEndpointArgs.cs new file mode 100644 index 0000000000..c189c371c6 --- /dev/null +++ b/sdk/dotnet/ElastiCache/Inputs/ServerlessCacheEndpointArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ElastiCache.Inputs +{ + + /// + /// The address and the port. + /// + public sealed class ServerlessCacheEndpointArgs : global::Pulumi.ResourceArgs + { + /// + /// Endpoint address. + /// + [Input("address")] + public Input? Address { get; set; } + + /// + /// Endpoint port. + /// + [Input("port")] + public Input? Port { get; set; } + + public ServerlessCacheEndpointArgs() + { + } + public static new ServerlessCacheEndpointArgs Empty => new ServerlessCacheEndpointArgs(); + } +} diff --git a/sdk/dotnet/ElastiCache/ServerlessCache.cs b/sdk/dotnet/ElastiCache/ServerlessCache.cs index 56cc9f4145..1d38168fe9 100644 --- a/sdk/dotnet/ElastiCache/ServerlessCache.cs +++ b/sdk/dotnet/ElastiCache/ServerlessCache.cs @@ -43,7 +43,7 @@ public partial class ServerlessCache : global::Pulumi.CustomResource public Output Description { get; private set; } = null!; [Output("endpoint")] - public Output Endpoint { get; private set; } = null!; + public Output Endpoint { get; private set; } = null!; /// /// The engine name of the Serverless Cache. @@ -76,7 +76,7 @@ public partial class ServerlessCache : global::Pulumi.CustomResource public Output MajorEngineVersion { get; private set; } = null!; [Output("readerEndpoint")] - public Output ReaderEndpoint { get; private set; } = null!; + public Output ReaderEndpoint { get; private set; } = null!; /// /// One or more Amazon VPC security groups associated with this Serverless Cache. @@ -195,6 +195,9 @@ public sealed class ServerlessCacheArgs : global::Pulumi.ResourceArgs [Input("description")] public Input? Description { get; set; } + [Input("endpoint")] + public Input? Endpoint { get; set; } + /// /// The engine name of the Serverless Cache. /// @@ -219,6 +222,9 @@ public sealed class ServerlessCacheArgs : global::Pulumi.ResourceArgs [Input("majorEngineVersion")] public Input? MajorEngineVersion { get; set; } + [Input("readerEndpoint")] + public Input? ReaderEndpoint { get; set; } + [Input("securityGroupIds")] private InputList? _securityGroupIds; diff --git a/sdk/dotnet/Emr/Cluster.cs b/sdk/dotnet/Emr/Cluster.cs index 4677f135a1..03f8faae61 100644 --- a/sdk/dotnet/Emr/Cluster.cs +++ b/sdk/dotnet/Emr/Cluster.cs @@ -37,9 +37,15 @@ public partial class Cluster : global::Pulumi.CustomResource [Output("customAmiId")] public Output CustomAmiId { get; private set; } = null!; + [Output("ebsRootVolumeIops")] + public Output EbsRootVolumeIops { get; private set; } = null!; + [Output("ebsRootVolumeSize")] public Output EbsRootVolumeSize { get; private set; } = null!; + [Output("ebsRootVolumeThroughput")] + public Output EbsRootVolumeThroughput { get; private set; } = null!; + [Output("instances")] public Output Instances { get; private set; } = null!; @@ -67,6 +73,9 @@ public partial class Cluster : global::Pulumi.CustomResource [Output("osReleaseLabel")] public Output OsReleaseLabel { get; private set; } = null!; + [Output("placementGroupConfigs")] + public Output> PlacementGroupConfigs { get; private set; } = null!; + [Output("releaseLabel")] public Output ReleaseLabel { get; private set; } = null!; @@ -122,13 +131,16 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? "bootstrapActions[*]", "configurations[*]", "customAmiId", + "ebsRootVolumeIops", "ebsRootVolumeSize", + "ebsRootVolumeThroughput", "jobFlowRole", "kerberosAttributes", "logEncryptionKmsKeyId", "logUri", "name", "osReleaseLabel", + "placementGroupConfigs[*]", "releaseLabel", "scaleDownBehavior", "securityConfiguration", @@ -193,9 +205,15 @@ public InputList Configurations [Input("customAmiId")] public Input? CustomAmiId { get; set; } + [Input("ebsRootVolumeIops")] + public Input? EbsRootVolumeIops { get; set; } + [Input("ebsRootVolumeSize")] public Input? EbsRootVolumeSize { get; set; } + [Input("ebsRootVolumeThroughput")] + public Input? EbsRootVolumeThroughput { get; set; } + [Input("instances", required: true)] public Input Instances { get; set; } = null!; @@ -220,6 +238,14 @@ public InputList Configurations [Input("osReleaseLabel")] public Input? OsReleaseLabel { get; set; } + [Input("placementGroupConfigs")] + private InputList? _placementGroupConfigs; + public InputList PlacementGroupConfigs + { + get => _placementGroupConfigs ?? (_placementGroupConfigs = new InputList()); + set => _placementGroupConfigs = value; + } + [Input("releaseLabel")] public Input? ReleaseLabel { get; set; } diff --git a/sdk/dotnet/Emr/Enums.cs b/sdk/dotnet/Emr/Enums.cs index ec4071ceb5..b57f90043c 100644 --- a/sdk/dotnet/Emr/Enums.cs +++ b/sdk/dotnet/Emr/Enums.cs @@ -38,6 +38,37 @@ private StudioAuthMode(string value) public override string ToString() => _value; } + /// + /// Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + /// + [EnumType] + public readonly struct StudioIdcUserAssignment : IEquatable + { + private readonly string _value; + + private StudioIdcUserAssignment(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static StudioIdcUserAssignment Required { get; } = new StudioIdcUserAssignment("REQUIRED"); + public static StudioIdcUserAssignment Optional { get; } = new StudioIdcUserAssignment("OPTIONAL"); + + public static bool operator ==(StudioIdcUserAssignment left, StudioIdcUserAssignment right) => left.Equals(right); + public static bool operator !=(StudioIdcUserAssignment left, StudioIdcUserAssignment right) => !left.Equals(right); + + public static explicit operator string(StudioIdcUserAssignment value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is StudioIdcUserAssignment other && Equals(other); + public bool Equals(StudioIdcUserAssignment other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// Specifies whether the identity to map to the Studio is a user or a group. /// diff --git a/sdk/dotnet/Emr/Inputs/ClusterPlacementGroupConfigArgs.cs b/sdk/dotnet/Emr/Inputs/ClusterPlacementGroupConfigArgs.cs new file mode 100644 index 0000000000..0d93fb7355 --- /dev/null +++ b/sdk/dotnet/Emr/Inputs/ClusterPlacementGroupConfigArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Emr.Inputs +{ + + public sealed class ClusterPlacementGroupConfigArgs : global::Pulumi.ResourceArgs + { + [Input("instanceRole", required: true)] + public Input InstanceRole { get; set; } = null!; + + [Input("placementStrategy")] + public Input? PlacementStrategy { get; set; } + + public ClusterPlacementGroupConfigArgs() + { + } + public static new ClusterPlacementGroupConfigArgs Empty => new ClusterPlacementGroupConfigArgs(); + } +} diff --git a/sdk/dotnet/Emr/Outputs/ClusterPlacementGroupConfig.cs b/sdk/dotnet/Emr/Outputs/ClusterPlacementGroupConfig.cs new file mode 100644 index 0000000000..ab931b23b7 --- /dev/null +++ b/sdk/dotnet/Emr/Outputs/ClusterPlacementGroupConfig.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Emr.Outputs +{ + + [OutputType] + public sealed class ClusterPlacementGroupConfig + { + public readonly string InstanceRole; + public readonly string? PlacementStrategy; + + [OutputConstructor] + private ClusterPlacementGroupConfig( + string instanceRole, + + string? placementStrategy) + { + InstanceRole = instanceRole; + PlacementStrategy = placementStrategy; + } + } +} diff --git a/sdk/dotnet/Emr/Studio.cs b/sdk/dotnet/Emr/Studio.cs index 0b3bb48e4b..94451a0623 100644 --- a/sdk/dotnet/Emr/Studio.cs +++ b/sdk/dotnet/Emr/Studio.cs @@ -39,12 +39,30 @@ public partial class Studio : global::Pulumi.CustomResource [Output("description")] public Output Description { get; private set; } = null!; + /// + /// The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + /// + [Output("encryptionKeyArn")] + public Output EncryptionKeyArn { get; private set; } = null!; + /// /// The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. /// [Output("engineSecurityGroupId")] public Output EngineSecurityGroupId { get; private set; } = null!; + /// + /// The ARN of the IAM Identity Center instance to create the Studio application. + /// + [Output("idcInstanceArn")] + public Output IdcInstanceArn { get; private set; } = null!; + + /// + /// Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + /// + [Output("idcUserAssignment")] + public Output IdcUserAssignment { get; private set; } = null!; + /// /// Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. /// @@ -87,6 +105,12 @@ public partial class Studio : global::Pulumi.CustomResource [Output("tags")] public Output> Tags { get; private set; } = null!; + /// + /// A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + /// + [Output("trustedIdentityPropagationEnabled")] + public Output TrustedIdentityPropagationEnabled { get; private set; } = null!; + /// /// The unique Studio access URL. /// @@ -137,8 +161,12 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? ReplaceOnChanges = { "authMode", + "encryptionKeyArn", "engineSecurityGroupId", + "idcInstanceArn", + "idcUserAssignment", "serviceRole", + "trustedIdentityPropagationEnabled", "userRole", "vpcId", "workspaceSecurityGroupId", @@ -183,12 +211,30 @@ public sealed class StudioArgs : global::Pulumi.ResourceArgs [Input("description")] public Input? Description { get; set; } + /// + /// The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + /// + [Input("encryptionKeyArn")] + public Input? EncryptionKeyArn { get; set; } + /// /// The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. /// [Input("engineSecurityGroupId", required: true)] public Input EngineSecurityGroupId { get; set; } = null!; + /// + /// The ARN of the IAM Identity Center instance to create the Studio application. + /// + [Input("idcInstanceArn")] + public Input? IdcInstanceArn { get; set; } + + /// + /// Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + /// + [Input("idcUserAssignment")] + public Input? IdcUserAssignment { get; set; } + /// /// Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. /// @@ -237,6 +283,12 @@ public InputList Tags set => _tags = value; } + /// + /// A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + /// + [Input("trustedIdentityPropagationEnabled")] + public Input? TrustedIdentityPropagationEnabled { get; set; } + /// /// The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies. /// diff --git a/sdk/dotnet/EventSchemas/Discoverer.cs b/sdk/dotnet/EventSchemas/Discoverer.cs index efb81c2e34..e0fabb4a4f 100644 --- a/sdk/dotnet/EventSchemas/Discoverer.cs +++ b/sdk/dotnet/EventSchemas/Discoverer.cs @@ -12,25 +12,48 @@ namespace Pulumi.AwsNative.EventSchemas /// /// Resource Type definition for AWS::EventSchemas::Discoverer /// - [Obsolete(@"Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:eventschemas:Discoverer")] public partial class Discoverer : global::Pulumi.CustomResource { + /// + /// Defines whether event schemas from other accounts are discovered. Default is True. + /// [Output("crossAccount")] public Output CrossAccount { get; private set; } = null!; + /// + /// A description for the discoverer. + /// [Output("description")] public Output Description { get; private set; } = null!; + /// + /// The ARN of the discoverer. + /// [Output("discovererArn")] public Output DiscovererArn { get; private set; } = null!; + /// + /// The Id of the discoverer. + /// [Output("discovererId")] public Output DiscovererId { get; private set; } = null!; + /// + /// The ARN of the event bus. + /// [Output("sourceArn")] public Output SourceArn { get; private set; } = null!; + /// + /// Defines the current state of the discoverer. + /// + [Output("state")] + public Output State { get; private set; } = null!; + + /// + /// Tags associated with the resource. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -83,17 +106,30 @@ public static Discoverer Get(string name, Input id, CustomResourceOption public sealed class DiscovererArgs : global::Pulumi.ResourceArgs { + /// + /// Defines whether event schemas from other accounts are discovered. Default is True. + /// [Input("crossAccount")] public Input? CrossAccount { get; set; } + /// + /// A description for the discoverer. + /// [Input("description")] public Input? Description { get; set; } + /// + /// The ARN of the event bus. + /// [Input("sourceArn", required: true)] public Input SourceArn { get; set; } = null!; [Input("tags")] private InputList? _tags; + + /// + /// Tags associated with the resource. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/EventSchemas/GetDiscoverer.cs b/sdk/dotnet/EventSchemas/GetDiscoverer.cs index 526ceae93a..35627a307f 100644 --- a/sdk/dotnet/EventSchemas/GetDiscoverer.cs +++ b/sdk/dotnet/EventSchemas/GetDiscoverer.cs @@ -27,8 +27,11 @@ public static Output Invoke(GetDiscovererInvokeArgs args, I public sealed class GetDiscovererArgs : global::Pulumi.InvokeArgs { - [Input("discovererId", required: true)] - public string DiscovererId { get; set; } = null!; + /// + /// The ARN of the discoverer. + /// + [Input("discovererArn", required: true)] + public string DiscovererArn { get; set; } = null!; public GetDiscovererArgs() { @@ -38,8 +41,11 @@ public GetDiscovererArgs() public sealed class GetDiscovererInvokeArgs : global::Pulumi.InvokeArgs { - [Input("discovererId", required: true)] - public Input DiscovererId { get; set; } = null!; + /// + /// The ARN of the discoverer. + /// + [Input("discovererArn", required: true)] + public Input DiscovererArn { get; set; } = null!; public GetDiscovererInvokeArgs() { @@ -51,10 +57,29 @@ public GetDiscovererInvokeArgs() [OutputType] public sealed class GetDiscovererResult { + /// + /// Defines whether event schemas from other accounts are discovered. Default is True. + /// public readonly bool? CrossAccount; + /// + /// A description for the discoverer. + /// public readonly string? Description; + /// + /// The ARN of the discoverer. + /// public readonly string? DiscovererArn; + /// + /// The Id of the discoverer. + /// public readonly string? DiscovererId; + /// + /// Defines the current state of the discoverer. + /// + public readonly string? State; + /// + /// Tags associated with the resource. + /// public readonly ImmutableArray Tags; [OutputConstructor] @@ -67,12 +92,15 @@ private GetDiscovererResult( string? discovererId, + string? state, + ImmutableArray tags) { CrossAccount = crossAccount; Description = description; DiscovererArn = discovererArn; DiscovererId = discovererId; + State = state; Tags = tags; } } diff --git a/sdk/dotnet/EventSchemas/GetRegistry.cs b/sdk/dotnet/EventSchemas/GetRegistry.cs index 784c8786bf..648edeaaff 100644 --- a/sdk/dotnet/EventSchemas/GetRegistry.cs +++ b/sdk/dotnet/EventSchemas/GetRegistry.cs @@ -27,8 +27,11 @@ public static Output Invoke(GetRegistryInvokeArgs args, Invok public sealed class GetRegistryArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + /// + /// The ARN of the registry. + /// + [Input("registryArn", required: true)] + public string RegistryArn { get; set; } = null!; public GetRegistryArgs() { @@ -38,8 +41,11 @@ public GetRegistryArgs() public sealed class GetRegistryInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + /// + /// The ARN of the registry. + /// + [Input("registryArn", required: true)] + public Input RegistryArn { get; set; } = null!; public GetRegistryInvokeArgs() { @@ -51,23 +57,28 @@ public GetRegistryInvokeArgs() [OutputType] public sealed class GetRegistryResult { + /// + /// A description of the registry to be created. + /// public readonly string? Description; - public readonly string? Id; + /// + /// The ARN of the registry. + /// public readonly string? RegistryArn; + /// + /// Tags associated with the resource. + /// public readonly ImmutableArray Tags; [OutputConstructor] private GetRegistryResult( string? description, - string? id, - string? registryArn, ImmutableArray tags) { Description = description; - Id = id; RegistryArn = registryArn; Tags = tags; } diff --git a/sdk/dotnet/EventSchemas/GetSchema.cs b/sdk/dotnet/EventSchemas/GetSchema.cs index 58696baa1e..2b0044096b 100644 --- a/sdk/dotnet/EventSchemas/GetSchema.cs +++ b/sdk/dotnet/EventSchemas/GetSchema.cs @@ -27,8 +27,11 @@ public static Output Invoke(GetSchemaInvokeArgs args, InvokeOpt public sealed class GetSchemaArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + /// + /// The ARN of the schema. + /// + [Input("schemaArn", required: true)] + public string SchemaArn { get; set; } = null!; public GetSchemaArgs() { @@ -38,8 +41,11 @@ public GetSchemaArgs() public sealed class GetSchemaInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + /// + /// The ARN of the schema. + /// + [Input("schemaArn", required: true)] + public Input SchemaArn { get; set; } = null!; public GetSchemaInvokeArgs() { @@ -51,13 +57,38 @@ public GetSchemaInvokeArgs() [OutputType] public sealed class GetSchemaResult { + /// + /// The source of the schema definition. + /// public readonly string? Content; + /// + /// A description of the schema. + /// public readonly string? Description; - public readonly string? Id; + /// + /// The last modified time of the schema. + /// + public readonly string? LastModified; + /// + /// The ARN of the schema. + /// public readonly string? SchemaArn; + /// + /// The version number of the schema. + /// public readonly string? SchemaVersion; + /// + /// Tags associated with the resource. + /// public readonly ImmutableArray Tags; + /// + /// The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + /// public readonly string? Type; + /// + /// The date the schema version was created. + /// + public readonly string? VersionCreatedDate; [OutputConstructor] private GetSchemaResult( @@ -65,7 +96,7 @@ private GetSchemaResult( string? description, - string? id, + string? lastModified, string? schemaArn, @@ -73,15 +104,18 @@ private GetSchemaResult( ImmutableArray tags, - string? type) + string? type, + + string? versionCreatedDate) { Content = content; Description = description; - Id = id; + LastModified = lastModified; SchemaArn = schemaArn; SchemaVersion = schemaVersion; Tags = tags; Type = type; + VersionCreatedDate = versionCreatedDate; } } } diff --git a/sdk/dotnet/EventSchemas/Registry.cs b/sdk/dotnet/EventSchemas/Registry.cs index f8307225f7..e046171605 100644 --- a/sdk/dotnet/EventSchemas/Registry.cs +++ b/sdk/dotnet/EventSchemas/Registry.cs @@ -12,19 +12,30 @@ namespace Pulumi.AwsNative.EventSchemas /// /// Resource Type definition for AWS::EventSchemas::Registry /// - [Obsolete(@"Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:eventschemas:Registry")] public partial class Registry : global::Pulumi.CustomResource { + /// + /// A description of the registry to be created. + /// [Output("description")] public Output Description { get; private set; } = null!; + /// + /// The ARN of the registry. + /// [Output("registryArn")] public Output RegistryArn { get; private set; } = null!; + /// + /// The name of the schema registry. + /// [Output("registryName")] public Output RegistryName { get; private set; } = null!; + /// + /// Tags associated with the resource. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -77,14 +88,24 @@ public static Registry Get(string name, Input id, CustomResourceOptions? public sealed class RegistryArgs : global::Pulumi.ResourceArgs { + /// + /// A description of the registry to be created. + /// [Input("description")] public Input? Description { get; set; } + /// + /// The name of the schema registry. + /// [Input("registryName")] public Input? RegistryName { get; set; } [Input("tags")] private InputList? _tags; + + /// + /// Tags associated with the resource. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/EventSchemas/Schema.cs b/sdk/dotnet/EventSchemas/Schema.cs index 9f1fa3ce36..689c7738b8 100644 --- a/sdk/dotnet/EventSchemas/Schema.cs +++ b/sdk/dotnet/EventSchemas/Schema.cs @@ -12,34 +12,69 @@ namespace Pulumi.AwsNative.EventSchemas /// /// Resource Type definition for AWS::EventSchemas::Schema /// - [Obsolete(@"Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:eventschemas:Schema")] public partial class Schema : global::Pulumi.CustomResource { + /// + /// The source of the schema definition. + /// [Output("content")] public Output Content { get; private set; } = null!; + /// + /// A description of the schema. + /// [Output("description")] public Output Description { get; private set; } = null!; + /// + /// The last modified time of the schema. + /// + [Output("lastModified")] + public Output LastModified { get; private set; } = null!; + + /// + /// The name of the schema registry. + /// [Output("registryName")] public Output RegistryName { get; private set; } = null!; + /// + /// The ARN of the schema. + /// [Output("schemaArn")] public Output SchemaArn { get; private set; } = null!; + /// + /// The name of the schema. + /// [Output("schemaName")] public Output SchemaName { get; private set; } = null!; + /// + /// The version number of the schema. + /// [Output("schemaVersion")] public Output SchemaVersion { get; private set; } = null!; + /// + /// Tags associated with the resource. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; + /// + /// The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + /// [Output("type")] public Output Type { get; private set; } = null!; + /// + /// The date the schema version was created. + /// + [Output("versionCreatedDate")] + public Output VersionCreatedDate { get; private set; } = null!; + /// /// Create a Schema resource with the given unique name, arguments, and options. @@ -90,26 +125,45 @@ public static Schema Get(string name, Input id, CustomResourceOptions? o public sealed class SchemaArgs : global::Pulumi.ResourceArgs { + /// + /// The source of the schema definition. + /// [Input("content", required: true)] public Input Content { get; set; } = null!; + /// + /// A description of the schema. + /// [Input("description")] public Input? Description { get; set; } + /// + /// The name of the schema registry. + /// [Input("registryName", required: true)] public Input RegistryName { get; set; } = null!; + /// + /// The name of the schema. + /// [Input("schemaName")] public Input? SchemaName { get; set; } [Input("tags")] private InputList? _tags; + + /// + /// Tags associated with the resource. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); set => _tags = value; } + /// + /// The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + /// [Input("type", required: true)] public Input Type { get; set; } = null!; diff --git a/sdk/dotnet/Fis/Enums.cs b/sdk/dotnet/Fis/Enums.cs new file mode 100644 index 0000000000..555657eb7d --- /dev/null +++ b/sdk/dotnet/Fis/Enums.cs @@ -0,0 +1,71 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.ComponentModel; +using Pulumi; + +namespace Pulumi.AwsNative.Fis +{ + /// + /// The account targeting setting for the experiment template. + /// + [EnumType] + public readonly struct ExperimentTemplateExperimentOptionsAccountTargeting : IEquatable + { + private readonly string _value; + + private ExperimentTemplateExperimentOptionsAccountTargeting(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ExperimentTemplateExperimentOptionsAccountTargeting MultiAccount { get; } = new ExperimentTemplateExperimentOptionsAccountTargeting("multi-account"); + public static ExperimentTemplateExperimentOptionsAccountTargeting SingleAccount { get; } = new ExperimentTemplateExperimentOptionsAccountTargeting("single-account"); + + public static bool operator ==(ExperimentTemplateExperimentOptionsAccountTargeting left, ExperimentTemplateExperimentOptionsAccountTargeting right) => left.Equals(right); + public static bool operator !=(ExperimentTemplateExperimentOptionsAccountTargeting left, ExperimentTemplateExperimentOptionsAccountTargeting right) => !left.Equals(right); + + public static explicit operator string(ExperimentTemplateExperimentOptionsAccountTargeting value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ExperimentTemplateExperimentOptionsAccountTargeting other && Equals(other); + public bool Equals(ExperimentTemplateExperimentOptionsAccountTargeting other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + + /// + /// The target resolution failure mode for the experiment template. + /// + [EnumType] + public readonly struct ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode : IEquatable + { + private readonly string _value; + + private ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode Fail { get; } = new ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode("fail"); + public static ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode Skip { get; } = new ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode("skip"); + + public static bool operator ==(ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode left, ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode right) => left.Equals(right); + public static bool operator !=(ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode left, ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode right) => !left.Equals(right); + + public static explicit operator string(ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode other && Equals(other); + public bool Equals(ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode 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/Fis/ExperimentTemplate.cs b/sdk/dotnet/Fis/ExperimentTemplate.cs index ed5c4f4048..eed1fc2e3d 100644 --- a/sdk/dotnet/Fis/ExperimentTemplate.cs +++ b/sdk/dotnet/Fis/ExperimentTemplate.cs @@ -21,6 +21,9 @@ public partial class ExperimentTemplate : global::Pulumi.CustomResource [Output("description")] public Output Description { get; private set; } = null!; + [Output("experimentOptions")] + public Output ExperimentOptions { get; private set; } = null!; + [Output("logConfiguration")] public Output LogConfiguration { get; private set; } = null!; @@ -91,6 +94,9 @@ public sealed class ExperimentTemplateArgs : global::Pulumi.ResourceArgs [Input("description", required: true)] public Input Description { get; set; } = null!; + [Input("experimentOptions")] + public Input? ExperimentOptions { get; set; } + [Input("logConfiguration")] public Input? LogConfiguration { get; set; } diff --git a/sdk/dotnet/Fis/GetExperimentTemplate.cs b/sdk/dotnet/Fis/GetExperimentTemplate.cs index 9ac831052a..b9c92779a5 100644 --- a/sdk/dotnet/Fis/GetExperimentTemplate.cs +++ b/sdk/dotnet/Fis/GetExperimentTemplate.cs @@ -53,6 +53,7 @@ public sealed class GetExperimentTemplateResult { public readonly Outputs.ExperimentTemplateActionMap? Actions; public readonly string? Description; + public readonly Outputs.ExperimentTemplateExperimentOptions? ExperimentOptions; public readonly string? Id; public readonly Outputs.ExperimentTemplateLogConfiguration? LogConfiguration; public readonly string? RoleArn; @@ -65,6 +66,8 @@ private GetExperimentTemplateResult( string? description, + Outputs.ExperimentTemplateExperimentOptions? experimentOptions, + string? id, Outputs.ExperimentTemplateLogConfiguration? logConfiguration, @@ -77,6 +80,7 @@ private GetExperimentTemplateResult( { Actions = actions; Description = description; + ExperimentOptions = experimentOptions; Id = id; LogConfiguration = logConfiguration; RoleArn = roleArn; diff --git a/sdk/dotnet/Fis/GetTargetAccountConfiguration.cs b/sdk/dotnet/Fis/GetTargetAccountConfiguration.cs new file mode 100644 index 0000000000..f597b5f087 --- /dev/null +++ b/sdk/dotnet/Fis/GetTargetAccountConfiguration.cs @@ -0,0 +1,73 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Fis +{ + public static class GetTargetAccountConfiguration + { + /// + /// Resource schema for AWS::FIS::TargetAccountConfiguration + /// + public static Task InvokeAsync(GetTargetAccountConfigurationArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:fis:getTargetAccountConfiguration", args ?? new GetTargetAccountConfigurationArgs(), options.WithDefaults()); + + /// + /// Resource schema for AWS::FIS::TargetAccountConfiguration + /// + public static Output Invoke(GetTargetAccountConfigurationInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:fis:getTargetAccountConfiguration", args ?? new GetTargetAccountConfigurationInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetTargetAccountConfigurationArgs : global::Pulumi.InvokeArgs + { + [Input("accountId", required: true)] + public string AccountId { get; set; } = null!; + + [Input("experimentTemplateId", required: true)] + public string ExperimentTemplateId { get; set; } = null!; + + public GetTargetAccountConfigurationArgs() + { + } + public static new GetTargetAccountConfigurationArgs Empty => new GetTargetAccountConfigurationArgs(); + } + + public sealed class GetTargetAccountConfigurationInvokeArgs : global::Pulumi.InvokeArgs + { + [Input("accountId", required: true)] + public Input AccountId { get; set; } = null!; + + [Input("experimentTemplateId", required: true)] + public Input ExperimentTemplateId { get; set; } = null!; + + public GetTargetAccountConfigurationInvokeArgs() + { + } + public static new GetTargetAccountConfigurationInvokeArgs Empty => new GetTargetAccountConfigurationInvokeArgs(); + } + + + [OutputType] + public sealed class GetTargetAccountConfigurationResult + { + public readonly string? Description; + public readonly string? RoleArn; + + [OutputConstructor] + private GetTargetAccountConfigurationResult( + string? description, + + string? roleArn) + { + Description = description; + RoleArn = roleArn; + } + } +} diff --git a/sdk/dotnet/Fis/Inputs/ExperimentTemplateExperimentOptionsArgs.cs b/sdk/dotnet/Fis/Inputs/ExperimentTemplateExperimentOptionsArgs.cs new file mode 100644 index 0000000000..0f6877b772 --- /dev/null +++ b/sdk/dotnet/Fis/Inputs/ExperimentTemplateExperimentOptionsArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Fis.Inputs +{ + + public sealed class ExperimentTemplateExperimentOptionsArgs : global::Pulumi.ResourceArgs + { + /// + /// The account targeting setting for the experiment template. + /// + [Input("accountTargeting")] + public Input? AccountTargeting { get; set; } + + /// + /// The target resolution failure mode for the experiment template. + /// + [Input("emptyTargetResolutionMode")] + public Input? EmptyTargetResolutionMode { get; set; } + + public ExperimentTemplateExperimentOptionsArgs() + { + } + public static new ExperimentTemplateExperimentOptionsArgs Empty => new ExperimentTemplateExperimentOptionsArgs(); + } +} diff --git a/sdk/dotnet/Fis/Outputs/ExperimentTemplateExperimentOptions.cs b/sdk/dotnet/Fis/Outputs/ExperimentTemplateExperimentOptions.cs new file mode 100644 index 0000000000..0490985604 --- /dev/null +++ b/sdk/dotnet/Fis/Outputs/ExperimentTemplateExperimentOptions.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Fis.Outputs +{ + + [OutputType] + public sealed class ExperimentTemplateExperimentOptions + { + /// + /// The account targeting setting for the experiment template. + /// + public readonly Pulumi.AwsNative.Fis.ExperimentTemplateExperimentOptionsAccountTargeting? AccountTargeting; + /// + /// The target resolution failure mode for the experiment template. + /// + public readonly Pulumi.AwsNative.Fis.ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode? EmptyTargetResolutionMode; + + [OutputConstructor] + private ExperimentTemplateExperimentOptions( + Pulumi.AwsNative.Fis.ExperimentTemplateExperimentOptionsAccountTargeting? accountTargeting, + + Pulumi.AwsNative.Fis.ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode? emptyTargetResolutionMode) + { + AccountTargeting = accountTargeting; + EmptyTargetResolutionMode = emptyTargetResolutionMode; + } + } +} diff --git a/sdk/dotnet/Fis/TargetAccountConfiguration.cs b/sdk/dotnet/Fis/TargetAccountConfiguration.cs new file mode 100644 index 0000000000..3d495a8b2b --- /dev/null +++ b/sdk/dotnet/Fis/TargetAccountConfiguration.cs @@ -0,0 +1,97 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Fis +{ + /// + /// Resource schema for AWS::FIS::TargetAccountConfiguration + /// + [AwsNativeResourceType("aws-native:fis:TargetAccountConfiguration")] + public partial class TargetAccountConfiguration : global::Pulumi.CustomResource + { + [Output("accountId")] + public Output AccountId { get; private set; } = null!; + + [Output("description")] + public Output Description { get; private set; } = null!; + + [Output("experimentTemplateId")] + public Output ExperimentTemplateId { get; private set; } = null!; + + [Output("roleArn")] + public Output RoleArn { get; private set; } = null!; + + + /// + /// Create a TargetAccountConfiguration 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 TargetAccountConfiguration(string name, TargetAccountConfigurationArgs args, CustomResourceOptions? options = null) + : base("aws-native:fis:TargetAccountConfiguration", name, args ?? new TargetAccountConfigurationArgs(), MakeResourceOptions(options, "")) + { + } + + private TargetAccountConfiguration(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:fis:TargetAccountConfiguration", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "accountId", + "experimentTemplateId", + }, + }; + 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 TargetAccountConfiguration 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 TargetAccountConfiguration Get(string name, Input id, CustomResourceOptions? options = null) + { + return new TargetAccountConfiguration(name, id, options); + } + } + + public sealed class TargetAccountConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("accountId", required: true)] + public Input AccountId { get; set; } = null!; + + [Input("description")] + public Input? Description { get; set; } + + [Input("experimentTemplateId", required: true)] + public Input ExperimentTemplateId { get; set; } = null!; + + [Input("roleArn", required: true)] + public Input RoleArn { get; set; } = null!; + + public TargetAccountConfigurationArgs() + { + } + public static new TargetAccountConfigurationArgs Empty => new TargetAccountConfigurationArgs(); + } +} diff --git a/sdk/dotnet/GameLift/Enums.cs b/sdk/dotnet/GameLift/Enums.cs index dd3d55556d..3de1612439 100644 --- a/sdk/dotnet/GameLift/Enums.cs +++ b/sdk/dotnet/GameLift/Enums.cs @@ -72,6 +72,37 @@ private BuildOperatingSystem(string value) public override string ToString() => _value; } + /// + /// ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + /// + [EnumType] + public readonly struct FleetApplyCapacity : IEquatable + { + private readonly string _value; + + private FleetApplyCapacity(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FleetApplyCapacity OnUpdate { get; } = new FleetApplyCapacity("ON_UPDATE"); + public static FleetApplyCapacity OnCreateAndUpdate { get; } = new FleetApplyCapacity("ON_CREATE_AND_UPDATE"); + + public static bool operator ==(FleetApplyCapacity left, FleetApplyCapacity right) => left.Equals(right); + public static bool operator !=(FleetApplyCapacity left, FleetApplyCapacity right) => !left.Equals(right); + + public static explicit operator string(FleetApplyCapacity value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FleetApplyCapacity other && Equals(other); + public bool Equals(FleetApplyCapacity 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 FleetCertificateConfigurationCertificateType : IEquatable { diff --git a/sdk/dotnet/GameLift/Fleet.cs b/sdk/dotnet/GameLift/Fleet.cs index fbff26ab13..abe4cec3cf 100644 --- a/sdk/dotnet/GameLift/Fleet.cs +++ b/sdk/dotnet/GameLift/Fleet.cs @@ -21,6 +21,12 @@ public partial class Fleet : global::Pulumi.CustomResource [Output("anywhereConfiguration")] public Output AnywhereConfiguration { get; private set; } = null!; + /// + /// ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + /// + [Output("applyCapacity")] + public Output ApplyCapacity { get; private set; } = null!; + /// /// A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. /// @@ -203,6 +209,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { + "applyCapacity", "buildId", "certificateConfiguration", "computeType", @@ -245,6 +252,12 @@ public sealed class FleetArgs : global::Pulumi.ResourceArgs [Input("anywhereConfiguration")] public Input? AnywhereConfiguration { get; set; } + /// + /// ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + /// + [Input("applyCapacity")] + public Input? ApplyCapacity { get; set; } + /// /// A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. /// diff --git a/sdk/dotnet/IdentityStore/GetGroupMembership.cs b/sdk/dotnet/IdentityStore/GetGroupMembership.cs index 986e66c66a..e3d350c9a5 100644 --- a/sdk/dotnet/IdentityStore/GetGroupMembership.cs +++ b/sdk/dotnet/IdentityStore/GetGroupMembership.cs @@ -69,29 +69,14 @@ public GetGroupMembershipInvokeArgs() [OutputType] public sealed class GetGroupMembershipResult { - /// - /// The unique identifier for a group in the identity store. - /// - public readonly string? GroupId; - /// - /// An object containing the identifier of a group member. - /// - public readonly Outputs.GroupMembershipMemberId? MemberId; /// /// The identifier for a GroupMembership in the identity store. /// public readonly string? MembershipId; [OutputConstructor] - private GetGroupMembershipResult( - string? groupId, - - Outputs.GroupMembershipMemberId? memberId, - - string? membershipId) + private GetGroupMembershipResult(string? membershipId) { - GroupId = groupId; - MemberId = memberId; MembershipId = membershipId; } } diff --git a/sdk/dotnet/IdentityStore/GroupMembership.cs b/sdk/dotnet/IdentityStore/GroupMembership.cs index 3c6daba3af..06c6ed9465 100644 --- a/sdk/dotnet/IdentityStore/GroupMembership.cs +++ b/sdk/dotnet/IdentityStore/GroupMembership.cs @@ -64,7 +64,9 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { + "groupId", "identityStoreId", + "memberId", }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); diff --git a/sdk/dotnet/ImageBuilder/Enums.cs b/sdk/dotnet/ImageBuilder/Enums.cs index a60edb8b8d..e105262c40 100644 --- a/sdk/dotnet/ImageBuilder/Enums.cs +++ b/sdk/dotnet/ImageBuilder/Enums.cs @@ -288,6 +288,37 @@ private ImagePipelineStatus(string value) public override string ToString() => _value; } + /// + /// Define execution decision in case of workflow failure + /// + [EnumType] + public readonly struct ImagePipelineWorkflowConfigurationOnFailure : IEquatable + { + private readonly string _value; + + private ImagePipelineWorkflowConfigurationOnFailure(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ImagePipelineWorkflowConfigurationOnFailure Continue { get; } = new ImagePipelineWorkflowConfigurationOnFailure("CONTINUE"); + public static ImagePipelineWorkflowConfigurationOnFailure Abort { get; } = new ImagePipelineWorkflowConfigurationOnFailure("ABORT"); + + public static bool operator ==(ImagePipelineWorkflowConfigurationOnFailure left, ImagePipelineWorkflowConfigurationOnFailure right) => left.Equals(right); + public static bool operator !=(ImagePipelineWorkflowConfigurationOnFailure left, ImagePipelineWorkflowConfigurationOnFailure right) => !left.Equals(right); + + public static explicit operator string(ImagePipelineWorkflowConfigurationOnFailure value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ImagePipelineWorkflowConfigurationOnFailure other && Equals(other); + public bool Equals(ImagePipelineWorkflowConfigurationOnFailure other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// Use to override the device's volume type. /// @@ -324,6 +355,37 @@ private ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType(string value) public override string ToString() => _value; } + /// + /// Define execution decision in case of workflow failure + /// + [EnumType] + public readonly struct ImageWorkflowConfigurationOnFailure : IEquatable + { + private readonly string _value; + + private ImageWorkflowConfigurationOnFailure(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ImageWorkflowConfigurationOnFailure Continue { get; } = new ImageWorkflowConfigurationOnFailure("CONTINUE"); + public static ImageWorkflowConfigurationOnFailure Abort { get; } = new ImageWorkflowConfigurationOnFailure("ABORT"); + + public static bool operator ==(ImageWorkflowConfigurationOnFailure left, ImageWorkflowConfigurationOnFailure right) => left.Equals(right); + public static bool operator !=(ImageWorkflowConfigurationOnFailure left, ImageWorkflowConfigurationOnFailure right) => !left.Equals(right); + + public static explicit operator string(ImageWorkflowConfigurationOnFailure value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ImageWorkflowConfigurationOnFailure other && Equals(other); + public bool Equals(ImageWorkflowConfigurationOnFailure other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// Indicates whether a signed token header is required for instance metadata retrieval requests. The values affect the response as follows: /// @@ -512,4 +574,36 @@ private LifecyclePolicyTimeUnit(string value) public override string ToString() => _value; } + + /// + /// The type of the workflow denotes whether the workflow is used to build, test, or distribute. + /// + [EnumType] + public readonly struct WorkflowType : IEquatable + { + private readonly string _value; + + private WorkflowType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static WorkflowType Build { get; } = new WorkflowType("BUILD"); + public static WorkflowType Test { get; } = new WorkflowType("TEST"); + public static WorkflowType Distribution { get; } = new WorkflowType("DISTRIBUTION"); + + public static bool operator ==(WorkflowType left, WorkflowType right) => left.Equals(right); + public static bool operator !=(WorkflowType left, WorkflowType right) => !left.Equals(right); + + public static explicit operator string(WorkflowType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is WorkflowType other && Equals(other); + public bool Equals(WorkflowType 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/ImageBuilder/GetImage.cs b/sdk/dotnet/ImageBuilder/GetImage.cs index 73b58aa6bf..19b2a2db5f 100644 --- a/sdk/dotnet/ImageBuilder/GetImage.cs +++ b/sdk/dotnet/ImageBuilder/GetImage.cs @@ -62,6 +62,10 @@ public sealed class GetImageResult /// public readonly string? Arn; /// + /// The execution role name/ARN for the image build, if provided + /// + public readonly string? ExecutionRole; + /// /// The AMI ID of the EC2 AMI in current region. /// public readonly string? ImageId; @@ -78,6 +82,8 @@ public sealed class GetImageResult private GetImageResult( string? arn, + string? executionRole, + string? imageId, string? imageUri, @@ -85,6 +91,7 @@ private GetImageResult( string? name) { Arn = arn; + ExecutionRole = executionRole; ImageId = imageId; ImageUri = imageUri; Name = name; diff --git a/sdk/dotnet/ImageBuilder/GetImagePipeline.cs b/sdk/dotnet/ImageBuilder/GetImagePipeline.cs index fa918d20b3..fe254c2f68 100644 --- a/sdk/dotnet/ImageBuilder/GetImagePipeline.cs +++ b/sdk/dotnet/ImageBuilder/GetImagePipeline.cs @@ -78,6 +78,10 @@ public sealed class GetImagePipelineResult /// public readonly bool? EnhancedImageMetadataEnabled; /// + /// The execution role name/ARN for the image build, if provided + /// + public readonly string? ExecutionRole; + /// /// The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. /// public readonly string? ImageRecipeArn; @@ -105,6 +109,10 @@ public sealed class GetImagePipelineResult /// The tags of this image pipeline. /// public readonly object? Tags; + /// + /// Workflows to define the image build process + /// + public readonly ImmutableArray Workflows; [OutputConstructor] private GetImagePipelineResult( @@ -118,6 +126,8 @@ private GetImagePipelineResult( bool? enhancedImageMetadataEnabled, + string? executionRole, + string? imageRecipeArn, Outputs.ImagePipelineImageScanningConfiguration? imageScanningConfiguration, @@ -130,13 +140,16 @@ private GetImagePipelineResult( Pulumi.AwsNative.ImageBuilder.ImagePipelineStatus? status, - object? tags) + object? tags, + + ImmutableArray workflows) { Arn = arn; ContainerRecipeArn = containerRecipeArn; Description = description; DistributionConfigurationArn = distributionConfigurationArn; EnhancedImageMetadataEnabled = enhancedImageMetadataEnabled; + ExecutionRole = executionRole; ImageRecipeArn = imageRecipeArn; ImageScanningConfiguration = imageScanningConfiguration; ImageTestsConfiguration = imageTestsConfiguration; @@ -144,6 +157,7 @@ private GetImagePipelineResult( Schedule = schedule; Status = status; Tags = tags; + Workflows = workflows; } } } diff --git a/sdk/dotnet/ImageBuilder/GetWorkflow.cs b/sdk/dotnet/ImageBuilder/GetWorkflow.cs new file mode 100644 index 0000000000..a4fb3ad28d --- /dev/null +++ b/sdk/dotnet/ImageBuilder/GetWorkflow.cs @@ -0,0 +1,71 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder +{ + public static class GetWorkflow + { + /// + /// Resource schema for AWS::ImageBuilder::Workflow + /// + public static Task InvokeAsync(GetWorkflowArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:imagebuilder:getWorkflow", args ?? new GetWorkflowArgs(), options.WithDefaults()); + + /// + /// Resource schema for AWS::ImageBuilder::Workflow + /// + public static Output Invoke(GetWorkflowInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:imagebuilder:getWorkflow", args ?? new GetWorkflowInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetWorkflowArgs : global::Pulumi.InvokeArgs + { + /// + /// The Amazon Resource Name (ARN) of the workflow. + /// + [Input("arn", required: true)] + public string Arn { get; set; } = null!; + + public GetWorkflowArgs() + { + } + public static new GetWorkflowArgs Empty => new GetWorkflowArgs(); + } + + public sealed class GetWorkflowInvokeArgs : global::Pulumi.InvokeArgs + { + /// + /// The Amazon Resource Name (ARN) of the workflow. + /// + [Input("arn", required: true)] + public Input Arn { get; set; } = null!; + + public GetWorkflowInvokeArgs() + { + } + public static new GetWorkflowInvokeArgs Empty => new GetWorkflowInvokeArgs(); + } + + + [OutputType] + public sealed class GetWorkflowResult + { + /// + /// The Amazon Resource Name (ARN) of the workflow. + /// + public readonly string? Arn; + + [OutputConstructor] + private GetWorkflowResult(string? arn) + { + Arn = arn; + } + } +} diff --git a/sdk/dotnet/ImageBuilder/Image.cs b/sdk/dotnet/ImageBuilder/Image.cs index 3e2169b7f3..edbd37c22d 100644 --- a/sdk/dotnet/ImageBuilder/Image.cs +++ b/sdk/dotnet/ImageBuilder/Image.cs @@ -39,6 +39,12 @@ public partial class Image : global::Pulumi.CustomResource [Output("enhancedImageMetadataEnabled")] public Output EnhancedImageMetadataEnabled { get; private set; } = null!; + /// + /// The execution role name/ARN for the image build, if provided + /// + [Output("executionRole")] + public Output ExecutionRole { get; private set; } = null!; + /// /// The AMI ID of the EC2 AMI in current region. /// @@ -87,6 +93,12 @@ public partial class Image : global::Pulumi.CustomResource [Output("tags")] public Output Tags { get; private set; } = null!; + /// + /// Workflows to define the image build process + /// + [Output("workflows")] + public Output> Workflows { get; private set; } = null!; + /// /// Create a Image resource with the given unique name, arguments, and options. @@ -120,6 +132,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? "imageTestsConfiguration", "infrastructureConfigurationArn", "tags", + "workflows[*]", }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); @@ -161,6 +174,12 @@ public sealed class ImageArgs : global::Pulumi.ResourceArgs [Input("enhancedImageMetadataEnabled")] public Input? EnhancedImageMetadataEnabled { get; set; } + /// + /// The execution role name/ARN for the image build, if provided + /// + [Input("executionRole")] + public Input? ExecutionRole { get; set; } + /// /// The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. /// @@ -191,6 +210,18 @@ public sealed class ImageArgs : global::Pulumi.ResourceArgs [Input("tags")] public Input? Tags { get; set; } + [Input("workflows")] + private InputList? _workflows; + + /// + /// Workflows to define the image build process + /// + public InputList Workflows + { + get => _workflows ?? (_workflows = new InputList()); + set => _workflows = value; + } + public ImageArgs() { } diff --git a/sdk/dotnet/ImageBuilder/ImagePipeline.cs b/sdk/dotnet/ImageBuilder/ImagePipeline.cs index 8e6a5830b2..5c70c1ebd2 100644 --- a/sdk/dotnet/ImageBuilder/ImagePipeline.cs +++ b/sdk/dotnet/ImageBuilder/ImagePipeline.cs @@ -45,6 +45,12 @@ public partial class ImagePipeline : global::Pulumi.CustomResource [Output("enhancedImageMetadataEnabled")] public Output EnhancedImageMetadataEnabled { get; private set; } = null!; + /// + /// The execution role name/ARN for the image build, if provided + /// + [Output("executionRole")] + public Output ExecutionRole { get; private set; } = null!; + /// /// The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. /// @@ -93,6 +99,12 @@ public partial class ImagePipeline : global::Pulumi.CustomResource [Output("tags")] public Output Tags { get; private set; } = null!; + /// + /// Workflows to define the image build process + /// + [Output("workflows")] + public Output> Workflows { get; private set; } = null!; + /// /// Create a ImagePipeline resource with the given unique name, arguments, and options. @@ -166,6 +178,12 @@ public sealed class ImagePipelineArgs : global::Pulumi.ResourceArgs [Input("enhancedImageMetadataEnabled")] public Input? EnhancedImageMetadataEnabled { get; set; } + /// + /// The execution role name/ARN for the image build, if provided + /// + [Input("executionRole")] + public Input? ExecutionRole { get; set; } + /// /// The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. /// @@ -214,6 +232,18 @@ public sealed class ImagePipelineArgs : global::Pulumi.ResourceArgs [Input("tags")] public Input? Tags { get; set; } + [Input("workflows")] + private InputList? _workflows; + + /// + /// Workflows to define the image build process + /// + public InputList Workflows + { + get => _workflows ?? (_workflows = new InputList()); + set => _workflows = value; + } + public ImagePipelineArgs() { } diff --git a/sdk/dotnet/ImageBuilder/Inputs/ImagePipelineWorkflowConfigurationArgs.cs b/sdk/dotnet/ImageBuilder/Inputs/ImagePipelineWorkflowConfigurationArgs.cs new file mode 100644 index 0000000000..363bf5ae38 --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Inputs/ImagePipelineWorkflowConfigurationArgs.cs @@ -0,0 +1,53 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder.Inputs +{ + + /// + /// The workflow configuration of the image + /// + public sealed class ImagePipelineWorkflowConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Define execution decision in case of workflow failure + /// + [Input("onFailure")] + public Input? OnFailure { get; set; } + + /// + /// The parallel group name + /// + [Input("parallelGroup")] + public Input? ParallelGroup { get; set; } + + [Input("parameters")] + private InputList? _parameters; + + /// + /// The parameters associated with the workflow + /// + public InputList Parameters + { + get => _parameters ?? (_parameters = new InputList()); + set => _parameters = value; + } + + /// + /// The Amazon Resource Name (ARN) of the workflow + /// + [Input("workflowArn")] + public Input? WorkflowArn { get; set; } + + public ImagePipelineWorkflowConfigurationArgs() + { + } + public static new ImagePipelineWorkflowConfigurationArgs Empty => new ImagePipelineWorkflowConfigurationArgs(); + } +} diff --git a/sdk/dotnet/ImageBuilder/Inputs/ImagePipelineWorkflowParameterArgs.cs b/sdk/dotnet/ImageBuilder/Inputs/ImagePipelineWorkflowParameterArgs.cs new file mode 100644 index 0000000000..2691875c45 --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Inputs/ImagePipelineWorkflowParameterArgs.cs @@ -0,0 +1,34 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder.Inputs +{ + + /// + /// A parameter associated with the workflow + /// + public sealed class ImagePipelineWorkflowParameterArgs : global::Pulumi.ResourceArgs + { + [Input("name")] + public Input? Name { get; set; } + + [Input("value")] + private InputList? _value; + public InputList Value + { + get => _value ?? (_value = new InputList()); + set => _value = value; + } + + public ImagePipelineWorkflowParameterArgs() + { + } + public static new ImagePipelineWorkflowParameterArgs Empty => new ImagePipelineWorkflowParameterArgs(); + } +} diff --git a/sdk/dotnet/ImageBuilder/Inputs/ImageWorkflowConfigurationArgs.cs b/sdk/dotnet/ImageBuilder/Inputs/ImageWorkflowConfigurationArgs.cs new file mode 100644 index 0000000000..3054d1baff --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Inputs/ImageWorkflowConfigurationArgs.cs @@ -0,0 +1,53 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder.Inputs +{ + + /// + /// The workflow configuration of the image + /// + public sealed class ImageWorkflowConfigurationArgs : global::Pulumi.ResourceArgs + { + /// + /// Define execution decision in case of workflow failure + /// + [Input("onFailure")] + public Input? OnFailure { get; set; } + + /// + /// The parallel group name + /// + [Input("parallelGroup")] + public Input? ParallelGroup { get; set; } + + [Input("parameters")] + private InputList? _parameters; + + /// + /// The parameters associated with the workflow + /// + public InputList Parameters + { + get => _parameters ?? (_parameters = new InputList()); + set => _parameters = value; + } + + /// + /// The Amazon Resource Name (ARN) of the workflow + /// + [Input("workflowArn")] + public Input? WorkflowArn { get; set; } + + public ImageWorkflowConfigurationArgs() + { + } + public static new ImageWorkflowConfigurationArgs Empty => new ImageWorkflowConfigurationArgs(); + } +} diff --git a/sdk/dotnet/ImageBuilder/Inputs/ImageWorkflowParameterArgs.cs b/sdk/dotnet/ImageBuilder/Inputs/ImageWorkflowParameterArgs.cs new file mode 100644 index 0000000000..1d060d1eb5 --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Inputs/ImageWorkflowParameterArgs.cs @@ -0,0 +1,34 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder.Inputs +{ + + /// + /// A parameter associated with the workflow + /// + public sealed class ImageWorkflowParameterArgs : global::Pulumi.ResourceArgs + { + [Input("name")] + public Input? Name { get; set; } + + [Input("value")] + private InputList? _value; + public InputList Value + { + get => _value ?? (_value = new InputList()); + set => _value = value; + } + + public ImageWorkflowParameterArgs() + { + } + public static new ImageWorkflowParameterArgs Empty => new ImageWorkflowParameterArgs(); + } +} diff --git a/sdk/dotnet/ImageBuilder/Outputs/ImagePipelineWorkflowConfiguration.cs b/sdk/dotnet/ImageBuilder/Outputs/ImagePipelineWorkflowConfiguration.cs new file mode 100644 index 0000000000..5e498d11f7 --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Outputs/ImagePipelineWorkflowConfiguration.cs @@ -0,0 +1,52 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder.Outputs +{ + + /// + /// The workflow configuration of the image + /// + [OutputType] + public sealed class ImagePipelineWorkflowConfiguration + { + /// + /// Define execution decision in case of workflow failure + /// + public readonly Pulumi.AwsNative.ImageBuilder.ImagePipelineWorkflowConfigurationOnFailure? OnFailure; + /// + /// The parallel group name + /// + public readonly string? ParallelGroup; + /// + /// The parameters associated with the workflow + /// + public readonly ImmutableArray Parameters; + /// + /// The Amazon Resource Name (ARN) of the workflow + /// + public readonly string? WorkflowArn; + + [OutputConstructor] + private ImagePipelineWorkflowConfiguration( + Pulumi.AwsNative.ImageBuilder.ImagePipelineWorkflowConfigurationOnFailure? onFailure, + + string? parallelGroup, + + ImmutableArray parameters, + + string? workflowArn) + { + OnFailure = onFailure; + ParallelGroup = parallelGroup; + Parameters = parameters; + WorkflowArn = workflowArn; + } + } +} diff --git a/sdk/dotnet/ImageBuilder/Outputs/ImagePipelineWorkflowParameter.cs b/sdk/dotnet/ImageBuilder/Outputs/ImagePipelineWorkflowParameter.cs new file mode 100644 index 0000000000..ae7d67bc75 --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Outputs/ImagePipelineWorkflowParameter.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder.Outputs +{ + + /// + /// A parameter associated with the workflow + /// + [OutputType] + public sealed class ImagePipelineWorkflowParameter + { + public readonly string? Name; + public readonly ImmutableArray Value; + + [OutputConstructor] + private ImagePipelineWorkflowParameter( + string? name, + + ImmutableArray value) + { + Name = name; + Value = value; + } + } +} diff --git a/sdk/dotnet/ImageBuilder/Outputs/ImageWorkflowConfiguration.cs b/sdk/dotnet/ImageBuilder/Outputs/ImageWorkflowConfiguration.cs new file mode 100644 index 0000000000..e1bbb739b8 --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Outputs/ImageWorkflowConfiguration.cs @@ -0,0 +1,52 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder.Outputs +{ + + /// + /// The workflow configuration of the image + /// + [OutputType] + public sealed class ImageWorkflowConfiguration + { + /// + /// Define execution decision in case of workflow failure + /// + public readonly Pulumi.AwsNative.ImageBuilder.ImageWorkflowConfigurationOnFailure? OnFailure; + /// + /// The parallel group name + /// + public readonly string? ParallelGroup; + /// + /// The parameters associated with the workflow + /// + public readonly ImmutableArray Parameters; + /// + /// The Amazon Resource Name (ARN) of the workflow + /// + public readonly string? WorkflowArn; + + [OutputConstructor] + private ImageWorkflowConfiguration( + Pulumi.AwsNative.ImageBuilder.ImageWorkflowConfigurationOnFailure? onFailure, + + string? parallelGroup, + + ImmutableArray parameters, + + string? workflowArn) + { + OnFailure = onFailure; + ParallelGroup = parallelGroup; + Parameters = parameters; + WorkflowArn = workflowArn; + } + } +} diff --git a/sdk/dotnet/ImageBuilder/Outputs/ImageWorkflowParameter.cs b/sdk/dotnet/ImageBuilder/Outputs/ImageWorkflowParameter.cs new file mode 100644 index 0000000000..db125dd38c --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Outputs/ImageWorkflowParameter.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder.Outputs +{ + + /// + /// A parameter associated with the workflow + /// + [OutputType] + public sealed class ImageWorkflowParameter + { + public readonly string? Name; + public readonly ImmutableArray Value; + + [OutputConstructor] + private ImageWorkflowParameter( + string? name, + + ImmutableArray value) + { + Name = name; + Value = value; + } + } +} diff --git a/sdk/dotnet/ImageBuilder/Workflow.cs b/sdk/dotnet/ImageBuilder/Workflow.cs new file mode 100644 index 0000000000..c39f2b9364 --- /dev/null +++ b/sdk/dotnet/ImageBuilder/Workflow.cs @@ -0,0 +1,194 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.ImageBuilder +{ + /// + /// Resource schema for AWS::ImageBuilder::Workflow + /// + [AwsNativeResourceType("aws-native:imagebuilder:Workflow")] + public partial class Workflow : global::Pulumi.CustomResource + { + /// + /// The Amazon Resource Name (ARN) of the workflow. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + + /// + /// The change description of the workflow. + /// + [Output("changeDescription")] + public Output ChangeDescription { get; private set; } = null!; + + /// + /// The data of the workflow. + /// + [Output("data")] + public Output Data { get; private set; } = null!; + + /// + /// The description of the workflow. + /// + [Output("description")] + public Output Description { get; private set; } = null!; + + /// + /// The KMS key identifier used to encrypt the workflow. + /// + [Output("kmsKeyId")] + public Output KmsKeyId { get; private set; } = null!; + + /// + /// The name of the workflow. + /// + [Output("name")] + public Output Name { get; private set; } = null!; + + /// + /// The tags associated with the workflow. + /// + [Output("tags")] + public Output Tags { get; private set; } = null!; + + /// + /// The type of the workflow denotes whether the workflow is used to build, test, or distribute. + /// + [Output("type")] + public Output Type { get; private set; } = null!; + + /// + /// The uri of the workflow. + /// + [Output("uri")] + public Output Uri { get; private set; } = null!; + + /// + /// The version of the workflow. + /// + [Output("version")] + public Output Version { get; private set; } = null!; + + + /// + /// Create a Workflow 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 Workflow(string name, WorkflowArgs args, CustomResourceOptions? options = null) + : base("aws-native:imagebuilder:Workflow", name, args ?? new WorkflowArgs(), MakeResourceOptions(options, "")) + { + } + + private Workflow(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:imagebuilder:Workflow", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "changeDescription", + "data", + "description", + "kmsKeyId", + "name", + "tags", + "type", + "uri", + "version", + }, + }; + var merged = CustomResourceOptions.Merge(defaultOptions, options); + // Override the ID if one was specified for consistency with other language SDKs. + merged.Id = id ?? merged.Id; + return merged; + } + /// + /// Get an existing Workflow 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 Workflow Get(string name, Input id, CustomResourceOptions? options = null) + { + return new Workflow(name, id, options); + } + } + + public sealed class WorkflowArgs : global::Pulumi.ResourceArgs + { + /// + /// The change description of the workflow. + /// + [Input("changeDescription")] + public Input? ChangeDescription { get; set; } + + /// + /// The data of the workflow. + /// + [Input("data")] + public Input? Data { get; set; } + + /// + /// The description of the workflow. + /// + [Input("description")] + public Input? Description { get; set; } + + /// + /// The KMS key identifier used to encrypt the workflow. + /// + [Input("kmsKeyId")] + public Input? KmsKeyId { get; set; } + + /// + /// The name of the workflow. + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// The tags associated with the workflow. + /// + [Input("tags")] + public Input? Tags { get; set; } + + /// + /// The type of the workflow denotes whether the workflow is used to build, test, or distribute. + /// + [Input("type", required: true)] + public Input Type { get; set; } = null!; + + /// + /// The uri of the workflow. + /// + [Input("uri")] + public Input? Uri { get; set; } + + /// + /// The version of the workflow. + /// + [Input("version", required: true)] + public Input Version { get; set; } = null!; + + public WorkflowArgs() + { + } + public static new WorkflowArgs Empty => new WorkflowArgs(); + } +} diff --git a/sdk/dotnet/IoT/CertificateProvider.cs b/sdk/dotnet/IoT/CertificateProvider.cs new file mode 100644 index 0000000000..20d905740f --- /dev/null +++ b/sdk/dotnet/IoT/CertificateProvider.cs @@ -0,0 +1,116 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.IoT +{ + /// + /// Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + /// + [AwsNativeResourceType("aws-native:iot:CertificateProvider")] + public partial class CertificateProvider : global::Pulumi.CustomResource + { + [Output("accountDefaultForOperations")] + public Output> AccountDefaultForOperations { get; private set; } = null!; + + [Output("arn")] + public Output Arn { get; private set; } = null!; + + [Output("certificateProviderName")] + public Output CertificateProviderName { get; private set; } = null!; + + [Output("lambdaFunctionArn")] + public Output LambdaFunctionArn { get; private set; } = null!; + + /// + /// An array of key-value pairs to apply to this resource. + /// + [Output("tags")] + public Output> Tags { get; private set; } = null!; + + + /// + /// Create a CertificateProvider 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 CertificateProvider(string name, CertificateProviderArgs args, CustomResourceOptions? options = null) + : base("aws-native:iot:CertificateProvider", name, args ?? new CertificateProviderArgs(), MakeResourceOptions(options, "")) + { + } + + private CertificateProvider(string name, Input id, CustomResourceOptions? options = null) + : base("aws-native:iot:CertificateProvider", name, null, MakeResourceOptions(options, id)) + { + } + + private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input? id) + { + var defaultOptions = new CustomResourceOptions + { + Version = Utilities.Version, + ReplaceOnChanges = + { + "certificateProviderName", + }, + }; + 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 CertificateProvider 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 CertificateProvider Get(string name, Input id, CustomResourceOptions? options = null) + { + return new CertificateProvider(name, id, options); + } + } + + public sealed class CertificateProviderArgs : global::Pulumi.ResourceArgs + { + [Input("accountDefaultForOperations", required: true)] + private InputList? _accountDefaultForOperations; + public InputList AccountDefaultForOperations + { + get => _accountDefaultForOperations ?? (_accountDefaultForOperations = new InputList()); + set => _accountDefaultForOperations = value; + } + + [Input("certificateProviderName")] + public Input? CertificateProviderName { get; set; } + + [Input("lambdaFunctionArn", required: true)] + public Input LambdaFunctionArn { get; set; } = null!; + + [Input("tags")] + private InputList? _tags; + + /// + /// An array of key-value pairs to apply to this resource. + /// + public InputList Tags + { + get => _tags ?? (_tags = new InputList()); + set => _tags = value; + } + + public CertificateProviderArgs() + { + } + public static new CertificateProviderArgs Empty => new CertificateProviderArgs(); + } +} diff --git a/sdk/dotnet/IoT/Enums.cs b/sdk/dotnet/IoT/Enums.cs index c5d20cae60..37b89627e6 100644 --- a/sdk/dotnet/IoT/Enums.cs +++ b/sdk/dotnet/IoT/Enums.cs @@ -147,6 +147,33 @@ private CertificateMode(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct CertificateProviderOperation : IEquatable + { + private readonly string _value; + + private CertificateProviderOperation(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static CertificateProviderOperation CreateCertificateFromCsr { get; } = new CertificateProviderOperation("CreateCertificateFromCsr"); + + public static bool operator ==(CertificateProviderOperation left, CertificateProviderOperation right) => left.Equals(right); + public static bool operator !=(CertificateProviderOperation left, CertificateProviderOperation right) => !left.Equals(right); + + public static explicit operator string(CertificateProviderOperation value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is CertificateProviderOperation other && Equals(other); + public bool Equals(CertificateProviderOperation 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 CertificateStatus : IEquatable { diff --git a/sdk/dotnet/IoT/GetCertificateProvider.cs b/sdk/dotnet/IoT/GetCertificateProvider.cs new file mode 100644 index 0000000000..c90c027086 --- /dev/null +++ b/sdk/dotnet/IoT/GetCertificateProvider.cs @@ -0,0 +1,78 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.IoT +{ + public static class GetCertificateProvider + { + /// + /// Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + /// + public static Task InvokeAsync(GetCertificateProviderArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:iot:getCertificateProvider", args ?? new GetCertificateProviderArgs(), options.WithDefaults()); + + /// + /// Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + /// + public static Output Invoke(GetCertificateProviderInvokeArgs args, InvokeOptions? options = null) + => global::Pulumi.Deployment.Instance.Invoke("aws-native:iot:getCertificateProvider", args ?? new GetCertificateProviderInvokeArgs(), options.WithDefaults()); + } + + + public sealed class GetCertificateProviderArgs : global::Pulumi.InvokeArgs + { + [Input("certificateProviderName", required: true)] + public string CertificateProviderName { get; set; } = null!; + + public GetCertificateProviderArgs() + { + } + public static new GetCertificateProviderArgs Empty => new GetCertificateProviderArgs(); + } + + public sealed class GetCertificateProviderInvokeArgs : global::Pulumi.InvokeArgs + { + [Input("certificateProviderName", required: true)] + public Input CertificateProviderName { get; set; } = null!; + + public GetCertificateProviderInvokeArgs() + { + } + public static new GetCertificateProviderInvokeArgs Empty => new GetCertificateProviderInvokeArgs(); + } + + + [OutputType] + public sealed class GetCertificateProviderResult + { + public readonly ImmutableArray AccountDefaultForOperations; + public readonly string? Arn; + public readonly string? LambdaFunctionArn; + /// + /// An array of key-value pairs to apply to this resource. + /// + public readonly ImmutableArray Tags; + + [OutputConstructor] + private GetCertificateProviderResult( + ImmutableArray accountDefaultForOperations, + + string? arn, + + string? lambdaFunctionArn, + + ImmutableArray tags) + { + AccountDefaultForOperations = accountDefaultForOperations; + Arn = arn; + LambdaFunctionArn = lambdaFunctionArn; + Tags = tags; + } + } +} diff --git a/sdk/dotnet/IoT/Inputs/CertificateProviderTagArgs.cs b/sdk/dotnet/IoT/Inputs/CertificateProviderTagArgs.cs new file mode 100644 index 0000000000..2d4d33a7e0 --- /dev/null +++ b/sdk/dotnet/IoT/Inputs/CertificateProviderTagArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.IoT.Inputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + public sealed class CertificateProviderTagArgs : global::Pulumi.ResourceArgs + { + /// + /// The key name of the tag. You can specify a value that is 1 to 127 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 1 to 255 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 CertificateProviderTagArgs() + { + } + public static new CertificateProviderTagArgs Empty => new CertificateProviderTagArgs(); + } +} diff --git a/sdk/dotnet/IoT/Outputs/CertificateProviderTag.cs b/sdk/dotnet/IoT/Outputs/CertificateProviderTag.cs new file mode 100644 index 0000000000..bf54092b6a --- /dev/null +++ b/sdk/dotnet/IoT/Outputs/CertificateProviderTag.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.IoT.Outputs +{ + + /// + /// A key-value pair to associate with a resource. + /// + [OutputType] + public sealed class CertificateProviderTag + { + /// + /// The key name of the tag. You can specify a value that is 1 to 127 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 1 to 255 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 CertificateProviderTag( + string key, + + string value) + { + Key = key; + Value = value; + } + } +} diff --git a/sdk/dotnet/KinesisFirehose/Enums.cs b/sdk/dotnet/KinesisFirehose/Enums.cs index d8c04d49f5..a32f25f0bb 100644 --- a/sdk/dotnet/KinesisFirehose/Enums.cs +++ b/sdk/dotnet/KinesisFirehose/Enums.cs @@ -362,6 +362,7 @@ private DeliveryStreamProcessorType(string value) } public static DeliveryStreamProcessorType RecordDeAggregation { get; } = new DeliveryStreamProcessorType("RecordDeAggregation"); + public static DeliveryStreamProcessorType Decompression { get; } = new DeliveryStreamProcessorType("Decompression"); public static DeliveryStreamProcessorType Lambda { get; } = new DeliveryStreamProcessorType("Lambda"); public static DeliveryStreamProcessorType MetadataExtraction { get; } = new DeliveryStreamProcessorType("MetadataExtraction"); public static DeliveryStreamProcessorType AppendDelimiterToRecord { get; } = new DeliveryStreamProcessorType("AppendDelimiterToRecord"); diff --git a/sdk/dotnet/Lambda/EventInvokeConfig.cs b/sdk/dotnet/Lambda/EventInvokeConfig.cs index edc4bc2bcc..7acaf77e7d 100644 --- a/sdk/dotnet/Lambda/EventInvokeConfig.cs +++ b/sdk/dotnet/Lambda/EventInvokeConfig.cs @@ -10,7 +10,7 @@ namespace Pulumi.AwsNative.Lambda { /// - /// Resource Type definition for AWS::Lambda::EventInvokeConfig + /// The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. /// [AwsNativeResourceType("aws-native:lambda:EventInvokeConfig")] public partial class EventInvokeConfig : global::Pulumi.CustomResource @@ -18,15 +18,27 @@ public partial class EventInvokeConfig : global::Pulumi.CustomResource [Output("destinationConfig")] public Output DestinationConfig { get; private set; } = null!; + /// + /// The name of the Lambda function. + /// [Output("functionName")] public Output FunctionName { get; private set; } = null!; + /// + /// The maximum age of a request that Lambda sends to a function for processing. + /// [Output("maximumEventAgeInSeconds")] public Output MaximumEventAgeInSeconds { get; private set; } = null!; + /// + /// The maximum number of times to retry when the function returns an error. + /// [Output("maximumRetryAttempts")] public Output MaximumRetryAttempts { get; private set; } = null!; + /// + /// The identifier of a version or alias. + /// [Output("qualifier")] public Output Qualifier { get; private set; } = null!; @@ -83,15 +95,27 @@ public sealed class EventInvokeConfigArgs : global::Pulumi.ResourceArgs [Input("destinationConfig")] public Input? DestinationConfig { get; set; } + /// + /// The name of the Lambda function. + /// [Input("functionName", required: true)] public Input FunctionName { get; set; } = null!; + /// + /// The maximum age of a request that Lambda sends to a function for processing. + /// [Input("maximumEventAgeInSeconds")] public Input? MaximumEventAgeInSeconds { get; set; } + /// + /// The maximum number of times to retry when the function returns an error. + /// [Input("maximumRetryAttempts")] public Input? MaximumRetryAttempts { get; set; } + /// + /// The identifier of a version or alias. + /// [Input("qualifier", required: true)] public Input Qualifier { get; set; } = null!; diff --git a/sdk/dotnet/Lambda/Function.cs b/sdk/dotnet/Lambda/Function.cs index c07d8ea0fc..836b783b72 100644 --- a/sdk/dotnet/Lambda/Function.cs +++ b/sdk/dotnet/Lambda/Function.cs @@ -114,12 +114,6 @@ public partial class Function : global::Pulumi.CustomResource [Output("packageType")] public Output PackageType { get; private set; } = null!; - /// - /// The resource policy of your function - /// - [Output("policy")] - public Output Policy { get; private set; } = null!; - /// /// The number of simultaneous executions to reserve for the function. /// @@ -339,12 +333,6 @@ public InputList Layers [Input("packageType")] public Input? PackageType { get; set; } - /// - /// The resource policy of your function - /// - [Input("policy")] - public Input? Policy { get; set; } - /// /// The number of simultaneous executions to reserve for the function. /// diff --git a/sdk/dotnet/Lambda/GetEventInvokeConfig.cs b/sdk/dotnet/Lambda/GetEventInvokeConfig.cs index ae6d6b9aba..6cbe7f83a4 100644 --- a/sdk/dotnet/Lambda/GetEventInvokeConfig.cs +++ b/sdk/dotnet/Lambda/GetEventInvokeConfig.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.Lambda public static class GetEventInvokeConfig { /// - /// Resource Type definition for AWS::Lambda::EventInvokeConfig + /// The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. /// public static Task InvokeAsync(GetEventInvokeConfigArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:lambda:getEventInvokeConfig", args ?? new GetEventInvokeConfigArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::Lambda::EventInvokeConfig + /// The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. /// public static Output Invoke(GetEventInvokeConfigInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:lambda:getEventInvokeConfig", args ?? new GetEventInvokeConfigInvokeArgs(), options.WithDefaults()); @@ -27,8 +27,17 @@ public static Output Invoke(GetEventInvokeConfigInvo public sealed class GetEventInvokeConfigArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + /// + /// The name of the Lambda function. + /// + [Input("functionName", required: true)] + public string FunctionName { get; set; } = null!; + + /// + /// The identifier of a version or alias. + /// + [Input("qualifier", required: true)] + public string Qualifier { get; set; } = null!; public GetEventInvokeConfigArgs() { @@ -38,8 +47,17 @@ public GetEventInvokeConfigArgs() public sealed class GetEventInvokeConfigInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + /// + /// The name of the Lambda function. + /// + [Input("functionName", required: true)] + public Input FunctionName { get; set; } = null!; + + /// + /// The identifier of a version or alias. + /// + [Input("qualifier", required: true)] + public Input Qualifier { get; set; } = null!; public GetEventInvokeConfigInvokeArgs() { @@ -52,22 +70,24 @@ public GetEventInvokeConfigInvokeArgs() public sealed class GetEventInvokeConfigResult { public readonly Outputs.EventInvokeConfigDestinationConfig? DestinationConfig; - public readonly string? Id; + /// + /// The maximum age of a request that Lambda sends to a function for processing. + /// public readonly int? MaximumEventAgeInSeconds; + /// + /// The maximum number of times to retry when the function returns an error. + /// public readonly int? MaximumRetryAttempts; [OutputConstructor] private GetEventInvokeConfigResult( Outputs.EventInvokeConfigDestinationConfig? destinationConfig, - string? id, - int? maximumEventAgeInSeconds, int? maximumRetryAttempts) { DestinationConfig = destinationConfig; - Id = id; MaximumEventAgeInSeconds = maximumEventAgeInSeconds; MaximumRetryAttempts = maximumRetryAttempts; } diff --git a/sdk/dotnet/Lambda/Inputs/EventInvokeConfigDestinationConfigArgs.cs b/sdk/dotnet/Lambda/Inputs/EventInvokeConfigDestinationConfigArgs.cs index d2e88e4e59..a178b89e03 100644 --- a/sdk/dotnet/Lambda/Inputs/EventInvokeConfigDestinationConfigArgs.cs +++ b/sdk/dotnet/Lambda/Inputs/EventInvokeConfigDestinationConfigArgs.cs @@ -10,6 +10,9 @@ namespace Pulumi.AwsNative.Lambda.Inputs { + /// + /// A destination for events after they have been sent to a function for processing. + /// public sealed class EventInvokeConfigDestinationConfigArgs : global::Pulumi.ResourceArgs { [Input("onFailure")] diff --git a/sdk/dotnet/Lambda/Inputs/EventInvokeConfigOnFailureArgs.cs b/sdk/dotnet/Lambda/Inputs/EventInvokeConfigOnFailureArgs.cs index 8c093770b0..c56abb7953 100644 --- a/sdk/dotnet/Lambda/Inputs/EventInvokeConfigOnFailureArgs.cs +++ b/sdk/dotnet/Lambda/Inputs/EventInvokeConfigOnFailureArgs.cs @@ -10,8 +10,14 @@ namespace Pulumi.AwsNative.Lambda.Inputs { + /// + /// The destination configuration for failed invocations. + /// public sealed class EventInvokeConfigOnFailureArgs : global::Pulumi.ResourceArgs { + /// + /// The Amazon Resource Name (ARN) of the destination resource. + /// [Input("destination", required: true)] public Input Destination { get; set; } = null!; diff --git a/sdk/dotnet/Lambda/Inputs/EventInvokeConfigOnSuccessArgs.cs b/sdk/dotnet/Lambda/Inputs/EventInvokeConfigOnSuccessArgs.cs index 3baa978ba0..f0a1cc2a9b 100644 --- a/sdk/dotnet/Lambda/Inputs/EventInvokeConfigOnSuccessArgs.cs +++ b/sdk/dotnet/Lambda/Inputs/EventInvokeConfigOnSuccessArgs.cs @@ -10,8 +10,14 @@ namespace Pulumi.AwsNative.Lambda.Inputs { + /// + /// The destination configuration for successful invocations. + /// public sealed class EventInvokeConfigOnSuccessArgs : global::Pulumi.ResourceArgs { + /// + /// The Amazon Resource Name (ARN) of the destination resource. + /// [Input("destination", required: true)] public Input Destination { get; set; } = null!; diff --git a/sdk/dotnet/Lambda/Outputs/EventInvokeConfigDestinationConfig.cs b/sdk/dotnet/Lambda/Outputs/EventInvokeConfigDestinationConfig.cs index 52dd109fd8..b16ee24be6 100644 --- a/sdk/dotnet/Lambda/Outputs/EventInvokeConfigDestinationConfig.cs +++ b/sdk/dotnet/Lambda/Outputs/EventInvokeConfigDestinationConfig.cs @@ -10,6 +10,9 @@ namespace Pulumi.AwsNative.Lambda.Outputs { + /// + /// A destination for events after they have been sent to a function for processing. + /// [OutputType] public sealed class EventInvokeConfigDestinationConfig { diff --git a/sdk/dotnet/Lambda/Outputs/EventInvokeConfigOnFailure.cs b/sdk/dotnet/Lambda/Outputs/EventInvokeConfigOnFailure.cs index b14d2051d4..0152e0bdff 100644 --- a/sdk/dotnet/Lambda/Outputs/EventInvokeConfigOnFailure.cs +++ b/sdk/dotnet/Lambda/Outputs/EventInvokeConfigOnFailure.cs @@ -10,9 +10,15 @@ namespace Pulumi.AwsNative.Lambda.Outputs { + /// + /// The destination configuration for failed invocations. + /// [OutputType] public sealed class EventInvokeConfigOnFailure { + /// + /// The Amazon Resource Name (ARN) of the destination resource. + /// public readonly string Destination; [OutputConstructor] diff --git a/sdk/dotnet/Lambda/Outputs/EventInvokeConfigOnSuccess.cs b/sdk/dotnet/Lambda/Outputs/EventInvokeConfigOnSuccess.cs index 077e854373..c0b6da888a 100644 --- a/sdk/dotnet/Lambda/Outputs/EventInvokeConfigOnSuccess.cs +++ b/sdk/dotnet/Lambda/Outputs/EventInvokeConfigOnSuccess.cs @@ -10,9 +10,15 @@ namespace Pulumi.AwsNative.Lambda.Outputs { + /// + /// The destination configuration for successful invocations. + /// [OutputType] public sealed class EventInvokeConfigOnSuccess { + /// + /// The Amazon Resource Name (ARN) of the destination resource. + /// public readonly string Destination; [OutputConstructor] diff --git a/sdk/dotnet/Logs/Delivery.cs b/sdk/dotnet/Logs/Delivery.cs index f6ae5edd65..698c9c6ee3 100644 --- a/sdk/dotnet/Logs/Delivery.cs +++ b/sdk/dotnet/Logs/Delivery.cs @@ -10,43 +10,47 @@ namespace Pulumi.AwsNative.Logs { /// - /// Resource Type definition for AWS::Logs::Delivery. + /// This structure contains information about one delivery in your account. + /// + /// A delivery is a connection between a logical delivery source and a logical delivery destination. + /// + /// For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). /// [AwsNativeResourceType("aws-native:logs:Delivery")] public partial class Delivery : global::Pulumi.CustomResource { /// - /// The value of the Arn property for this object. + /// The Amazon Resource Name (ARN) that uniquely identifies this delivery. /// [Output("arn")] public Output Arn { get; private set; } = null!; /// - /// The value of the DeliveryDestinationArn property for this object. + /// The ARN of the delivery destination that is associated with this delivery. /// [Output("deliveryDestinationArn")] public Output DeliveryDestinationArn { get; private set; } = null!; /// - /// The value of the DeliveryDestinationType property for this object. + /// Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. /// [Output("deliveryDestinationType")] public Output DeliveryDestinationType { get; private set; } = null!; /// - /// The value of the Id property for this object. + /// The unique ID that identifies this delivery in your account. /// [Output("deliveryId")] public Output DeliveryId { get; private set; } = null!; /// - /// The value of the DeliverySourceName property for this object. + /// The name of the delivery source that is associated with this delivery. /// [Output("deliverySourceName")] public Output DeliverySourceName { get; private set; } = null!; /// - /// The value of the Tags property for this object. + /// The tags that have been assigned to this delivery. /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -102,13 +106,13 @@ public static Delivery Get(string name, Input id, CustomResourceOptions? public sealed class DeliveryArgs : global::Pulumi.ResourceArgs { /// - /// The value of the DeliveryDestinationArn property for this object. + /// The ARN of the delivery destination that is associated with this delivery. /// [Input("deliveryDestinationArn", required: true)] public Input DeliveryDestinationArn { get; set; } = null!; /// - /// The value of the DeliverySourceName property for this object. + /// The name of the delivery source that is associated with this delivery. /// [Input("deliverySourceName", required: true)] public Input DeliverySourceName { get; set; } = null!; @@ -117,7 +121,7 @@ public sealed class DeliveryArgs : global::Pulumi.ResourceArgs private InputList? _tags; /// - /// The value of the Tags property for this object. + /// The tags that have been assigned to this delivery. /// public InputList Tags { diff --git a/sdk/dotnet/Logs/DeliveryDestination.cs b/sdk/dotnet/Logs/DeliveryDestination.cs index 42a807cd59..fdb59a6346 100644 --- a/sdk/dotnet/Logs/DeliveryDestination.cs +++ b/sdk/dotnet/Logs/DeliveryDestination.cs @@ -10,13 +10,15 @@ namespace Pulumi.AwsNative.Logs { /// - /// Resource Type definition for AWS::Logs::DeliveryDestination + /// This structure contains information about one delivery destination in your account. + /// + /// A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. /// [AwsNativeResourceType("aws-native:logs:DeliveryDestination")] public partial class DeliveryDestination : global::Pulumi.CustomResource { /// - /// The value of the Arn property for this object. + /// The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. /// [Output("arn")] public Output Arn { get; private set; } = null!; @@ -32,25 +34,25 @@ public partial class DeliveryDestination : global::Pulumi.CustomResource public Output DeliveryDestinationPolicy { get; private set; } = null!; /// - /// The value of the DeliveryDestinationType property for this object. + /// Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. /// [Output("deliveryDestinationType")] public Output DeliveryDestinationType { get; private set; } = null!; /// - /// The ARN of the Destination Resource. + /// The ARN of the AWS resource that will receive the logs. /// [Output("destinationResourceArn")] public Output DestinationResourceArn { get; private set; } = null!; /// - /// The unique name of the Delivery Destination. + /// The name of this delivery destination. /// [Output("name")] public Output Name { get; private set; } = null!; /// - /// An array of key-value pairs to apply to this resource. + /// The tags that have been assigned to this delivery destination. /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -116,13 +118,13 @@ public sealed class DeliveryDestinationArgs : global::Pulumi.ResourceArgs public Input? DeliveryDestinationPolicy { get; set; } /// - /// The ARN of the Destination Resource. + /// The ARN of the AWS resource that will receive the logs. /// [Input("destinationResourceArn")] public Input? DestinationResourceArn { get; set; } /// - /// The unique name of the Delivery Destination. + /// The name of this delivery destination. /// [Input("name")] public Input? Name { get; set; } @@ -131,7 +133,7 @@ public sealed class DeliveryDestinationArgs : global::Pulumi.ResourceArgs private InputList? _tags; /// - /// An array of key-value pairs to apply to this resource. + /// The tags that have been assigned to this delivery destination. /// public InputList Tags { diff --git a/sdk/dotnet/Logs/DeliverySource.cs b/sdk/dotnet/Logs/DeliverySource.cs index b91b56a95c..a46d02dbac 100644 --- a/sdk/dotnet/Logs/DeliverySource.cs +++ b/sdk/dotnet/Logs/DeliverySource.cs @@ -10,13 +10,15 @@ namespace Pulumi.AwsNative.Logs { /// - /// Resource Type definition for AWS::Logs::DeliverySource. + /// A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + /// + /// Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). /// [AwsNativeResourceType("aws-native:logs:DeliverySource")] public partial class DeliverySource : global::Pulumi.CustomResource { /// - /// The ARN of the Aqueduct Source. + /// The Amazon Resource Name (ARN) that uniquely identifies this delivery source. /// [Output("arn")] public Output Arn { get; private set; } = null!; @@ -40,19 +42,19 @@ public partial class DeliverySource : global::Pulumi.CustomResource public Output ResourceArn { get; private set; } = null!; /// - /// List of ARN of the resource that will be sending the logs + /// This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. /// [Output("resourceArns")] public Output> ResourceArns { get; private set; } = null!; /// - /// The service generating the log + /// The AWS service that is sending logs. /// [Output("service")] public Output Service { get; private set; } = null!; /// - /// An array of key-value pairs to apply to this resource. + /// The tags that have been assigned to this delivery source. /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -128,7 +130,7 @@ public sealed class DeliverySourceArgs : global::Pulumi.ResourceArgs private InputList? _tags; /// - /// An array of key-value pairs to apply to this resource. + /// The tags that have been assigned to this delivery source. /// public InputList Tags { diff --git a/sdk/dotnet/Logs/GetDelivery.cs b/sdk/dotnet/Logs/GetDelivery.cs index 4a980623e2..efd50225e0 100644 --- a/sdk/dotnet/Logs/GetDelivery.cs +++ b/sdk/dotnet/Logs/GetDelivery.cs @@ -12,13 +12,21 @@ namespace Pulumi.AwsNative.Logs public static class GetDelivery { /// - /// Resource Type definition for AWS::Logs::Delivery. + /// This structure contains information about one delivery in your account. + /// + /// A delivery is a connection between a logical delivery source and a logical delivery destination. + /// + /// For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). /// public static Task InvokeAsync(GetDeliveryArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:logs:getDelivery", args ?? new GetDeliveryArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::Logs::Delivery. + /// This structure contains information about one delivery in your account. + /// + /// A delivery is a connection between a logical delivery source and a logical delivery destination. + /// + /// For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). /// public static Output Invoke(GetDeliveryInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:logs:getDelivery", args ?? new GetDeliveryInvokeArgs(), options.WithDefaults()); @@ -28,7 +36,7 @@ public static Output Invoke(GetDeliveryInvokeArgs args, Invok public sealed class GetDeliveryArgs : global::Pulumi.InvokeArgs { /// - /// The value of the Id property for this object. + /// The unique ID that identifies this delivery in your account. /// [Input("deliveryId", required: true)] public string DeliveryId { get; set; } = null!; @@ -42,7 +50,7 @@ public GetDeliveryArgs() public sealed class GetDeliveryInvokeArgs : global::Pulumi.InvokeArgs { /// - /// The value of the Id property for this object. + /// The unique ID that identifies this delivery in your account. /// [Input("deliveryId", required: true)] public Input DeliveryId { get; set; } = null!; @@ -58,19 +66,19 @@ public GetDeliveryInvokeArgs() public sealed class GetDeliveryResult { /// - /// The value of the Arn property for this object. + /// The Amazon Resource Name (ARN) that uniquely identifies this delivery. /// public readonly string? Arn; /// - /// The value of the DeliveryDestinationType property for this object. + /// Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. /// public readonly string? DeliveryDestinationType; /// - /// The value of the Id property for this object. + /// The unique ID that identifies this delivery in your account. /// public readonly string? DeliveryId; /// - /// The value of the Tags property for this object. + /// The tags that have been assigned to this delivery. /// public readonly ImmutableArray Tags; diff --git a/sdk/dotnet/Logs/GetDeliveryDestination.cs b/sdk/dotnet/Logs/GetDeliveryDestination.cs index b8277d5dea..ed2744734b 100644 --- a/sdk/dotnet/Logs/GetDeliveryDestination.cs +++ b/sdk/dotnet/Logs/GetDeliveryDestination.cs @@ -12,13 +12,17 @@ namespace Pulumi.AwsNative.Logs public static class GetDeliveryDestination { /// - /// Resource Type definition for AWS::Logs::DeliveryDestination + /// This structure contains information about one delivery destination in your account. + /// + /// A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. /// public static Task InvokeAsync(GetDeliveryDestinationArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:logs:getDeliveryDestination", args ?? new GetDeliveryDestinationArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::Logs::DeliveryDestination + /// This structure contains information about one delivery destination in your account. + /// + /// A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. /// public static Output Invoke(GetDeliveryDestinationInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:logs:getDeliveryDestination", args ?? new GetDeliveryDestinationInvokeArgs(), options.WithDefaults()); @@ -28,7 +32,7 @@ public static Output Invoke(GetDeliveryDestination public sealed class GetDeliveryDestinationArgs : global::Pulumi.InvokeArgs { /// - /// The unique name of the Delivery Destination. + /// The name of this delivery destination. /// [Input("name", required: true)] public string Name { get; set; } = null!; @@ -42,7 +46,7 @@ public GetDeliveryDestinationArgs() public sealed class GetDeliveryDestinationInvokeArgs : global::Pulumi.InvokeArgs { /// - /// The unique name of the Delivery Destination. + /// The name of this delivery destination. /// [Input("name", required: true)] public Input Name { get; set; } = null!; @@ -58,7 +62,7 @@ public GetDeliveryDestinationInvokeArgs() public sealed class GetDeliveryDestinationResult { /// - /// The value of the Arn property for this object. + /// The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. /// public readonly string? Arn; /// @@ -70,11 +74,11 @@ public sealed class GetDeliveryDestinationResult /// public readonly object? DeliveryDestinationPolicy; /// - /// The value of the DeliveryDestinationType property for this object. + /// Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. /// public readonly string? DeliveryDestinationType; /// - /// An array of key-value pairs to apply to this resource. + /// The tags that have been assigned to this delivery destination. /// public readonly ImmutableArray Tags; diff --git a/sdk/dotnet/Logs/GetDeliverySource.cs b/sdk/dotnet/Logs/GetDeliverySource.cs index 4420c1490d..e394eba68c 100644 --- a/sdk/dotnet/Logs/GetDeliverySource.cs +++ b/sdk/dotnet/Logs/GetDeliverySource.cs @@ -12,13 +12,17 @@ namespace Pulumi.AwsNative.Logs public static class GetDeliverySource { /// - /// Resource Type definition for AWS::Logs::DeliverySource. + /// A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + /// + /// Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). /// public static Task InvokeAsync(GetDeliverySourceArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:logs:getDeliverySource", args ?? new GetDeliverySourceArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::Logs::DeliverySource. + /// A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + /// + /// Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). /// public static Output Invoke(GetDeliverySourceInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:logs:getDeliverySource", args ?? new GetDeliverySourceInvokeArgs(), options.WithDefaults()); @@ -58,7 +62,7 @@ public GetDeliverySourceInvokeArgs() public sealed class GetDeliverySourceResult { /// - /// The ARN of the Aqueduct Source. + /// The Amazon Resource Name (ARN) that uniquely identifies this delivery source. /// public readonly string? Arn; /// @@ -66,15 +70,15 @@ public sealed class GetDeliverySourceResult /// public readonly string? LogType; /// - /// List of ARN of the resource that will be sending the logs + /// This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. /// public readonly ImmutableArray ResourceArns; /// - /// The service generating the log + /// The AWS service that is sending logs. /// public readonly string? Service; /// - /// An array of key-value pairs to apply to this resource. + /// The tags that have been assigned to this delivery source. /// public readonly ImmutableArray Tags; diff --git a/sdk/dotnet/OpenSearchService/Domain.cs b/sdk/dotnet/OpenSearchService/Domain.cs index b049ee81a8..ee2a6122fb 100644 --- a/sdk/dotnet/OpenSearchService/Domain.cs +++ b/sdk/dotnet/OpenSearchService/Domain.cs @@ -42,6 +42,9 @@ public partial class Domain : global::Pulumi.CustomResource [Output("domainEndpointOptions")] public Output DomainEndpointOptions { get; private set; } = null!; + [Output("domainEndpointV2")] + public Output DomainEndpointV2 { get; private set; } = null!; + [Output("domainEndpoints")] public Output DomainEndpoints { get; private set; } = null!; @@ -57,6 +60,9 @@ public partial class Domain : global::Pulumi.CustomResource [Output("engineVersion")] public Output EngineVersion { get; private set; } = null!; + [Output("ipAddressType")] + public Output IpAddressType { get; private set; } = null!; + [Output("logPublishingOptions")] public Output LogPublishingOptions { get; private set; } = null!; @@ -163,6 +169,9 @@ public sealed class DomainArgs : global::Pulumi.ResourceArgs [Input("engineVersion")] public Input? EngineVersion { get; set; } + [Input("ipAddressType")] + public Input? IpAddressType { get; set; } + [Input("logPublishingOptions")] public Input? LogPublishingOptions { get; set; } diff --git a/sdk/dotnet/OpenSearchService/GetDomain.cs b/sdk/dotnet/OpenSearchService/GetDomain.cs index 15a7d12d46..1922a2903f 100644 --- a/sdk/dotnet/OpenSearchService/GetDomain.cs +++ b/sdk/dotnet/OpenSearchService/GetDomain.cs @@ -60,11 +60,13 @@ public sealed class GetDomainResult public readonly string? DomainArn; public readonly string? DomainEndpoint; public readonly Outputs.DomainEndpointOptions? DomainEndpointOptions; + public readonly string? DomainEndpointV2; public readonly object? DomainEndpoints; public readonly Outputs.DomainEbsOptions? EbsOptions; public readonly Outputs.DomainEncryptionAtRestOptions? EncryptionAtRestOptions; public readonly string? EngineVersion; public readonly string? Id; + public readonly string? IpAddressType; public readonly object? LogPublishingOptions; public readonly Outputs.DomainNodeToNodeEncryptionOptions? NodeToNodeEncryptionOptions; public readonly Outputs.DomainOffPeakWindowOptions? OffPeakWindowOptions; @@ -97,6 +99,8 @@ private GetDomainResult( Outputs.DomainEndpointOptions? domainEndpointOptions, + string? domainEndpointV2, + object? domainEndpoints, Outputs.DomainEbsOptions? ebsOptions, @@ -107,6 +111,8 @@ private GetDomainResult( string? id, + string? ipAddressType, + object? logPublishingOptions, Outputs.DomainNodeToNodeEncryptionOptions? nodeToNodeEncryptionOptions, @@ -132,11 +138,13 @@ private GetDomainResult( DomainArn = domainArn; DomainEndpoint = domainEndpoint; DomainEndpointOptions = domainEndpointOptions; + DomainEndpointV2 = domainEndpointV2; DomainEndpoints = domainEndpoints; EbsOptions = ebsOptions; EncryptionAtRestOptions = encryptionAtRestOptions; EngineVersion = engineVersion; Id = id; + IpAddressType = ipAddressType; LogPublishingOptions = logPublishingOptions; NodeToNodeEncryptionOptions = nodeToNodeEncryptionOptions; OffPeakWindowOptions = offPeakWindowOptions; diff --git a/sdk/dotnet/Osis/GetPipeline.cs b/sdk/dotnet/Osis/GetPipeline.cs index 7741b255df..3514f5bf0a 100644 --- a/sdk/dotnet/Osis/GetPipeline.cs +++ b/sdk/dotnet/Osis/GetPipeline.cs @@ -57,6 +57,8 @@ public GetPipelineInvokeArgs() [OutputType] public sealed class GetPipelineResult { + public readonly Outputs.PipelineBufferOptions? BufferOptions; + public readonly Outputs.PipelineEncryptionAtRestOptions? EncryptionAtRestOptions; /// /// A list of endpoints that can be used for ingesting data into a pipeline /// @@ -89,6 +91,10 @@ public sealed class GetPipelineResult [OutputConstructor] private GetPipelineResult( + Outputs.PipelineBufferOptions? bufferOptions, + + Outputs.PipelineEncryptionAtRestOptions? encryptionAtRestOptions, + ImmutableArray ingestEndpointUrls, Outputs.PipelineLogPublishingOptions? logPublishingOptions, @@ -105,6 +111,8 @@ private GetPipelineResult( ImmutableArray vpcEndpoints) { + BufferOptions = bufferOptions; + EncryptionAtRestOptions = encryptionAtRestOptions; IngestEndpointUrls = ingestEndpointUrls; LogPublishingOptions = logPublishingOptions; MaxUnits = maxUnits; diff --git a/sdk/dotnet/Osis/Inputs/PipelineBufferOptionsArgs.cs b/sdk/dotnet/Osis/Inputs/PipelineBufferOptionsArgs.cs new file mode 100644 index 0000000000..1d79cdece8 --- /dev/null +++ b/sdk/dotnet/Osis/Inputs/PipelineBufferOptionsArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Osis.Inputs +{ + + /// + /// Key-value pairs to configure buffering. + /// + public sealed class PipelineBufferOptionsArgs : global::Pulumi.ResourceArgs + { + /// + /// Whether persistent buffering should be enabled. + /// + [Input("persistentBufferEnabled", required: true)] + public Input PersistentBufferEnabled { get; set; } = null!; + + public PipelineBufferOptionsArgs() + { + } + public static new PipelineBufferOptionsArgs Empty => new PipelineBufferOptionsArgs(); + } +} diff --git a/sdk/dotnet/Osis/Inputs/PipelineEncryptionAtRestOptionsArgs.cs b/sdk/dotnet/Osis/Inputs/PipelineEncryptionAtRestOptionsArgs.cs new file mode 100644 index 0000000000..04135b3878 --- /dev/null +++ b/sdk/dotnet/Osis/Inputs/PipelineEncryptionAtRestOptionsArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Osis.Inputs +{ + + /// + /// Key-value pairs to configure encryption at rest. + /// + public sealed class PipelineEncryptionAtRestOptionsArgs : global::Pulumi.ResourceArgs + { + /// + /// The KMS key to use for encrypting data. By default an AWS owned key is used + /// + [Input("kmsKeyArn", required: true)] + public Input KmsKeyArn { get; set; } = null!; + + public PipelineEncryptionAtRestOptionsArgs() + { + } + public static new PipelineEncryptionAtRestOptionsArgs Empty => new PipelineEncryptionAtRestOptionsArgs(); + } +} diff --git a/sdk/dotnet/Osis/Inputs/PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs.cs b/sdk/dotnet/Osis/Inputs/PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs.cs index ddb2b40479..2a66b327e4 100644 --- a/sdk/dotnet/Osis/Inputs/PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs.cs +++ b/sdk/dotnet/Osis/Inputs/PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs.cs @@ -15,8 +15,8 @@ namespace Pulumi.AwsNative.Osis.Inputs /// public sealed class PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs : global::Pulumi.ResourceArgs { - [Input("logGroup")] - public Input? LogGroup { get; set; } + [Input("logGroup", required: true)] + public Input LogGroup { get; set; } = null!; public PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs() { diff --git a/sdk/dotnet/Osis/Inputs/PipelineVpcOptionsArgs.cs b/sdk/dotnet/Osis/Inputs/PipelineVpcOptionsArgs.cs index 3ac36c8aa7..19a74c0e85 100644 --- a/sdk/dotnet/Osis/Inputs/PipelineVpcOptionsArgs.cs +++ b/sdk/dotnet/Osis/Inputs/PipelineVpcOptionsArgs.cs @@ -27,7 +27,7 @@ public InputList SecurityGroupIds set => _securityGroupIds = value; } - [Input("subnetIds")] + [Input("subnetIds", required: true)] private InputList? _subnetIds; /// diff --git a/sdk/dotnet/Osis/Outputs/PipelineBufferOptions.cs b/sdk/dotnet/Osis/Outputs/PipelineBufferOptions.cs new file mode 100644 index 0000000000..cac2b10cc6 --- /dev/null +++ b/sdk/dotnet/Osis/Outputs/PipelineBufferOptions.cs @@ -0,0 +1,30 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Osis.Outputs +{ + + /// + /// Key-value pairs to configure buffering. + /// + [OutputType] + public sealed class PipelineBufferOptions + { + /// + /// Whether persistent buffering should be enabled. + /// + public readonly bool PersistentBufferEnabled; + + [OutputConstructor] + private PipelineBufferOptions(bool persistentBufferEnabled) + { + PersistentBufferEnabled = persistentBufferEnabled; + } + } +} diff --git a/sdk/dotnet/Osis/Outputs/PipelineEncryptionAtRestOptions.cs b/sdk/dotnet/Osis/Outputs/PipelineEncryptionAtRestOptions.cs new file mode 100644 index 0000000000..5000502817 --- /dev/null +++ b/sdk/dotnet/Osis/Outputs/PipelineEncryptionAtRestOptions.cs @@ -0,0 +1,30 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.Osis.Outputs +{ + + /// + /// Key-value pairs to configure encryption at rest. + /// + [OutputType] + public sealed class PipelineEncryptionAtRestOptions + { + /// + /// The KMS key to use for encrypting data. By default an AWS owned key is used + /// + public readonly string KmsKeyArn; + + [OutputConstructor] + private PipelineEncryptionAtRestOptions(string kmsKeyArn) + { + KmsKeyArn = kmsKeyArn; + } + } +} diff --git a/sdk/dotnet/Osis/Outputs/PipelineLogPublishingOptionsCloudWatchLogDestinationProperties.cs b/sdk/dotnet/Osis/Outputs/PipelineLogPublishingOptionsCloudWatchLogDestinationProperties.cs index f4afe0297f..9afbefb227 100644 --- a/sdk/dotnet/Osis/Outputs/PipelineLogPublishingOptionsCloudWatchLogDestinationProperties.cs +++ b/sdk/dotnet/Osis/Outputs/PipelineLogPublishingOptionsCloudWatchLogDestinationProperties.cs @@ -16,10 +16,10 @@ namespace Pulumi.AwsNative.Osis.Outputs [OutputType] public sealed class PipelineLogPublishingOptionsCloudWatchLogDestinationProperties { - public readonly string? LogGroup; + public readonly string LogGroup; [OutputConstructor] - private PipelineLogPublishingOptionsCloudWatchLogDestinationProperties(string? logGroup) + private PipelineLogPublishingOptionsCloudWatchLogDestinationProperties(string logGroup) { LogGroup = logGroup; } diff --git a/sdk/dotnet/Osis/Pipeline.cs b/sdk/dotnet/Osis/Pipeline.cs index 0934e4da30..dc70aacf4a 100644 --- a/sdk/dotnet/Osis/Pipeline.cs +++ b/sdk/dotnet/Osis/Pipeline.cs @@ -15,6 +15,12 @@ namespace Pulumi.AwsNative.Osis [AwsNativeResourceType("aws-native:osis:Pipeline")] public partial class Pipeline : global::Pulumi.CustomResource { + [Output("bufferOptions")] + public Output BufferOptions { get; private set; } = null!; + + [Output("encryptionAtRestOptions")] + public Output EncryptionAtRestOptions { get; private set; } = null!; + /// /// A list of endpoints that can be used for ingesting data into a pipeline /// @@ -118,6 +124,12 @@ public static Pipeline Get(string name, Input id, CustomResourceOptions? public sealed class PipelineArgs : global::Pulumi.ResourceArgs { + [Input("bufferOptions")] + public Input? BufferOptions { get; set; } + + [Input("encryptionAtRestOptions")] + public Input? EncryptionAtRestOptions { get; set; } + [Input("logPublishingOptions")] public Input? LogPublishingOptions { get; set; } diff --git a/sdk/dotnet/Route53Resolver/GetResolverConfig.cs b/sdk/dotnet/Route53Resolver/GetResolverConfig.cs index a89b206e1f..14d5449dd7 100644 --- a/sdk/dotnet/Route53Resolver/GetResolverConfig.cs +++ b/sdk/dotnet/Route53Resolver/GetResolverConfig.cs @@ -28,10 +28,10 @@ public static Output Invoke(GetResolverConfigInvokeArgs public sealed class GetResolverConfigArgs : global::Pulumi.InvokeArgs { /// - /// Id + /// ResourceId /// - [Input("id", required: true)] - public string Id { get; set; } = null!; + [Input("resourceId", required: true)] + public string ResourceId { get; set; } = null!; public GetResolverConfigArgs() { @@ -42,10 +42,10 @@ public GetResolverConfigArgs() public sealed class GetResolverConfigInvokeArgs : global::Pulumi.InvokeArgs { /// - /// Id + /// ResourceId /// - [Input("id", required: true)] - public Input Id { get; set; } = null!; + [Input("resourceId", required: true)] + public Input ResourceId { get; set; } = null!; public GetResolverConfigInvokeArgs() { diff --git a/sdk/dotnet/S3/Enums.cs b/sdk/dotnet/S3/Enums.cs index 5fc3e18c00..9de600aa1d 100644 --- a/sdk/dotnet/S3/Enums.cs +++ b/sdk/dotnet/S3/Enums.cs @@ -403,6 +403,9 @@ private BucketInventoryConfigurationOptionalFieldsItem(string value) public static BucketInventoryConfigurationOptionalFieldsItem ObjectLockLegalHoldStatus { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ObjectLockLegalHoldStatus"); public static BucketInventoryConfigurationOptionalFieldsItem IntelligentTieringAccessTier { get; } = new BucketInventoryConfigurationOptionalFieldsItem("IntelligentTieringAccessTier"); public static BucketInventoryConfigurationOptionalFieldsItem BucketKeyStatus { get; } = new BucketInventoryConfigurationOptionalFieldsItem("BucketKeyStatus"); + public static BucketInventoryConfigurationOptionalFieldsItem ChecksumAlgorithm { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ChecksumAlgorithm"); + public static BucketInventoryConfigurationOptionalFieldsItem ObjectAccessControlList { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ObjectAccessControlList"); + public static BucketInventoryConfigurationOptionalFieldsItem ObjectOwner { get; } = new BucketInventoryConfigurationOptionalFieldsItem("ObjectOwner"); public static bool operator ==(BucketInventoryConfigurationOptionalFieldsItem left, BucketInventoryConfigurationOptionalFieldsItem right) => left.Equals(right); public static bool operator !=(BucketInventoryConfigurationOptionalFieldsItem left, BucketInventoryConfigurationOptionalFieldsItem right) => !left.Equals(right); diff --git a/sdk/dotnet/S3/Inputs/BucketLoggingConfigurationArgs.cs b/sdk/dotnet/S3/Inputs/BucketLoggingConfigurationArgs.cs index f9b01ac8b1..8a98e42ec5 100644 --- a/sdk/dotnet/S3/Inputs/BucketLoggingConfigurationArgs.cs +++ b/sdk/dotnet/S3/Inputs/BucketLoggingConfigurationArgs.cs @@ -21,6 +21,9 @@ public sealed class BucketLoggingConfigurationArgs : global::Pulumi.ResourceArgs [Input("logFilePrefix")] public Input? LogFilePrefix { get; set; } + [Input("targetObjectKeyFormat")] + public Input? TargetObjectKeyFormat { get; set; } + public BucketLoggingConfigurationArgs() { } diff --git a/sdk/dotnet/S3/Inputs/BucketTargetObjectKeyFormatArgs.cs b/sdk/dotnet/S3/Inputs/BucketTargetObjectKeyFormatArgs.cs new file mode 100644 index 0000000000..ba9f73a2a9 --- /dev/null +++ b/sdk/dotnet/S3/Inputs/BucketTargetObjectKeyFormatArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 +{ + + /// + /// Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. + /// + public sealed class BucketTargetObjectKeyFormatArgs : global::Pulumi.ResourceArgs + { + public BucketTargetObjectKeyFormatArgs() + { + } + public static new BucketTargetObjectKeyFormatArgs Empty => new BucketTargetObjectKeyFormatArgs(); + } +} diff --git a/sdk/dotnet/S3/Outputs/BucketLoggingConfiguration.cs b/sdk/dotnet/S3/Outputs/BucketLoggingConfiguration.cs index 1378ba68ab..eba60c5b8a 100644 --- a/sdk/dotnet/S3/Outputs/BucketLoggingConfiguration.cs +++ b/sdk/dotnet/S3/Outputs/BucketLoggingConfiguration.cs @@ -18,15 +18,19 @@ public sealed class BucketLoggingConfiguration /// public readonly string? DestinationBucketName; public readonly string? LogFilePrefix; + public readonly Outputs.BucketTargetObjectKeyFormat? TargetObjectKeyFormat; [OutputConstructor] private BucketLoggingConfiguration( string? destinationBucketName, - string? logFilePrefix) + string? logFilePrefix, + + Outputs.BucketTargetObjectKeyFormat? targetObjectKeyFormat) { DestinationBucketName = destinationBucketName; LogFilePrefix = logFilePrefix; + TargetObjectKeyFormat = targetObjectKeyFormat; } } } diff --git a/sdk/dotnet/S3/Outputs/BucketTargetObjectKeyFormat.cs b/sdk/dotnet/S3/Outputs/BucketTargetObjectKeyFormat.cs new file mode 100644 index 0000000000..3b8fea9aba --- /dev/null +++ b/sdk/dotnet/S3/Outputs/BucketTargetObjectKeyFormat.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 +{ + + /// + /// Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. + /// + [OutputType] + public sealed class BucketTargetObjectKeyFormat + { + [OutputConstructor] + private BucketTargetObjectKeyFormat() + { + } + } +} diff --git a/sdk/dotnet/S3Express/DirectoryBucket.cs b/sdk/dotnet/S3Express/DirectoryBucket.cs index 97d2c08811..66eeb1b00b 100644 --- a/sdk/dotnet/S3Express/DirectoryBucket.cs +++ b/sdk/dotnet/S3Express/DirectoryBucket.cs @@ -22,13 +22,13 @@ public partial class DirectoryBucket : global::Pulumi.CustomResource public Output Arn { get; private set; } = null!; /// - /// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + /// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. /// [Output("bucketName")] public Output BucketName { get; private set; } = null!; /// - /// Specifies the number of Avilability Zone that's used for redundancy for the bucket. + /// Specifies the number of Availability Zone that's used for redundancy for the bucket. /// [Output("dataRedundancy")] public Output DataRedundancy { get; private set; } = null!; @@ -91,13 +91,13 @@ public static DirectoryBucket Get(string name, Input id, CustomResourceO public sealed class DirectoryBucketArgs : global::Pulumi.ResourceArgs { /// - /// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + /// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. /// [Input("bucketName")] public Input? BucketName { get; set; } /// - /// Specifies the number of Avilability Zone that's used for redundancy for the bucket. + /// Specifies the number of Availability Zone that's used for redundancy for the bucket. /// [Input("dataRedundancy", required: true)] public Input DataRedundancy { get; set; } = null!; diff --git a/sdk/dotnet/S3Express/Enums.cs b/sdk/dotnet/S3Express/Enums.cs index 8d32832b59..0f099a0984 100644 --- a/sdk/dotnet/S3Express/Enums.cs +++ b/sdk/dotnet/S3Express/Enums.cs @@ -8,7 +8,7 @@ namespace Pulumi.AwsNative.S3Express { /// - /// Specifies the number of Avilability Zone that's used for redundancy for the bucket. + /// Specifies the number of Availability Zone that's used for redundancy for the bucket. /// [EnumType] public readonly struct DirectoryBucketDataRedundancy : IEquatable diff --git a/sdk/dotnet/S3Express/GetDirectoryBucket.cs b/sdk/dotnet/S3Express/GetDirectoryBucket.cs index bc30b4ab5d..52304ad02c 100644 --- a/sdk/dotnet/S3Express/GetDirectoryBucket.cs +++ b/sdk/dotnet/S3Express/GetDirectoryBucket.cs @@ -28,7 +28,7 @@ public static Output Invoke(GetDirectoryBucketInvokeAr public sealed class GetDirectoryBucketArgs : global::Pulumi.InvokeArgs { /// - /// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + /// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. /// [Input("bucketName", required: true)] public string BucketName { get; set; } = null!; @@ -42,7 +42,7 @@ public GetDirectoryBucketArgs() public sealed class GetDirectoryBucketInvokeArgs : global::Pulumi.InvokeArgs { /// - /// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + /// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. /// [Input("bucketName", required: true)] public Input BucketName { get; set; } = null!; diff --git a/sdk/dotnet/SageMaker/Domain.cs b/sdk/dotnet/SageMaker/Domain.cs index fb994b03ae..ee06b8f1cc 100644 --- a/sdk/dotnet/SageMaker/Domain.cs +++ b/sdk/dotnet/SageMaker/Domain.cs @@ -84,6 +84,12 @@ public partial class Domain : global::Pulumi.CustomResource [Output("securityGroupIdForDomainBoundary")] public Output SecurityGroupIdForDomainBoundary { get; private set; } = null!; + /// + /// The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. + /// + [Output("singleSignOnApplicationArn")] + public Output SingleSignOnApplicationArn { get; private set; } = null!; + /// /// The SSO managed application instance ID. /// @@ -139,12 +145,10 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { - "appNetworkAccessType", "authMode", "domainName", "domainSettings.rStudioServerProDomainSettings.defaultResourceSpec", "kmsKeyId", - "subnetIds[*]", "tags[*]", "vpcId", }, diff --git a/sdk/dotnet/SageMaker/Enums.cs b/sdk/dotnet/SageMaker/Enums.cs index c8bf4f318f..d88737307d 100644 --- a/sdk/dotnet/SageMaker/Enums.cs +++ b/sdk/dotnet/SageMaker/Enums.cs @@ -80,6 +80,9 @@ private AppResourceSpecInstanceType(string value) public static AppResourceSpecInstanceType MlP4d24xlarge { get; } = new AppResourceSpecInstanceType("ml.p4d.24xlarge"); public static AppResourceSpecInstanceType MlP4de24xlarge { get; } = new AppResourceSpecInstanceType("ml.p4de.24xlarge"); public static AppResourceSpecInstanceType MlGeospatialInteractive { get; } = new AppResourceSpecInstanceType("ml.geospatial.interactive"); + public static AppResourceSpecInstanceType MlTrn12xlarge { get; } = new AppResourceSpecInstanceType("ml.trn1.2xlarge"); + public static AppResourceSpecInstanceType MlTrn132xlarge { get; } = new AppResourceSpecInstanceType("ml.trn1.32xlarge"); + public static AppResourceSpecInstanceType MlTrn1n32xlarge { get; } = new AppResourceSpecInstanceType("ml.trn1n.32xlarge"); public static bool operator ==(AppResourceSpecInstanceType left, AppResourceSpecInstanceType right) => left.Equals(right); public static bool operator !=(AppResourceSpecInstanceType left, AppResourceSpecInstanceType right) => !left.Equals(right); @@ -513,6 +516,9 @@ private DomainResourceSpecInstanceType(string value) public static DomainResourceSpecInstanceType MlP4d24xlarge { get; } = new DomainResourceSpecInstanceType("ml.p4d.24xlarge"); public static DomainResourceSpecInstanceType MlP4de24xlarge { get; } = new DomainResourceSpecInstanceType("ml.p4de.24xlarge"); public static DomainResourceSpecInstanceType MlGeospatialInteractive { get; } = new DomainResourceSpecInstanceType("ml.geospatial.interactive"); + public static DomainResourceSpecInstanceType MlTrn12xlarge { get; } = new DomainResourceSpecInstanceType("ml.trn1.2xlarge"); + public static DomainResourceSpecInstanceType MlTrn132xlarge { get; } = new DomainResourceSpecInstanceType("ml.trn1.32xlarge"); + public static DomainResourceSpecInstanceType MlTrn1n32xlarge { get; } = new DomainResourceSpecInstanceType("ml.trn1n.32xlarge"); public static bool operator ==(DomainResourceSpecInstanceType left, DomainResourceSpecInstanceType right) => left.Equals(right); public static bool operator !=(DomainResourceSpecInstanceType left, DomainResourceSpecInstanceType right) => !left.Equals(right); @@ -560,6 +566,37 @@ private DomainSharingSettingsNotebookOutputOption(string value) public override string ToString() => _value; } + /// + /// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + /// + [EnumType] + public readonly struct DomainUserSettingsStudioWebPortal : IEquatable + { + private readonly string _value; + + private DomainUserSettingsStudioWebPortal(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static DomainUserSettingsStudioWebPortal Enabled { get; } = new DomainUserSettingsStudioWebPortal("ENABLED"); + public static DomainUserSettingsStudioWebPortal Disabled { get; } = new DomainUserSettingsStudioWebPortal("DISABLED"); + + public static bool operator ==(DomainUserSettingsStudioWebPortal left, DomainUserSettingsStudioWebPortal right) => left.Equals(right); + public static bool operator !=(DomainUserSettingsStudioWebPortal left, DomainUserSettingsStudioWebPortal right) => !left.Equals(right); + + public static explicit operator string(DomainUserSettingsStudioWebPortal value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is DomainUserSettingsStudioWebPortal other && Equals(other); + public bool Equals(DomainUserSettingsStudioWebPortal 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 FeatureGroupFeatureDefinitionFeatureType : IEquatable { @@ -589,6 +626,34 @@ private FeatureGroupFeatureDefinitionFeatureType(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct FeatureGroupStorageType : IEquatable + { + private readonly string _value; + + private FeatureGroupStorageType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FeatureGroupStorageType Standard { get; } = new FeatureGroupStorageType("Standard"); + public static FeatureGroupStorageType InMemory { get; } = new FeatureGroupStorageType("InMemory"); + + public static bool operator ==(FeatureGroupStorageType left, FeatureGroupStorageType right) => left.Equals(right); + public static bool operator !=(FeatureGroupStorageType left, FeatureGroupStorageType right) => !left.Equals(right); + + public static explicit operator string(FeatureGroupStorageType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FeatureGroupStorageType other && Equals(other); + public bool Equals(FeatureGroupStorageType other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// Format for the offline store feature group. Iceberg is the optimal format for feature groups shared between offline and online stores. /// @@ -2556,6 +2621,9 @@ private UserProfileResourceSpecInstanceType(string value) public static UserProfileResourceSpecInstanceType MlP4d24xlarge { get; } = new UserProfileResourceSpecInstanceType("ml.p4d.24xlarge"); public static UserProfileResourceSpecInstanceType MlP4de24xlarge { get; } = new UserProfileResourceSpecInstanceType("ml.p4de.24xlarge"); public static UserProfileResourceSpecInstanceType MlGeospatialInteractive { get; } = new UserProfileResourceSpecInstanceType("ml.geospatial.interactive"); + public static UserProfileResourceSpecInstanceType MlTrn12xlarge { get; } = new UserProfileResourceSpecInstanceType("ml.trn1.2xlarge"); + public static UserProfileResourceSpecInstanceType MlTrn132xlarge { get; } = new UserProfileResourceSpecInstanceType("ml.trn1.32xlarge"); + public static UserProfileResourceSpecInstanceType MlTrn1n32xlarge { get; } = new UserProfileResourceSpecInstanceType("ml.trn1n.32xlarge"); public static bool operator ==(UserProfileResourceSpecInstanceType left, UserProfileResourceSpecInstanceType right) => left.Equals(right); public static bool operator !=(UserProfileResourceSpecInstanceType left, UserProfileResourceSpecInstanceType right) => !left.Equals(right); @@ -2602,4 +2670,35 @@ private UserProfileSharingSettingsNotebookOutputOption(string value) public override string ToString() => _value; } + + /// + /// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + /// + [EnumType] + public readonly struct UserProfileUserSettingsStudioWebPortal : IEquatable + { + private readonly string _value; + + private UserProfileUserSettingsStudioWebPortal(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static UserProfileUserSettingsStudioWebPortal Enabled { get; } = new UserProfileUserSettingsStudioWebPortal("ENABLED"); + public static UserProfileUserSettingsStudioWebPortal Disabled { get; } = new UserProfileUserSettingsStudioWebPortal("DISABLED"); + + public static bool operator ==(UserProfileUserSettingsStudioWebPortal left, UserProfileUserSettingsStudioWebPortal right) => left.Equals(right); + public static bool operator !=(UserProfileUserSettingsStudioWebPortal left, UserProfileUserSettingsStudioWebPortal right) => !left.Equals(right); + + public static explicit operator string(UserProfileUserSettingsStudioWebPortal value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is UserProfileUserSettingsStudioWebPortal other && Equals(other); + public bool Equals(UserProfileUserSettingsStudioWebPortal 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/SageMaker/GetDomain.cs b/sdk/dotnet/SageMaker/GetDomain.cs index 50377b87c5..76b0be4be9 100644 --- a/sdk/dotnet/SageMaker/GetDomain.cs +++ b/sdk/dotnet/SageMaker/GetDomain.cs @@ -57,6 +57,10 @@ public GetDomainInvokeArgs() [OutputType] public sealed class GetDomainResult { + /// + /// Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly. + /// + public readonly Pulumi.AwsNative.SageMaker.DomainAppNetworkAccessType? AppNetworkAccessType; /// /// The entity that creates and manages the required security groups for inter-app communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided. /// @@ -87,16 +91,26 @@ public sealed class GetDomainResult /// public readonly string? SecurityGroupIdForDomainBoundary; /// + /// The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. + /// + public readonly string? SingleSignOnApplicationArn; + /// /// The SSO managed application instance ID. /// public readonly string? SingleSignOnManagedApplicationInstanceId; /// + /// The VPC subnets that Studio uses for communication. + /// + public readonly ImmutableArray SubnetIds; + /// /// The URL to the created domain. /// public readonly string? Url; [OutputConstructor] private GetDomainResult( + Pulumi.AwsNative.SageMaker.DomainAppNetworkAccessType? appNetworkAccessType, + Pulumi.AwsNative.SageMaker.DomainAppSecurityGroupManagement? appSecurityGroupManagement, Outputs.DomainDefaultSpaceSettings? defaultSpaceSettings, @@ -113,10 +127,15 @@ private GetDomainResult( string? securityGroupIdForDomainBoundary, + string? singleSignOnApplicationArn, + string? singleSignOnManagedApplicationInstanceId, + ImmutableArray subnetIds, + string? url) { + AppNetworkAccessType = appNetworkAccessType; AppSecurityGroupManagement = appSecurityGroupManagement; DefaultSpaceSettings = defaultSpaceSettings; DefaultUserSettings = defaultUserSettings; @@ -125,7 +144,9 @@ private GetDomainResult( DomainSettings = domainSettings; HomeEfsFileSystemId = homeEfsFileSystemId; SecurityGroupIdForDomainBoundary = securityGroupIdForDomainBoundary; + SingleSignOnApplicationArn = singleSignOnApplicationArn; SingleSignOnManagedApplicationInstanceId = singleSignOnManagedApplicationInstanceId; + SubnetIds = subnetIds; Url = url; } } diff --git a/sdk/dotnet/SageMaker/Inputs/DomainCodeEditorAppSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainCodeEditorAppSettingsArgs.cs new file mode 100644 index 0000000000..94053d4003 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/DomainCodeEditorAppSettingsArgs.cs @@ -0,0 +1,41 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + /// + /// The CodeEditor app settings. + /// + public sealed class DomainCodeEditorAppSettingsArgs : global::Pulumi.ResourceArgs + { + /// + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + /// + [Input("defaultResourceSpec")] + public Input? DefaultResourceSpec { get; set; } + + [Input("lifecycleConfigArns")] + private InputList? _lifecycleConfigArns; + + /// + /// A list of LifecycleConfigArns available for use with CodeEditor apps. + /// + public InputList LifecycleConfigArns + { + get => _lifecycleConfigArns ?? (_lifecycleConfigArns = new InputList()); + set => _lifecycleConfigArns = value; + } + + public DomainCodeEditorAppSettingsArgs() + { + } + public static new DomainCodeEditorAppSettingsArgs Empty => new DomainCodeEditorAppSettingsArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/DomainCodeRepositoryArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainCodeRepositoryArgs.cs new file mode 100644 index 0000000000..74411a5b20 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/DomainCodeRepositoryArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + public sealed class DomainCodeRepositoryArgs : global::Pulumi.ResourceArgs + { + /// + /// A CodeRepository (valid URL) to be used within Jupyter's Git extension. + /// + [Input("repositoryUrl", required: true)] + public Input RepositoryUrl { get; set; } = null!; + + public DomainCodeRepositoryArgs() + { + } + public static new DomainCodeRepositoryArgs Empty => new DomainCodeRepositoryArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/DomainCustomFileSystemConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainCustomFileSystemConfigArgs.cs new file mode 100644 index 0000000000..840f861371 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/DomainCustomFileSystemConfigArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + public sealed class DomainCustomFileSystemConfigArgs : global::Pulumi.ResourceArgs + { + [Input("efsFileSystemConfig")] + public Input? EfsFileSystemConfig { get; set; } + + public DomainCustomFileSystemConfigArgs() + { + } + public static new DomainCustomFileSystemConfigArgs Empty => new DomainCustomFileSystemConfigArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/DomainCustomPosixUserConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainCustomPosixUserConfigArgs.cs new file mode 100644 index 0000000000..cfe35a6e04 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/DomainCustomPosixUserConfigArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + public sealed class DomainCustomPosixUserConfigArgs : global::Pulumi.ResourceArgs + { + [Input("gid", required: true)] + public Input Gid { get; set; } = null!; + + [Input("uid", required: true)] + public Input Uid { get; set; } = null!; + + public DomainCustomPosixUserConfigArgs() + { + } + public static new DomainCustomPosixUserConfigArgs Empty => new DomainCustomPosixUserConfigArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/DomainDefaultEbsStorageSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainDefaultEbsStorageSettingsArgs.cs new file mode 100644 index 0000000000..fafdbb4a6f --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/DomainDefaultEbsStorageSettingsArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + /// + /// Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS + /// + public sealed class DomainDefaultEbsStorageSettingsArgs : global::Pulumi.ResourceArgs + { + /// + /// Default size of the Amazon EBS volume in Gb + /// + [Input("defaultEbsVolumeSizeInGb", required: true)] + public Input DefaultEbsVolumeSizeInGb { get; set; } = null!; + + /// + /// Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + /// + [Input("maximumEbsVolumeSizeInGb", required: true)] + public Input MaximumEbsVolumeSizeInGb { get; set; } = null!; + + public DomainDefaultEbsStorageSettingsArgs() + { + } + public static new DomainDefaultEbsStorageSettingsArgs Empty => new DomainDefaultEbsStorageSettingsArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/DomainDefaultSpaceStorageSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainDefaultSpaceStorageSettingsArgs.cs new file mode 100644 index 0000000000..9464fc502b --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/DomainDefaultSpaceStorageSettingsArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + /// + /// Default storage settings for a space. + /// + public sealed class DomainDefaultSpaceStorageSettingsArgs : global::Pulumi.ResourceArgs + { + [Input("defaultEbsStorageSettings")] + public Input? DefaultEbsStorageSettings { get; set; } + + public DomainDefaultSpaceStorageSettingsArgs() + { + } + public static new DomainDefaultSpaceStorageSettingsArgs Empty => new DomainDefaultSpaceStorageSettingsArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/DomainEfsFileSystemConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainEfsFileSystemConfigArgs.cs new file mode 100644 index 0000000000..c3f6a383a6 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/DomainEfsFileSystemConfigArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + public sealed class DomainEfsFileSystemConfigArgs : global::Pulumi.ResourceArgs + { + [Input("fileSystemId", required: true)] + public Input FileSystemId { get; set; } = null!; + + [Input("fileSystemPath")] + public Input? FileSystemPath { get; set; } + + public DomainEfsFileSystemConfigArgs() + { + } + public static new DomainEfsFileSystemConfigArgs Empty => new DomainEfsFileSystemConfigArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/DomainJupyterLabAppSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainJupyterLabAppSettingsArgs.cs new file mode 100644 index 0000000000..4fc603f357 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/DomainJupyterLabAppSettingsArgs.cs @@ -0,0 +1,65 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + /// + /// The JupyterLab app settings. + /// + public sealed class DomainJupyterLabAppSettingsArgs : global::Pulumi.ResourceArgs + { + [Input("codeRepositories")] + private InputList? _codeRepositories; + + /// + /// A list of CodeRepositories available for use with JupyterLab apps. + /// + public InputList CodeRepositories + { + get => _codeRepositories ?? (_codeRepositories = new InputList()); + set => _codeRepositories = value; + } + + [Input("customImages")] + private InputList? _customImages; + + /// + /// A list of custom images for use for JupyterLab apps. + /// + public InputList CustomImages + { + get => _customImages ?? (_customImages = new InputList()); + set => _customImages = value; + } + + /// + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + /// + [Input("defaultResourceSpec")] + public Input? DefaultResourceSpec { get; set; } + + [Input("lifecycleConfigArns")] + private InputList? _lifecycleConfigArns; + + /// + /// A list of LifecycleConfigArns available for use with JupyterLab apps. + /// + public InputList LifecycleConfigArns + { + get => _lifecycleConfigArns ?? (_lifecycleConfigArns = new InputList()); + set => _lifecycleConfigArns = value; + } + + public DomainJupyterLabAppSettingsArgs() + { + } + public static new DomainJupyterLabAppSettingsArgs Empty => new DomainJupyterLabAppSettingsArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/DomainUserSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/DomainUserSettingsArgs.cs index a5d101d5e9..dfe1aa76be 100644 --- a/sdk/dotnet/SageMaker/Inputs/DomainUserSettingsArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/DomainUserSettingsArgs.cs @@ -15,12 +15,35 @@ namespace Pulumi.AwsNative.SageMaker.Inputs /// public sealed class DomainUserSettingsArgs : global::Pulumi.ResourceArgs { + [Input("codeEditorAppSettings")] + public Input? CodeEditorAppSettings { get; set; } + + [Input("customFileSystemConfigs")] + private InputList? _customFileSystemConfigs; + public InputList CustomFileSystemConfigs + { + get => _customFileSystemConfigs ?? (_customFileSystemConfigs = new InputList()); + set => _customFileSystemConfigs = value; + } + + [Input("customPosixUserConfig")] + public Input? CustomPosixUserConfig { get; set; } + + /// + /// Defines which Amazon SageMaker application users are directed to by default. + /// + [Input("defaultLandingUri")] + public Input? DefaultLandingUri { get; set; } + /// /// The execution role for the user. /// [Input("executionRole", required: true)] public Input ExecutionRole { get; set; } = null!; + [Input("jupyterLabAppSettings")] + public Input? JupyterLabAppSettings { get; set; } + /// /// The Jupyter server's app settings. /// @@ -57,6 +80,15 @@ public InputList SecurityGroups [Input("sharingSettings")] public Input? SharingSettings { get; set; } + [Input("spaceStorageSettings")] + public Input? SpaceStorageSettings { get; set; } + + /// + /// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + /// + [Input("studioWebPortal")] + public Input? StudioWebPortal { get; set; } + public DomainUserSettingsArgs() { } diff --git a/sdk/dotnet/SageMaker/Inputs/OnlineStoreConfigPropertiesArgs.cs b/sdk/dotnet/SageMaker/Inputs/OnlineStoreConfigPropertiesArgs.cs index 4f7f14a54a..1ef8ba6264 100644 --- a/sdk/dotnet/SageMaker/Inputs/OnlineStoreConfigPropertiesArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/OnlineStoreConfigPropertiesArgs.cs @@ -18,6 +18,9 @@ public sealed class OnlineStoreConfigPropertiesArgs : global::Pulumi.ResourceArg [Input("securityConfig")] public Input? SecurityConfig { get; set; } + [Input("storageType")] + public Input? StorageType { get; set; } + public OnlineStoreConfigPropertiesArgs() { } diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileCodeEditorAppSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileCodeEditorAppSettingsArgs.cs new file mode 100644 index 0000000000..59b5b2bf96 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileCodeEditorAppSettingsArgs.cs @@ -0,0 +1,41 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + /// + /// The CodeEditor app settings. + /// + public sealed class UserProfileCodeEditorAppSettingsArgs : global::Pulumi.ResourceArgs + { + /// + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + /// + [Input("defaultResourceSpec")] + public Input? DefaultResourceSpec { get; set; } + + [Input("lifecycleConfigArns")] + private InputList? _lifecycleConfigArns; + + /// + /// A list of LifecycleConfigArns available for use with CodeEditor apps. + /// + public InputList LifecycleConfigArns + { + get => _lifecycleConfigArns ?? (_lifecycleConfigArns = new InputList()); + set => _lifecycleConfigArns = value; + } + + public UserProfileCodeEditorAppSettingsArgs() + { + } + public static new UserProfileCodeEditorAppSettingsArgs Empty => new UserProfileCodeEditorAppSettingsArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileCodeRepositoryArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileCodeRepositoryArgs.cs new file mode 100644 index 0000000000..b869ecc2d1 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileCodeRepositoryArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + public sealed class UserProfileCodeRepositoryArgs : global::Pulumi.ResourceArgs + { + /// + /// A CodeRepository (valid URL) to be used within Jupyter's Git extension. + /// + [Input("repositoryUrl", required: true)] + public Input RepositoryUrl { get; set; } = null!; + + public UserProfileCodeRepositoryArgs() + { + } + public static new UserProfileCodeRepositoryArgs Empty => new UserProfileCodeRepositoryArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileCustomFileSystemConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileCustomFileSystemConfigArgs.cs new file mode 100644 index 0000000000..f98a1710f0 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileCustomFileSystemConfigArgs.cs @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + public sealed class UserProfileCustomFileSystemConfigArgs : global::Pulumi.ResourceArgs + { + [Input("efsFileSystemConfig")] + public Input? EfsFileSystemConfig { get; set; } + + public UserProfileCustomFileSystemConfigArgs() + { + } + public static new UserProfileCustomFileSystemConfigArgs Empty => new UserProfileCustomFileSystemConfigArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileCustomPosixUserConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileCustomPosixUserConfigArgs.cs new file mode 100644 index 0000000000..98ae5da163 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileCustomPosixUserConfigArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + public sealed class UserProfileCustomPosixUserConfigArgs : global::Pulumi.ResourceArgs + { + [Input("gid", required: true)] + public Input Gid { get; set; } = null!; + + [Input("uid", required: true)] + public Input Uid { get; set; } = null!; + + public UserProfileCustomPosixUserConfigArgs() + { + } + public static new UserProfileCustomPosixUserConfigArgs Empty => new UserProfileCustomPosixUserConfigArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileDefaultEbsStorageSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileDefaultEbsStorageSettingsArgs.cs new file mode 100644 index 0000000000..5de12a99eb --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileDefaultEbsStorageSettingsArgs.cs @@ -0,0 +1,35 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + /// + /// Properties related to the Amazon Elastic Block Store volume. + /// + public sealed class UserProfileDefaultEbsStorageSettingsArgs : global::Pulumi.ResourceArgs + { + /// + /// Default size of the Amazon EBS volume in Gb + /// + [Input("defaultEbsVolumeSizeInGb", required: true)] + public Input DefaultEbsVolumeSizeInGb { get; set; } = null!; + + /// + /// Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + /// + [Input("maximumEbsVolumeSizeInGb", required: true)] + public Input MaximumEbsVolumeSizeInGb { get; set; } = null!; + + public UserProfileDefaultEbsStorageSettingsArgs() + { + } + public static new UserProfileDefaultEbsStorageSettingsArgs Empty => new UserProfileDefaultEbsStorageSettingsArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileDefaultSpaceStorageSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileDefaultSpaceStorageSettingsArgs.cs new file mode 100644 index 0000000000..182b930177 --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileDefaultSpaceStorageSettingsArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + /// + /// Default storage settings for a space. + /// + public sealed class UserProfileDefaultSpaceStorageSettingsArgs : global::Pulumi.ResourceArgs + { + [Input("defaultEbsStorageSettings")] + public Input? DefaultEbsStorageSettings { get; set; } + + public UserProfileDefaultSpaceStorageSettingsArgs() + { + } + public static new UserProfileDefaultSpaceStorageSettingsArgs Empty => new UserProfileDefaultSpaceStorageSettingsArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileEfsFileSystemConfigArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileEfsFileSystemConfigArgs.cs new file mode 100644 index 0000000000..1b86c0945f --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileEfsFileSystemConfigArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + public sealed class UserProfileEfsFileSystemConfigArgs : global::Pulumi.ResourceArgs + { + [Input("fileSystemId", required: true)] + public Input FileSystemId { get; set; } = null!; + + [Input("fileSystemPath")] + public Input? FileSystemPath { get; set; } + + public UserProfileEfsFileSystemConfigArgs() + { + } + public static new UserProfileEfsFileSystemConfigArgs Empty => new UserProfileEfsFileSystemConfigArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileJupyterLabAppSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileJupyterLabAppSettingsArgs.cs new file mode 100644 index 0000000000..641e16443b --- /dev/null +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileJupyterLabAppSettingsArgs.cs @@ -0,0 +1,65 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Inputs +{ + + /// + /// The JupyterLab app settings. + /// + public sealed class UserProfileJupyterLabAppSettingsArgs : global::Pulumi.ResourceArgs + { + [Input("codeRepositories")] + private InputList? _codeRepositories; + + /// + /// A list of CodeRepositories available for use with JupyterLab apps. + /// + public InputList CodeRepositories + { + get => _codeRepositories ?? (_codeRepositories = new InputList()); + set => _codeRepositories = value; + } + + [Input("customImages")] + private InputList? _customImages; + + /// + /// A list of custom images available for use for JupyterLab apps + /// + public InputList CustomImages + { + get => _customImages ?? (_customImages = new InputList()); + set => _customImages = value; + } + + /// + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + /// + [Input("defaultResourceSpec")] + public Input? DefaultResourceSpec { get; set; } + + [Input("lifecycleConfigArns")] + private InputList? _lifecycleConfigArns; + + /// + /// A list of LifecycleConfigArns available for use with JupyterLab apps. + /// + public InputList LifecycleConfigArns + { + get => _lifecycleConfigArns ?? (_lifecycleConfigArns = new InputList()); + set => _lifecycleConfigArns = value; + } + + public UserProfileJupyterLabAppSettingsArgs() + { + } + public static new UserProfileJupyterLabAppSettingsArgs Empty => new UserProfileJupyterLabAppSettingsArgs(); + } +} diff --git a/sdk/dotnet/SageMaker/Inputs/UserProfileUserSettingsArgs.cs b/sdk/dotnet/SageMaker/Inputs/UserProfileUserSettingsArgs.cs index ddaa7d5d0f..3d84d5cc17 100644 --- a/sdk/dotnet/SageMaker/Inputs/UserProfileUserSettingsArgs.cs +++ b/sdk/dotnet/SageMaker/Inputs/UserProfileUserSettingsArgs.cs @@ -15,12 +15,35 @@ namespace Pulumi.AwsNative.SageMaker.Inputs /// public sealed class UserProfileUserSettingsArgs : global::Pulumi.ResourceArgs { + [Input("codeEditorAppSettings")] + public Input? CodeEditorAppSettings { get; set; } + + [Input("customFileSystemConfigs")] + private InputList? _customFileSystemConfigs; + public InputList CustomFileSystemConfigs + { + get => _customFileSystemConfigs ?? (_customFileSystemConfigs = new InputList()); + set => _customFileSystemConfigs = value; + } + + [Input("customPosixUserConfig")] + public Input? CustomPosixUserConfig { get; set; } + + /// + /// Defines which Amazon SageMaker application users are directed to by default. + /// + [Input("defaultLandingUri")] + public Input? DefaultLandingUri { get; set; } + /// /// The user profile Amazon Resource Name (ARN). /// [Input("executionRole")] public Input? ExecutionRole { get; set; } + [Input("jupyterLabAppSettings")] + public Input? JupyterLabAppSettings { get; set; } + /// /// The Jupyter server's app settings. /// @@ -54,6 +77,15 @@ public InputList SecurityGroups [Input("sharingSettings")] public Input? SharingSettings { get; set; } + [Input("spaceStorageSettings")] + public Input? SpaceStorageSettings { get; set; } + + /// + /// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + /// + [Input("studioWebPortal")] + public Input? StudioWebPortal { get; set; } + public UserProfileUserSettingsArgs() { } diff --git a/sdk/dotnet/SageMaker/Outputs/DomainCodeEditorAppSettings.cs b/sdk/dotnet/SageMaker/Outputs/DomainCodeEditorAppSettings.cs new file mode 100644 index 0000000000..9b9d854127 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/DomainCodeEditorAppSettings.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + /// + /// The CodeEditor app settings. + /// + [OutputType] + public sealed class DomainCodeEditorAppSettings + { + /// + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + /// + public readonly Outputs.DomainResourceSpec? DefaultResourceSpec; + /// + /// A list of LifecycleConfigArns available for use with CodeEditor apps. + /// + public readonly ImmutableArray LifecycleConfigArns; + + [OutputConstructor] + private DomainCodeEditorAppSettings( + Outputs.DomainResourceSpec? defaultResourceSpec, + + ImmutableArray lifecycleConfigArns) + { + DefaultResourceSpec = defaultResourceSpec; + LifecycleConfigArns = lifecycleConfigArns; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/DomainCodeRepository.cs b/sdk/dotnet/SageMaker/Outputs/DomainCodeRepository.cs new file mode 100644 index 0000000000..bbdefb7116 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/DomainCodeRepository.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + [OutputType] + public sealed class DomainCodeRepository + { + /// + /// A CodeRepository (valid URL) to be used within Jupyter's Git extension. + /// + public readonly string RepositoryUrl; + + [OutputConstructor] + private DomainCodeRepository(string repositoryUrl) + { + RepositoryUrl = repositoryUrl; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/DomainCustomFileSystemConfig.cs b/sdk/dotnet/SageMaker/Outputs/DomainCustomFileSystemConfig.cs new file mode 100644 index 0000000000..cca23715b2 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/DomainCustomFileSystemConfig.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + [OutputType] + public sealed class DomainCustomFileSystemConfig + { + public readonly Outputs.DomainEfsFileSystemConfig? EfsFileSystemConfig; + + [OutputConstructor] + private DomainCustomFileSystemConfig(Outputs.DomainEfsFileSystemConfig? efsFileSystemConfig) + { + EfsFileSystemConfig = efsFileSystemConfig; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/DomainCustomPosixUserConfig.cs b/sdk/dotnet/SageMaker/Outputs/DomainCustomPosixUserConfig.cs new file mode 100644 index 0000000000..d8f42e6e6f --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/DomainCustomPosixUserConfig.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + [OutputType] + public sealed class DomainCustomPosixUserConfig + { + public readonly int Gid; + public readonly int Uid; + + [OutputConstructor] + private DomainCustomPosixUserConfig( + int gid, + + int uid) + { + Gid = gid; + Uid = uid; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/DomainDefaultEbsStorageSettings.cs b/sdk/dotnet/SageMaker/Outputs/DomainDefaultEbsStorageSettings.cs new file mode 100644 index 0000000000..75d2ffd927 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/DomainDefaultEbsStorageSettings.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + /// + /// Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS + /// + [OutputType] + public sealed class DomainDefaultEbsStorageSettings + { + /// + /// Default size of the Amazon EBS volume in Gb + /// + public readonly int DefaultEbsVolumeSizeInGb; + /// + /// Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + /// + public readonly int MaximumEbsVolumeSizeInGb; + + [OutputConstructor] + private DomainDefaultEbsStorageSettings( + int defaultEbsVolumeSizeInGb, + + int maximumEbsVolumeSizeInGb) + { + DefaultEbsVolumeSizeInGb = defaultEbsVolumeSizeInGb; + MaximumEbsVolumeSizeInGb = maximumEbsVolumeSizeInGb; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/DomainDefaultSpaceStorageSettings.cs b/sdk/dotnet/SageMaker/Outputs/DomainDefaultSpaceStorageSettings.cs new file mode 100644 index 0000000000..3f55330647 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/DomainDefaultSpaceStorageSettings.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + /// + /// Default storage settings for a space. + /// + [OutputType] + public sealed class DomainDefaultSpaceStorageSettings + { + public readonly Outputs.DomainDefaultEbsStorageSettings? DefaultEbsStorageSettings; + + [OutputConstructor] + private DomainDefaultSpaceStorageSettings(Outputs.DomainDefaultEbsStorageSettings? defaultEbsStorageSettings) + { + DefaultEbsStorageSettings = defaultEbsStorageSettings; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/DomainEfsFileSystemConfig.cs b/sdk/dotnet/SageMaker/Outputs/DomainEfsFileSystemConfig.cs new file mode 100644 index 0000000000..fd9449ccbc --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/DomainEfsFileSystemConfig.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + [OutputType] + public sealed class DomainEfsFileSystemConfig + { + public readonly string FileSystemId; + public readonly string? FileSystemPath; + + [OutputConstructor] + private DomainEfsFileSystemConfig( + string fileSystemId, + + string? fileSystemPath) + { + FileSystemId = fileSystemId; + FileSystemPath = fileSystemPath; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/DomainJupyterLabAppSettings.cs b/sdk/dotnet/SageMaker/Outputs/DomainJupyterLabAppSettings.cs new file mode 100644 index 0000000000..53ef16f982 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/DomainJupyterLabAppSettings.cs @@ -0,0 +1,52 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + /// + /// The JupyterLab app settings. + /// + [OutputType] + public sealed class DomainJupyterLabAppSettings + { + /// + /// A list of CodeRepositories available for use with JupyterLab apps. + /// + public readonly ImmutableArray CodeRepositories; + /// + /// A list of custom images for use for JupyterLab apps. + /// + public readonly ImmutableArray CustomImages; + /// + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + /// + public readonly Outputs.DomainResourceSpec? DefaultResourceSpec; + /// + /// A list of LifecycleConfigArns available for use with JupyterLab apps. + /// + public readonly ImmutableArray LifecycleConfigArns; + + [OutputConstructor] + private DomainJupyterLabAppSettings( + ImmutableArray codeRepositories, + + ImmutableArray customImages, + + Outputs.DomainResourceSpec? defaultResourceSpec, + + ImmutableArray lifecycleConfigArns) + { + CodeRepositories = codeRepositories; + CustomImages = customImages; + DefaultResourceSpec = defaultResourceSpec; + LifecycleConfigArns = lifecycleConfigArns; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/DomainUserSettings.cs b/sdk/dotnet/SageMaker/Outputs/DomainUserSettings.cs index d2282eb56f..b1df1d9c40 100644 --- a/sdk/dotnet/SageMaker/Outputs/DomainUserSettings.cs +++ b/sdk/dotnet/SageMaker/Outputs/DomainUserSettings.cs @@ -16,10 +16,18 @@ namespace Pulumi.AwsNative.SageMaker.Outputs [OutputType] public sealed class DomainUserSettings { + public readonly Outputs.DomainCodeEditorAppSettings? CodeEditorAppSettings; + public readonly ImmutableArray CustomFileSystemConfigs; + public readonly Outputs.DomainCustomPosixUserConfig? CustomPosixUserConfig; + /// + /// Defines which Amazon SageMaker application users are directed to by default. + /// + public readonly string? DefaultLandingUri; /// /// The execution role for the user. /// public readonly string ExecutionRole; + public readonly Outputs.DomainJupyterLabAppSettings? JupyterLabAppSettings; /// /// The Jupyter server's app settings. /// @@ -38,11 +46,26 @@ public sealed class DomainUserSettings /// The sharing settings. /// public readonly Outputs.DomainSharingSettings? SharingSettings; + public readonly Outputs.DomainDefaultSpaceStorageSettings? SpaceStorageSettings; + /// + /// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + /// + public readonly Pulumi.AwsNative.SageMaker.DomainUserSettingsStudioWebPortal? StudioWebPortal; [OutputConstructor] private DomainUserSettings( + Outputs.DomainCodeEditorAppSettings? codeEditorAppSettings, + + ImmutableArray customFileSystemConfigs, + + Outputs.DomainCustomPosixUserConfig? customPosixUserConfig, + + string? defaultLandingUri, + string executionRole, + Outputs.DomainJupyterLabAppSettings? jupyterLabAppSettings, + Outputs.DomainJupyterServerAppSettings? jupyterServerAppSettings, Outputs.DomainKernelGatewayAppSettings? kernelGatewayAppSettings, @@ -53,15 +76,26 @@ private DomainUserSettings( ImmutableArray securityGroups, - Outputs.DomainSharingSettings? sharingSettings) + Outputs.DomainSharingSettings? sharingSettings, + + Outputs.DomainDefaultSpaceStorageSettings? spaceStorageSettings, + + Pulumi.AwsNative.SageMaker.DomainUserSettingsStudioWebPortal? studioWebPortal) { + CodeEditorAppSettings = codeEditorAppSettings; + CustomFileSystemConfigs = customFileSystemConfigs; + CustomPosixUserConfig = customPosixUserConfig; + DefaultLandingUri = defaultLandingUri; ExecutionRole = executionRole; + JupyterLabAppSettings = jupyterLabAppSettings; JupyterServerAppSettings = jupyterServerAppSettings; KernelGatewayAppSettings = kernelGatewayAppSettings; RSessionAppSettings = rSessionAppSettings; RStudioServerProAppSettings = rStudioServerProAppSettings; SecurityGroups = securityGroups; SharingSettings = sharingSettings; + SpaceStorageSettings = spaceStorageSettings; + StudioWebPortal = studioWebPortal; } } } diff --git a/sdk/dotnet/SageMaker/Outputs/OnlineStoreConfigProperties.cs b/sdk/dotnet/SageMaker/Outputs/OnlineStoreConfigProperties.cs index feb1a6b12f..08a2f41af1 100644 --- a/sdk/dotnet/SageMaker/Outputs/OnlineStoreConfigProperties.cs +++ b/sdk/dotnet/SageMaker/Outputs/OnlineStoreConfigProperties.cs @@ -15,15 +15,19 @@ public sealed class OnlineStoreConfigProperties { public readonly bool? EnableOnlineStore; public readonly Outputs.FeatureGroupOnlineStoreSecurityConfig? SecurityConfig; + public readonly Pulumi.AwsNative.SageMaker.FeatureGroupStorageType? StorageType; [OutputConstructor] private OnlineStoreConfigProperties( bool? enableOnlineStore, - Outputs.FeatureGroupOnlineStoreSecurityConfig? securityConfig) + Outputs.FeatureGroupOnlineStoreSecurityConfig? securityConfig, + + Pulumi.AwsNative.SageMaker.FeatureGroupStorageType? storageType) { EnableOnlineStore = enableOnlineStore; SecurityConfig = securityConfig; + StorageType = storageType; } } } diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileCodeEditorAppSettings.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileCodeEditorAppSettings.cs new file mode 100644 index 0000000000..e1c7f32826 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileCodeEditorAppSettings.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + /// + /// The CodeEditor app settings. + /// + [OutputType] + public sealed class UserProfileCodeEditorAppSettings + { + /// + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + /// + public readonly Outputs.UserProfileResourceSpec? DefaultResourceSpec; + /// + /// A list of LifecycleConfigArns available for use with CodeEditor apps. + /// + public readonly ImmutableArray LifecycleConfigArns; + + [OutputConstructor] + private UserProfileCodeEditorAppSettings( + Outputs.UserProfileResourceSpec? defaultResourceSpec, + + ImmutableArray lifecycleConfigArns) + { + DefaultResourceSpec = defaultResourceSpec; + LifecycleConfigArns = lifecycleConfigArns; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileCodeRepository.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileCodeRepository.cs new file mode 100644 index 0000000000..3ceeb7640a --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileCodeRepository.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + [OutputType] + public sealed class UserProfileCodeRepository + { + /// + /// A CodeRepository (valid URL) to be used within Jupyter's Git extension. + /// + public readonly string RepositoryUrl; + + [OutputConstructor] + private UserProfileCodeRepository(string repositoryUrl) + { + RepositoryUrl = repositoryUrl; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileCustomFileSystemConfig.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileCustomFileSystemConfig.cs new file mode 100644 index 0000000000..39e15f9d54 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileCustomFileSystemConfig.cs @@ -0,0 +1,24 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + [OutputType] + public sealed class UserProfileCustomFileSystemConfig + { + public readonly Outputs.UserProfileEfsFileSystemConfig? EfsFileSystemConfig; + + [OutputConstructor] + private UserProfileCustomFileSystemConfig(Outputs.UserProfileEfsFileSystemConfig? efsFileSystemConfig) + { + EfsFileSystemConfig = efsFileSystemConfig; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileCustomPosixUserConfig.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileCustomPosixUserConfig.cs new file mode 100644 index 0000000000..d171060b74 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileCustomPosixUserConfig.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + [OutputType] + public sealed class UserProfileCustomPosixUserConfig + { + public readonly int Gid; + public readonly int Uid; + + [OutputConstructor] + private UserProfileCustomPosixUserConfig( + int gid, + + int uid) + { + Gid = gid; + Uid = uid; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileDefaultEbsStorageSettings.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileDefaultEbsStorageSettings.cs new file mode 100644 index 0000000000..7093188cb0 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileDefaultEbsStorageSettings.cs @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + /// + /// Properties related to the Amazon Elastic Block Store volume. + /// + [OutputType] + public sealed class UserProfileDefaultEbsStorageSettings + { + /// + /// Default size of the Amazon EBS volume in Gb + /// + public readonly int DefaultEbsVolumeSizeInGb; + /// + /// Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + /// + public readonly int MaximumEbsVolumeSizeInGb; + + [OutputConstructor] + private UserProfileDefaultEbsStorageSettings( + int defaultEbsVolumeSizeInGb, + + int maximumEbsVolumeSizeInGb) + { + DefaultEbsVolumeSizeInGb = defaultEbsVolumeSizeInGb; + MaximumEbsVolumeSizeInGb = maximumEbsVolumeSizeInGb; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileDefaultSpaceStorageSettings.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileDefaultSpaceStorageSettings.cs new file mode 100644 index 0000000000..51171498db --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileDefaultSpaceStorageSettings.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + /// + /// Default storage settings for a space. + /// + [OutputType] + public sealed class UserProfileDefaultSpaceStorageSettings + { + public readonly Outputs.UserProfileDefaultEbsStorageSettings? DefaultEbsStorageSettings; + + [OutputConstructor] + private UserProfileDefaultSpaceStorageSettings(Outputs.UserProfileDefaultEbsStorageSettings? defaultEbsStorageSettings) + { + DefaultEbsStorageSettings = defaultEbsStorageSettings; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileEfsFileSystemConfig.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileEfsFileSystemConfig.cs new file mode 100644 index 0000000000..fce56a9bb2 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileEfsFileSystemConfig.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + [OutputType] + public sealed class UserProfileEfsFileSystemConfig + { + public readonly string FileSystemId; + public readonly string? FileSystemPath; + + [OutputConstructor] + private UserProfileEfsFileSystemConfig( + string fileSystemId, + + string? fileSystemPath) + { + FileSystemId = fileSystemId; + FileSystemPath = fileSystemPath; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileJupyterLabAppSettings.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileJupyterLabAppSettings.cs new file mode 100644 index 0000000000..3fd0d01600 --- /dev/null +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileJupyterLabAppSettings.cs @@ -0,0 +1,52 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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.SageMaker.Outputs +{ + + /// + /// The JupyterLab app settings. + /// + [OutputType] + public sealed class UserProfileJupyterLabAppSettings + { + /// + /// A list of CodeRepositories available for use with JupyterLab apps. + /// + public readonly ImmutableArray CodeRepositories; + /// + /// A list of custom images available for use for JupyterLab apps + /// + public readonly ImmutableArray CustomImages; + /// + /// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + /// + public readonly Outputs.UserProfileResourceSpec? DefaultResourceSpec; + /// + /// A list of LifecycleConfigArns available for use with JupyterLab apps. + /// + public readonly ImmutableArray LifecycleConfigArns; + + [OutputConstructor] + private UserProfileJupyterLabAppSettings( + ImmutableArray codeRepositories, + + ImmutableArray customImages, + + Outputs.UserProfileResourceSpec? defaultResourceSpec, + + ImmutableArray lifecycleConfigArns) + { + CodeRepositories = codeRepositories; + CustomImages = customImages; + DefaultResourceSpec = defaultResourceSpec; + LifecycleConfigArns = lifecycleConfigArns; + } + } +} diff --git a/sdk/dotnet/SageMaker/Outputs/UserProfileUserSettings.cs b/sdk/dotnet/SageMaker/Outputs/UserProfileUserSettings.cs index 9987adc0df..8fc5120fc2 100644 --- a/sdk/dotnet/SageMaker/Outputs/UserProfileUserSettings.cs +++ b/sdk/dotnet/SageMaker/Outputs/UserProfileUserSettings.cs @@ -16,10 +16,18 @@ namespace Pulumi.AwsNative.SageMaker.Outputs [OutputType] public sealed class UserProfileUserSettings { + public readonly Outputs.UserProfileCodeEditorAppSettings? CodeEditorAppSettings; + public readonly ImmutableArray CustomFileSystemConfigs; + public readonly Outputs.UserProfileCustomPosixUserConfig? CustomPosixUserConfig; + /// + /// Defines which Amazon SageMaker application users are directed to by default. + /// + public readonly string? DefaultLandingUri; /// /// The user profile Amazon Resource Name (ARN). /// public readonly string? ExecutionRole; + public readonly Outputs.UserProfileJupyterLabAppSettings? JupyterLabAppSettings; /// /// The Jupyter server's app settings. /// @@ -37,11 +45,26 @@ public sealed class UserProfileUserSettings /// The sharing settings. /// public readonly Outputs.UserProfileSharingSettings? SharingSettings; + public readonly Outputs.UserProfileDefaultSpaceStorageSettings? SpaceStorageSettings; + /// + /// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + /// + public readonly Pulumi.AwsNative.SageMaker.UserProfileUserSettingsStudioWebPortal? StudioWebPortal; [OutputConstructor] private UserProfileUserSettings( + Outputs.UserProfileCodeEditorAppSettings? codeEditorAppSettings, + + ImmutableArray customFileSystemConfigs, + + Outputs.UserProfileCustomPosixUserConfig? customPosixUserConfig, + + string? defaultLandingUri, + string? executionRole, + Outputs.UserProfileJupyterLabAppSettings? jupyterLabAppSettings, + Outputs.UserProfileJupyterServerAppSettings? jupyterServerAppSettings, Outputs.UserProfileKernelGatewayAppSettings? kernelGatewayAppSettings, @@ -50,14 +73,25 @@ private UserProfileUserSettings( ImmutableArray securityGroups, - Outputs.UserProfileSharingSettings? sharingSettings) + Outputs.UserProfileSharingSettings? sharingSettings, + + Outputs.UserProfileDefaultSpaceStorageSettings? spaceStorageSettings, + + Pulumi.AwsNative.SageMaker.UserProfileUserSettingsStudioWebPortal? studioWebPortal) { + CodeEditorAppSettings = codeEditorAppSettings; + CustomFileSystemConfigs = customFileSystemConfigs; + CustomPosixUserConfig = customPosixUserConfig; + DefaultLandingUri = defaultLandingUri; ExecutionRole = executionRole; + JupyterLabAppSettings = jupyterLabAppSettings; JupyterServerAppSettings = jupyterServerAppSettings; KernelGatewayAppSettings = kernelGatewayAppSettings; RStudioServerProAppSettings = rStudioServerProAppSettings; SecurityGroups = securityGroups; SharingSettings = sharingSettings; + SpaceStorageSettings = spaceStorageSettings; + StudioWebPortal = studioWebPortal; } } } diff --git a/sdk/dotnet/SecurityHub/GetHub.cs b/sdk/dotnet/SecurityHub/GetHub.cs index e7bd9b2049..d27f879ee7 100644 --- a/sdk/dotnet/SecurityHub/GetHub.cs +++ b/sdk/dotnet/SecurityHub/GetHub.cs @@ -12,13 +12,13 @@ namespace Pulumi.AwsNative.SecurityHub public static class GetHub { /// - /// Resource Type definition for AWS::SecurityHub::Hub + /// The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. /// public static Task InvokeAsync(GetHubArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.InvokeAsync("aws-native:securityhub:getHub", args ?? new GetHubArgs(), options.WithDefaults()); /// - /// Resource Type definition for AWS::SecurityHub::Hub + /// The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. /// public static Output Invoke(GetHubInvokeArgs args, InvokeOptions? options = null) => global::Pulumi.Deployment.Instance.Invoke("aws-native:securityhub:getHub", args ?? new GetHubInvokeArgs(), options.WithDefaults()); @@ -27,8 +27,11 @@ public static Output Invoke(GetHubInvokeArgs args, InvokeOptions? public sealed class GetHubArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public string Id { get; set; } = null!; + /// + /// An ARN is automatically created for the customer. + /// + [Input("arn", required: true)] + public string Arn { get; set; } = null!; public GetHubArgs() { @@ -38,8 +41,11 @@ public GetHubArgs() public sealed class GetHubInvokeArgs : global::Pulumi.InvokeArgs { - [Input("id", required: true)] - public Input Id { get; set; } = null!; + /// + /// An ARN is automatically created for the customer. + /// + [Input("arn", required: true)] + public Input Arn { get; set; } = null!; public GetHubInvokeArgs() { @@ -51,28 +57,40 @@ public GetHubInvokeArgs() [OutputType] public sealed class GetHubResult { + /// + /// An ARN is automatically created for the customer. + /// + public readonly string? Arn; + /// + /// Whether to automatically enable new controls when they are added to standards that are enabled + /// public readonly bool? AutoEnableControls; + /// + /// This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + /// public readonly string? ControlFindingGenerator; - public readonly bool? EnableDefaultStandards; - public readonly string? Id; - public readonly object? Tags; + /// + /// The date and time when Security Hub was enabled in the account. + /// + public readonly string? SubscribedAt; + public readonly Outputs.HubTags? Tags; [OutputConstructor] private GetHubResult( + string? arn, + bool? autoEnableControls, string? controlFindingGenerator, - bool? enableDefaultStandards, - - string? id, + string? subscribedAt, - object? tags) + Outputs.HubTags? tags) { + Arn = arn; AutoEnableControls = autoEnableControls; ControlFindingGenerator = controlFindingGenerator; - EnableDefaultStandards = enableDefaultStandards; - Id = id; + SubscribedAt = subscribedAt; Tags = tags; } } diff --git a/sdk/dotnet/SecurityHub/Hub.cs b/sdk/dotnet/SecurityHub/Hub.cs index ce7d2eb433..7bbc288fef 100644 --- a/sdk/dotnet/SecurityHub/Hub.cs +++ b/sdk/dotnet/SecurityHub/Hub.cs @@ -10,23 +10,43 @@ namespace Pulumi.AwsNative.SecurityHub { /// - /// Resource Type definition for AWS::SecurityHub::Hub + /// The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. /// - [Obsolete(@"Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.")] [AwsNativeResourceType("aws-native:securityhub:Hub")] public partial class Hub : global::Pulumi.CustomResource { + /// + /// An ARN is automatically created for the customer. + /// + [Output("arn")] + public Output Arn { get; private set; } = null!; + + /// + /// Whether to automatically enable new controls when they are added to standards that are enabled + /// [Output("autoEnableControls")] public Output AutoEnableControls { get; private set; } = null!; + /// + /// This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + /// [Output("controlFindingGenerator")] public Output ControlFindingGenerator { get; private set; } = null!; + /// + /// Whether to enable the security standards that Security Hub has designated as automatically enabled. + /// [Output("enableDefaultStandards")] public Output EnableDefaultStandards { get; private set; } = null!; + /// + /// The date and time when Security Hub was enabled in the account. + /// + [Output("subscribedAt")] + public Output SubscribedAt { get; private set; } = null!; + [Output("tags")] - public Output Tags { get; private set; } = null!; + public Output Tags { get; private set; } = null!; /// @@ -73,17 +93,26 @@ public static Hub Get(string name, Input id, CustomResourceOptions? opti public sealed class HubArgs : global::Pulumi.ResourceArgs { + /// + /// Whether to automatically enable new controls when they are added to standards that are enabled + /// [Input("autoEnableControls")] public Input? AutoEnableControls { get; set; } + /// + /// This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + /// [Input("controlFindingGenerator")] public Input? ControlFindingGenerator { get; set; } + /// + /// Whether to enable the security standards that Security Hub has designated as automatically enabled. + /// [Input("enableDefaultStandards")] public Input? EnableDefaultStandards { get; set; } [Input("tags")] - public Input? Tags { get; set; } + public Input? Tags { get; set; } public HubArgs() { diff --git a/sdk/dotnet/Ec2/Inputs/InstanceNoDeviceArgs.cs b/sdk/dotnet/SecurityHub/Inputs/HubTagsArgs.cs similarity index 52% rename from sdk/dotnet/Ec2/Inputs/InstanceNoDeviceArgs.cs rename to sdk/dotnet/SecurityHub/Inputs/HubTagsArgs.cs index aefd6d6e41..b25503b005 100644 --- a/sdk/dotnet/Ec2/Inputs/InstanceNoDeviceArgs.cs +++ b/sdk/dotnet/SecurityHub/Inputs/HubTagsArgs.cs @@ -7,14 +7,17 @@ using System.Threading.Tasks; using Pulumi.Serialization; -namespace Pulumi.AwsNative.Ec2.Inputs +namespace Pulumi.AwsNative.SecurityHub.Inputs { - public sealed class InstanceNoDeviceArgs : global::Pulumi.ResourceArgs + /// + /// A key-value pair to associate with a resource. + /// + public sealed class HubTagsArgs : global::Pulumi.ResourceArgs { - public InstanceNoDeviceArgs() + public HubTagsArgs() { } - public static new InstanceNoDeviceArgs Empty => new InstanceNoDeviceArgs(); + public static new HubTagsArgs Empty => new HubTagsArgs(); } } diff --git a/sdk/dotnet/Ec2/Outputs/InstanceNoDevice.cs b/sdk/dotnet/SecurityHub/Outputs/HubTags.cs similarity index 65% rename from sdk/dotnet/Ec2/Outputs/InstanceNoDevice.cs rename to sdk/dotnet/SecurityHub/Outputs/HubTags.cs index 7504f7fa1f..2199fd1650 100644 --- a/sdk/dotnet/Ec2/Outputs/InstanceNoDevice.cs +++ b/sdk/dotnet/SecurityHub/Outputs/HubTags.cs @@ -7,14 +7,17 @@ using System.Threading.Tasks; using Pulumi.Serialization; -namespace Pulumi.AwsNative.Ec2.Outputs +namespace Pulumi.AwsNative.SecurityHub.Outputs { + /// + /// A key-value pair to associate with a resource. + /// [OutputType] - public sealed class InstanceNoDevice + public sealed class HubTags { [OutputConstructor] - private InstanceNoDevice() + private HubTags() { } } diff --git a/sdk/dotnet/ServiceCatalogAppRegistry/Application.cs b/sdk/dotnet/ServiceCatalogAppRegistry/Application.cs index bdffd1cbf8..bbcaceffad 100644 --- a/sdk/dotnet/ServiceCatalogAppRegistry/Application.cs +++ b/sdk/dotnet/ServiceCatalogAppRegistry/Application.cs @@ -15,6 +15,24 @@ namespace Pulumi.AwsNative.ServiceCatalogAppRegistry [AwsNativeResourceType("aws-native:servicecatalogappregistry:Application")] public partial class Application : global::Pulumi.CustomResource { + /// + /// The name of the application. + /// + [Output("applicationName")] + public Output ApplicationName { get; private set; } = null!; + + /// + /// The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + /// + [Output("applicationTagKey")] + public Output ApplicationTagKey { get; private set; } = null!; + + /// + /// The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + /// + [Output("applicationTagValue")] + public Output ApplicationTagValue { get; private set; } = null!; + [Output("arn")] public Output Arn { get; private set; } = null!; diff --git a/sdk/dotnet/ServiceCatalogAppRegistry/GetApplication.cs b/sdk/dotnet/ServiceCatalogAppRegistry/GetApplication.cs index 3f76f3767a..51085d5ea0 100644 --- a/sdk/dotnet/ServiceCatalogAppRegistry/GetApplication.cs +++ b/sdk/dotnet/ServiceCatalogAppRegistry/GetApplication.cs @@ -51,6 +51,18 @@ public GetApplicationInvokeArgs() [OutputType] public sealed class GetApplicationResult { + /// + /// The name of the application. + /// + public readonly string? ApplicationName; + /// + /// The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + /// + public readonly string? ApplicationTagKey; + /// + /// The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + /// + public readonly string? ApplicationTagValue; public readonly string? Arn; /// /// The description of the application. @@ -65,6 +77,12 @@ public sealed class GetApplicationResult [OutputConstructor] private GetApplicationResult( + string? applicationName, + + string? applicationTagKey, + + string? applicationTagValue, + string? arn, string? description, @@ -75,6 +93,9 @@ private GetApplicationResult( Outputs.ApplicationTags? tags) { + ApplicationName = applicationName; + ApplicationTagKey = applicationTagKey; + ApplicationTagValue = applicationTagValue; Arn = arn; Description = description; Id = id; diff --git a/sdk/dotnet/Sns/GetSubscription.cs b/sdk/dotnet/Sns/GetSubscription.cs index f0951606ea..adb7ee2aef 100644 --- a/sdk/dotnet/Sns/GetSubscription.cs +++ b/sdk/dotnet/Sns/GetSubscription.cs @@ -58,6 +58,7 @@ public sealed class GetSubscriptionResult public readonly bool? RawMessageDelivery; public readonly object? RedrivePolicy; public readonly string? Region; + public readonly object? ReplayPolicy; public readonly string? SubscriptionRoleArn; [OutputConstructor] @@ -76,6 +77,8 @@ private GetSubscriptionResult( string? region, + object? replayPolicy, + string? subscriptionRoleArn) { DeliveryPolicy = deliveryPolicy; @@ -85,6 +88,7 @@ private GetSubscriptionResult( RawMessageDelivery = rawMessageDelivery; RedrivePolicy = redrivePolicy; Region = region; + ReplayPolicy = replayPolicy; SubscriptionRoleArn = subscriptionRoleArn; } } diff --git a/sdk/dotnet/Sns/Subscription.cs b/sdk/dotnet/Sns/Subscription.cs index cdbecb4ca4..dc29be6eca 100644 --- a/sdk/dotnet/Sns/Subscription.cs +++ b/sdk/dotnet/Sns/Subscription.cs @@ -40,6 +40,9 @@ public partial class Subscription : global::Pulumi.CustomResource [Output("region")] public Output Region { get; private set; } = null!; + [Output("replayPolicy")] + public Output ReplayPolicy { get; private set; } = null!; + [Output("subscriptionRoleArn")] public Output SubscriptionRoleArn { get; private set; } = null!; @@ -121,6 +124,9 @@ public sealed class SubscriptionArgs : global::Pulumi.ResourceArgs [Input("region")] public Input? Region { get; set; } + [Input("replayPolicy")] + public Input? ReplayPolicy { get; set; } + [Input("subscriptionRoleArn")] public Input? SubscriptionRoleArn { get; set; } diff --git a/sdk/dotnet/Ssm/GetAssociation.cs b/sdk/dotnet/Ssm/GetAssociation.cs index f9448fc83c..c3347e8030 100644 --- a/sdk/dotnet/Ssm/GetAssociation.cs +++ b/sdk/dotnet/Ssm/GetAssociation.cs @@ -98,7 +98,6 @@ public sealed class GetAssociationResult /// The targets that the SSM document sends commands to. /// public readonly ImmutableArray Targets; - public readonly int? WaitForSuccessTimeoutSeconds; [OutputConstructor] private GetAssociationResult( @@ -134,9 +133,7 @@ private GetAssociationResult( Pulumi.AwsNative.Ssm.AssociationSyncCompliance? syncCompliance, - ImmutableArray targets, - - int? waitForSuccessTimeoutSeconds) + ImmutableArray targets) { ApplyOnlyAtCronInterval = applyOnlyAtCronInterval; AssociationId = associationId; @@ -155,7 +152,6 @@ private GetAssociationResult( ScheduleOffset = scheduleOffset; SyncCompliance = syncCompliance; Targets = targets; - WaitForSuccessTimeoutSeconds = waitForSuccessTimeoutSeconds; } } } diff --git a/sdk/go/aws/accessanalyzer/pulumiTypes.go b/sdk/go/aws/accessanalyzer/pulumiTypes.go index 8d5dc5e92e..1309737771 100644 --- a/sdk/go/aws/accessanalyzer/pulumiTypes.go +++ b/sdk/go/aws/accessanalyzer/pulumiTypes.go @@ -583,7 +583,7 @@ func (o AnalyzerTagArrayOutput) Index(i pulumi.IntInput) AnalyzerTagOutput { // The Configuration for Unused Access Analyzer type AnalyzerUnusedAccessConfiguration struct { - // The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + // The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. UnusedAccessAge *int `pulumi:"unusedAccessAge"` } @@ -600,7 +600,7 @@ type AnalyzerUnusedAccessConfigurationInput interface { // The Configuration for Unused Access Analyzer type AnalyzerUnusedAccessConfigurationArgs struct { - // The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + // The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. UnusedAccessAge pulumi.IntPtrInput `pulumi:"unusedAccessAge"` } @@ -700,7 +700,7 @@ func (o AnalyzerUnusedAccessConfigurationOutput) ToOutput(ctx context.Context) p } } -// The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. +// The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. func (o AnalyzerUnusedAccessConfigurationOutput) UnusedAccessAge() pulumi.IntPtrOutput { return o.ApplyT(func(v AnalyzerUnusedAccessConfiguration) *int { return v.UnusedAccessAge }).(pulumi.IntPtrOutput) } @@ -735,7 +735,7 @@ func (o AnalyzerUnusedAccessConfigurationPtrOutput) Elem() AnalyzerUnusedAccessC }).(AnalyzerUnusedAccessConfigurationOutput) } -// The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. +// The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. func (o AnalyzerUnusedAccessConfigurationPtrOutput) UnusedAccessAge() pulumi.IntPtrOutput { return o.ApplyT(func(v *AnalyzerUnusedAccessConfiguration) *int { if v == nil { diff --git a/sdk/go/aws/appsync/getGraphQlApi.go b/sdk/go/aws/appsync/getGraphQlApi.go index 45d41d65ce..3fe075a0e1 100644 --- a/sdk/go/aws/appsync/getGraphQlApi.go +++ b/sdk/go/aws/appsync/getGraphQlApi.go @@ -34,6 +34,7 @@ type LookupGraphQlApiResult struct { Arn *string `pulumi:"arn"` AuthenticationType *string `pulumi:"authenticationType"` GraphQlDns *string `pulumi:"graphQlDns"` + GraphQlEndpointArn *string `pulumi:"graphQlEndpointArn"` GraphQlUrl *string `pulumi:"graphQlUrl"` Id *string `pulumi:"id"` LambdaAuthorizerConfig *GraphQlApiLambdaAuthorizerConfig `pulumi:"lambdaAuthorizerConfig"` @@ -117,6 +118,10 @@ func (o LookupGraphQlApiResultOutput) GraphQlDns() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupGraphQlApiResult) *string { return v.GraphQlDns }).(pulumi.StringPtrOutput) } +func (o LookupGraphQlApiResultOutput) GraphQlEndpointArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupGraphQlApiResult) *string { return v.GraphQlEndpointArn }).(pulumi.StringPtrOutput) +} + func (o LookupGraphQlApiResultOutput) GraphQlUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupGraphQlApiResult) *string { return v.GraphQlUrl }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/appsync/graphQlApi.go b/sdk/go/aws/appsync/graphQlApi.go index 512c2ecd0c..ff0be919d5 100644 --- a/sdk/go/aws/appsync/graphQlApi.go +++ b/sdk/go/aws/appsync/graphQlApi.go @@ -25,6 +25,7 @@ type GraphQlApi struct { Arn pulumi.StringOutput `pulumi:"arn"` AuthenticationType pulumi.StringOutput `pulumi:"authenticationType"` GraphQlDns pulumi.StringOutput `pulumi:"graphQlDns"` + GraphQlEndpointArn pulumi.StringOutput `pulumi:"graphQlEndpointArn"` GraphQlUrl pulumi.StringOutput `pulumi:"graphQlUrl"` LambdaAuthorizerConfig GraphQlApiLambdaAuthorizerConfigPtrOutput `pulumi:"lambdaAuthorizerConfig"` LogConfig GraphQlApiLogConfigPtrOutput `pulumi:"logConfig"` @@ -190,6 +191,10 @@ func (o GraphQlApiOutput) GraphQlDns() pulumi.StringOutput { return o.ApplyT(func(v *GraphQlApi) pulumi.StringOutput { return v.GraphQlDns }).(pulumi.StringOutput) } +func (o GraphQlApiOutput) GraphQlEndpointArn() pulumi.StringOutput { + return o.ApplyT(func(v *GraphQlApi) pulumi.StringOutput { return v.GraphQlEndpointArn }).(pulumi.StringOutput) +} + func (o GraphQlApiOutput) GraphQlUrl() pulumi.StringOutput { return o.ApplyT(func(v *GraphQlApi) pulumi.StringOutput { return v.GraphQlUrl }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/autoscaling/pulumiTypes.go b/sdk/go/aws/autoscaling/pulumiTypes.go index ade4ec5592..d6e2842b12 100644 --- a/sdk/go/aws/autoscaling/pulumiTypes.go +++ b/sdk/go/aws/autoscaling/pulumiTypes.go @@ -718,14 +718,14 @@ type AutoScalingGroupInstanceRequirements struct { LocalStorage *string `pulumi:"localStorage"` LocalStorageTypes []string `pulumi:"localStorageTypes"` MemoryGiBPerVCpu *AutoScalingGroupMemoryGiBPerVCpuRequest `pulumi:"memoryGiBPerVCpu"` - MemoryMiB *AutoScalingGroupMemoryMiBRequest `pulumi:"memoryMiB"` + MemoryMiB AutoScalingGroupMemoryMiBRequest `pulumi:"memoryMiB"` NetworkBandwidthGbps *AutoScalingGroupNetworkBandwidthGbpsRequest `pulumi:"networkBandwidthGbps"` NetworkInterfaceCount *AutoScalingGroupNetworkInterfaceCountRequest `pulumi:"networkInterfaceCount"` OnDemandMaxPricePercentageOverLowestPrice *int `pulumi:"onDemandMaxPricePercentageOverLowestPrice"` RequireHibernateSupport *bool `pulumi:"requireHibernateSupport"` SpotMaxPricePercentageOverLowestPrice *int `pulumi:"spotMaxPricePercentageOverLowestPrice"` TotalLocalStorageGb *AutoScalingGroupTotalLocalStorageGbRequest `pulumi:"totalLocalStorageGb"` - VCpuCount *AutoScalingGroupVCpuCountRequest `pulumi:"vCpuCount"` + VCpuCount AutoScalingGroupVCpuCountRequest `pulumi:"vCpuCount"` } // AutoScalingGroupInstanceRequirementsInput is an input type that accepts AutoScalingGroupInstanceRequirementsArgs and AutoScalingGroupInstanceRequirementsOutput values. @@ -755,14 +755,14 @@ type AutoScalingGroupInstanceRequirementsArgs struct { LocalStorage pulumi.StringPtrInput `pulumi:"localStorage"` LocalStorageTypes pulumi.StringArrayInput `pulumi:"localStorageTypes"` MemoryGiBPerVCpu AutoScalingGroupMemoryGiBPerVCpuRequestPtrInput `pulumi:"memoryGiBPerVCpu"` - MemoryMiB AutoScalingGroupMemoryMiBRequestPtrInput `pulumi:"memoryMiB"` + MemoryMiB AutoScalingGroupMemoryMiBRequestInput `pulumi:"memoryMiB"` NetworkBandwidthGbps AutoScalingGroupNetworkBandwidthGbpsRequestPtrInput `pulumi:"networkBandwidthGbps"` NetworkInterfaceCount AutoScalingGroupNetworkInterfaceCountRequestPtrInput `pulumi:"networkInterfaceCount"` OnDemandMaxPricePercentageOverLowestPrice pulumi.IntPtrInput `pulumi:"onDemandMaxPricePercentageOverLowestPrice"` RequireHibernateSupport pulumi.BoolPtrInput `pulumi:"requireHibernateSupport"` SpotMaxPricePercentageOverLowestPrice pulumi.IntPtrInput `pulumi:"spotMaxPricePercentageOverLowestPrice"` TotalLocalStorageGb AutoScalingGroupTotalLocalStorageGbRequestPtrInput `pulumi:"totalLocalStorageGb"` - VCpuCount AutoScalingGroupVCpuCountRequestPtrInput `pulumi:"vCpuCount"` + VCpuCount AutoScalingGroupVCpuCountRequestInput `pulumi:"vCpuCount"` } func (AutoScalingGroupInstanceRequirementsArgs) ElementType() reflect.Type { @@ -928,8 +928,8 @@ func (o AutoScalingGroupInstanceRequirementsOutput) MemoryGiBPerVCpu() AutoScali }).(AutoScalingGroupMemoryGiBPerVCpuRequestPtrOutput) } -func (o AutoScalingGroupInstanceRequirementsOutput) MemoryMiB() AutoScalingGroupMemoryMiBRequestPtrOutput { - return o.ApplyT(func(v AutoScalingGroupInstanceRequirements) *AutoScalingGroupMemoryMiBRequest { return v.MemoryMiB }).(AutoScalingGroupMemoryMiBRequestPtrOutput) +func (o AutoScalingGroupInstanceRequirementsOutput) MemoryMiB() AutoScalingGroupMemoryMiBRequestOutput { + return o.ApplyT(func(v AutoScalingGroupInstanceRequirements) AutoScalingGroupMemoryMiBRequest { return v.MemoryMiB }).(AutoScalingGroupMemoryMiBRequestOutput) } func (o AutoScalingGroupInstanceRequirementsOutput) NetworkBandwidthGbps() AutoScalingGroupNetworkBandwidthGbpsRequestPtrOutput { @@ -962,8 +962,8 @@ func (o AutoScalingGroupInstanceRequirementsOutput) TotalLocalStorageGb() AutoSc }).(AutoScalingGroupTotalLocalStorageGbRequestPtrOutput) } -func (o AutoScalingGroupInstanceRequirementsOutput) VCpuCount() AutoScalingGroupVCpuCountRequestPtrOutput { - return o.ApplyT(func(v AutoScalingGroupInstanceRequirements) *AutoScalingGroupVCpuCountRequest { return v.VCpuCount }).(AutoScalingGroupVCpuCountRequestPtrOutput) +func (o AutoScalingGroupInstanceRequirementsOutput) VCpuCount() AutoScalingGroupVCpuCountRequestOutput { + return o.ApplyT(func(v AutoScalingGroupInstanceRequirements) AutoScalingGroupVCpuCountRequest { return v.VCpuCount }).(AutoScalingGroupVCpuCountRequestOutput) } type AutoScalingGroupInstanceRequirementsPtrOutput struct{ *pulumi.OutputState } @@ -1136,7 +1136,7 @@ func (o AutoScalingGroupInstanceRequirementsPtrOutput) MemoryMiB() AutoScalingGr if v == nil { return nil } - return v.MemoryMiB + return &v.MemoryMiB }).(AutoScalingGroupMemoryMiBRequestPtrOutput) } @@ -1199,7 +1199,7 @@ func (o AutoScalingGroupInstanceRequirementsPtrOutput) VCpuCount() AutoScalingGr if v == nil { return nil } - return v.VCpuCount + return &v.VCpuCount }).(AutoScalingGroupVCpuCountRequestPtrOutput) } diff --git a/sdk/go/aws/b2bi/capability.go b/sdk/go/aws/b2bi/capability.go new file mode 100644 index 0000000000..f4d9879339 --- /dev/null +++ b/sdk/go/aws/b2bi/capability.go @@ -0,0 +1,185 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Definition of AWS::B2BI::Capability Resource Type +type Capability struct { + pulumi.CustomResourceState + + CapabilityArn pulumi.StringOutput `pulumi:"capabilityArn"` + CapabilityId pulumi.StringOutput `pulumi:"capabilityId"` + Configuration CapabilityConfigurationPropertiesOutput `pulumi:"configuration"` + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + InstructionsDocuments CapabilityS3LocationArrayOutput `pulumi:"instructionsDocuments"` + ModifiedAt pulumi.StringOutput `pulumi:"modifiedAt"` + Name pulumi.StringOutput `pulumi:"name"` + Tags CapabilityTagArrayOutput `pulumi:"tags"` + Type CapabilityTypeOutput `pulumi:"type"` +} + +// NewCapability registers a new resource with the given unique name, arguments, and options. +func NewCapability(ctx *pulumi.Context, + name string, args *CapabilityArgs, opts ...pulumi.ResourceOption) (*Capability, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Configuration == nil { + return nil, errors.New("invalid value for required argument 'Configuration'") + } + if args.Type == nil { + return nil, errors.New("invalid value for required argument 'Type'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "type", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Capability + err := ctx.RegisterResource("aws-native:b2bi:Capability", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetCapability gets an existing Capability 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 GetCapability(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *CapabilityState, opts ...pulumi.ResourceOption) (*Capability, error) { + var resource Capability + err := ctx.ReadResource("aws-native:b2bi:Capability", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Capability resources. +type capabilityState struct { +} + +type CapabilityState struct { +} + +func (CapabilityState) ElementType() reflect.Type { + return reflect.TypeOf((*capabilityState)(nil)).Elem() +} + +type capabilityArgs struct { + Configuration CapabilityConfigurationProperties `pulumi:"configuration"` + InstructionsDocuments []CapabilityS3Location `pulumi:"instructionsDocuments"` + Name *string `pulumi:"name"` + Tags []CapabilityTag `pulumi:"tags"` + Type CapabilityType `pulumi:"type"` +} + +// The set of arguments for constructing a Capability resource. +type CapabilityArgs struct { + Configuration CapabilityConfigurationPropertiesInput + InstructionsDocuments CapabilityS3LocationArrayInput + Name pulumi.StringPtrInput + Tags CapabilityTagArrayInput + Type CapabilityTypeInput +} + +func (CapabilityArgs) ElementType() reflect.Type { + return reflect.TypeOf((*capabilityArgs)(nil)).Elem() +} + +type CapabilityInput interface { + pulumi.Input + + ToCapabilityOutput() CapabilityOutput + ToCapabilityOutputWithContext(ctx context.Context) CapabilityOutput +} + +func (*Capability) ElementType() reflect.Type { + return reflect.TypeOf((**Capability)(nil)).Elem() +} + +func (i *Capability) ToCapabilityOutput() CapabilityOutput { + return i.ToCapabilityOutputWithContext(context.Background()) +} + +func (i *Capability) ToCapabilityOutputWithContext(ctx context.Context) CapabilityOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityOutput) +} + +func (i *Capability) ToOutput(ctx context.Context) pulumix.Output[*Capability] { + return pulumix.Output[*Capability]{ + OutputState: i.ToCapabilityOutputWithContext(ctx).OutputState, + } +} + +type CapabilityOutput struct{ *pulumi.OutputState } + +func (CapabilityOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Capability)(nil)).Elem() +} + +func (o CapabilityOutput) ToCapabilityOutput() CapabilityOutput { + return o +} + +func (o CapabilityOutput) ToCapabilityOutputWithContext(ctx context.Context) CapabilityOutput { + return o +} + +func (o CapabilityOutput) ToOutput(ctx context.Context) pulumix.Output[*Capability] { + return pulumix.Output[*Capability]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityOutput) CapabilityArn() pulumi.StringOutput { + return o.ApplyT(func(v *Capability) pulumi.StringOutput { return v.CapabilityArn }).(pulumi.StringOutput) +} + +func (o CapabilityOutput) CapabilityId() pulumi.StringOutput { + return o.ApplyT(func(v *Capability) pulumi.StringOutput { return v.CapabilityId }).(pulumi.StringOutput) +} + +func (o CapabilityOutput) Configuration() CapabilityConfigurationPropertiesOutput { + return o.ApplyT(func(v *Capability) CapabilityConfigurationPropertiesOutput { return v.Configuration }).(CapabilityConfigurationPropertiesOutput) +} + +func (o CapabilityOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Capability) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) +} + +func (o CapabilityOutput) InstructionsDocuments() CapabilityS3LocationArrayOutput { + return o.ApplyT(func(v *Capability) CapabilityS3LocationArrayOutput { return v.InstructionsDocuments }).(CapabilityS3LocationArrayOutput) +} + +func (o CapabilityOutput) ModifiedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Capability) pulumi.StringOutput { return v.ModifiedAt }).(pulumi.StringOutput) +} + +func (o CapabilityOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *Capability) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +func (o CapabilityOutput) Tags() CapabilityTagArrayOutput { + return o.ApplyT(func(v *Capability) CapabilityTagArrayOutput { return v.Tags }).(CapabilityTagArrayOutput) +} + +func (o CapabilityOutput) Type() CapabilityTypeOutput { + return o.ApplyT(func(v *Capability) CapabilityTypeOutput { return v.Type }).(CapabilityTypeOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityInput)(nil)).Elem(), &Capability{}) + pulumi.RegisterOutputType(CapabilityOutput{}) +} diff --git a/sdk/go/aws/b2bi/getCapability.go b/sdk/go/aws/b2bi/getCapability.go new file mode 100644 index 0000000000..fc042b56a1 --- /dev/null +++ b/sdk/go/aws/b2bi/getCapability.go @@ -0,0 +1,116 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Definition of AWS::B2BI::Capability Resource Type +func LookupCapability(ctx *pulumi.Context, args *LookupCapabilityArgs, opts ...pulumi.InvokeOption) (*LookupCapabilityResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupCapabilityResult + err := ctx.Invoke("aws-native:b2bi:getCapability", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupCapabilityArgs struct { + CapabilityId string `pulumi:"capabilityId"` +} + +type LookupCapabilityResult struct { + CapabilityArn *string `pulumi:"capabilityArn"` + CapabilityId *string `pulumi:"capabilityId"` + Configuration *CapabilityConfigurationProperties `pulumi:"configuration"` + CreatedAt *string `pulumi:"createdAt"` + InstructionsDocuments []CapabilityS3Location `pulumi:"instructionsDocuments"` + ModifiedAt *string `pulumi:"modifiedAt"` + Name *string `pulumi:"name"` + Tags []CapabilityTag `pulumi:"tags"` +} + +func LookupCapabilityOutput(ctx *pulumi.Context, args LookupCapabilityOutputArgs, opts ...pulumi.InvokeOption) LookupCapabilityResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupCapabilityResult, error) { + args := v.(LookupCapabilityArgs) + r, err := LookupCapability(ctx, &args, opts...) + var s LookupCapabilityResult + if r != nil { + s = *r + } + return s, err + }).(LookupCapabilityResultOutput) +} + +type LookupCapabilityOutputArgs struct { + CapabilityId pulumi.StringInput `pulumi:"capabilityId"` +} + +func (LookupCapabilityOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupCapabilityArgs)(nil)).Elem() +} + +type LookupCapabilityResultOutput struct{ *pulumi.OutputState } + +func (LookupCapabilityResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupCapabilityResult)(nil)).Elem() +} + +func (o LookupCapabilityResultOutput) ToLookupCapabilityResultOutput() LookupCapabilityResultOutput { + return o +} + +func (o LookupCapabilityResultOutput) ToLookupCapabilityResultOutputWithContext(ctx context.Context) LookupCapabilityResultOutput { + return o +} + +func (o LookupCapabilityResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupCapabilityResult] { + return pulumix.Output[LookupCapabilityResult]{ + OutputState: o.OutputState, + } +} + +func (o LookupCapabilityResultOutput) CapabilityArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupCapabilityResult) *string { return v.CapabilityArn }).(pulumi.StringPtrOutput) +} + +func (o LookupCapabilityResultOutput) CapabilityId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupCapabilityResult) *string { return v.CapabilityId }).(pulumi.StringPtrOutput) +} + +func (o LookupCapabilityResultOutput) Configuration() CapabilityConfigurationPropertiesPtrOutput { + return o.ApplyT(func(v LookupCapabilityResult) *CapabilityConfigurationProperties { return v.Configuration }).(CapabilityConfigurationPropertiesPtrOutput) +} + +func (o LookupCapabilityResultOutput) CreatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupCapabilityResult) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupCapabilityResultOutput) InstructionsDocuments() CapabilityS3LocationArrayOutput { + return o.ApplyT(func(v LookupCapabilityResult) []CapabilityS3Location { return v.InstructionsDocuments }).(CapabilityS3LocationArrayOutput) +} + +func (o LookupCapabilityResultOutput) ModifiedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupCapabilityResult) *string { return v.ModifiedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupCapabilityResultOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupCapabilityResult) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +func (o LookupCapabilityResultOutput) Tags() CapabilityTagArrayOutput { + return o.ApplyT(func(v LookupCapabilityResult) []CapabilityTag { return v.Tags }).(CapabilityTagArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupCapabilityResultOutput{}) +} diff --git a/sdk/go/aws/b2bi/getPartnership.go b/sdk/go/aws/b2bi/getPartnership.go new file mode 100644 index 0000000000..9bec6424b6 --- /dev/null +++ b/sdk/go/aws/b2bi/getPartnership.go @@ -0,0 +1,116 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Definition of AWS::B2BI::Partnership Resource Type +func LookupPartnership(ctx *pulumi.Context, args *LookupPartnershipArgs, opts ...pulumi.InvokeOption) (*LookupPartnershipResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupPartnershipResult + err := ctx.Invoke("aws-native:b2bi:getPartnership", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupPartnershipArgs struct { + PartnershipId string `pulumi:"partnershipId"` +} + +type LookupPartnershipResult struct { + Capabilities []string `pulumi:"capabilities"` + CreatedAt *string `pulumi:"createdAt"` + ModifiedAt *string `pulumi:"modifiedAt"` + Name *string `pulumi:"name"` + PartnershipArn *string `pulumi:"partnershipArn"` + PartnershipId *string `pulumi:"partnershipId"` + Tags []PartnershipTag `pulumi:"tags"` + TradingPartnerId *string `pulumi:"tradingPartnerId"` +} + +func LookupPartnershipOutput(ctx *pulumi.Context, args LookupPartnershipOutputArgs, opts ...pulumi.InvokeOption) LookupPartnershipResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupPartnershipResult, error) { + args := v.(LookupPartnershipArgs) + r, err := LookupPartnership(ctx, &args, opts...) + var s LookupPartnershipResult + if r != nil { + s = *r + } + return s, err + }).(LookupPartnershipResultOutput) +} + +type LookupPartnershipOutputArgs struct { + PartnershipId pulumi.StringInput `pulumi:"partnershipId"` +} + +func (LookupPartnershipOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupPartnershipArgs)(nil)).Elem() +} + +type LookupPartnershipResultOutput struct{ *pulumi.OutputState } + +func (LookupPartnershipResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupPartnershipResult)(nil)).Elem() +} + +func (o LookupPartnershipResultOutput) ToLookupPartnershipResultOutput() LookupPartnershipResultOutput { + return o +} + +func (o LookupPartnershipResultOutput) ToLookupPartnershipResultOutputWithContext(ctx context.Context) LookupPartnershipResultOutput { + return o +} + +func (o LookupPartnershipResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupPartnershipResult] { + return pulumix.Output[LookupPartnershipResult]{ + OutputState: o.OutputState, + } +} + +func (o LookupPartnershipResultOutput) Capabilities() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupPartnershipResult) []string { return v.Capabilities }).(pulumi.StringArrayOutput) +} + +func (o LookupPartnershipResultOutput) CreatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPartnershipResult) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupPartnershipResultOutput) ModifiedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPartnershipResult) *string { return v.ModifiedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupPartnershipResultOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPartnershipResult) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +func (o LookupPartnershipResultOutput) PartnershipArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPartnershipResult) *string { return v.PartnershipArn }).(pulumi.StringPtrOutput) +} + +func (o LookupPartnershipResultOutput) PartnershipId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPartnershipResult) *string { return v.PartnershipId }).(pulumi.StringPtrOutput) +} + +func (o LookupPartnershipResultOutput) Tags() PartnershipTagArrayOutput { + return o.ApplyT(func(v LookupPartnershipResult) []PartnershipTag { return v.Tags }).(PartnershipTagArrayOutput) +} + +func (o LookupPartnershipResultOutput) TradingPartnerId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPartnershipResult) *string { return v.TradingPartnerId }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupPartnershipResultOutput{}) +} diff --git a/sdk/go/aws/b2bi/getProfile.go b/sdk/go/aws/b2bi/getProfile.go new file mode 100644 index 0000000000..9e7f3fdbcc --- /dev/null +++ b/sdk/go/aws/b2bi/getProfile.go @@ -0,0 +1,126 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Definition of AWS::B2BI::Profile Resource Type +func LookupProfile(ctx *pulumi.Context, args *LookupProfileArgs, opts ...pulumi.InvokeOption) (*LookupProfileResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupProfileResult + err := ctx.Invoke("aws-native:b2bi:getProfile", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupProfileArgs struct { + ProfileId string `pulumi:"profileId"` +} + +type LookupProfileResult struct { + BusinessName *string `pulumi:"businessName"` + CreatedAt *string `pulumi:"createdAt"` + Email *string `pulumi:"email"` + LogGroupName *string `pulumi:"logGroupName"` + ModifiedAt *string `pulumi:"modifiedAt"` + Name *string `pulumi:"name"` + Phone *string `pulumi:"phone"` + ProfileArn *string `pulumi:"profileArn"` + ProfileId *string `pulumi:"profileId"` + Tags []ProfileTag `pulumi:"tags"` +} + +func LookupProfileOutput(ctx *pulumi.Context, args LookupProfileOutputArgs, opts ...pulumi.InvokeOption) LookupProfileResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupProfileResult, error) { + args := v.(LookupProfileArgs) + r, err := LookupProfile(ctx, &args, opts...) + var s LookupProfileResult + if r != nil { + s = *r + } + return s, err + }).(LookupProfileResultOutput) +} + +type LookupProfileOutputArgs struct { + ProfileId pulumi.StringInput `pulumi:"profileId"` +} + +func (LookupProfileOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupProfileArgs)(nil)).Elem() +} + +type LookupProfileResultOutput struct{ *pulumi.OutputState } + +func (LookupProfileResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupProfileResult)(nil)).Elem() +} + +func (o LookupProfileResultOutput) ToLookupProfileResultOutput() LookupProfileResultOutput { + return o +} + +func (o LookupProfileResultOutput) ToLookupProfileResultOutputWithContext(ctx context.Context) LookupProfileResultOutput { + return o +} + +func (o LookupProfileResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupProfileResult] { + return pulumix.Output[LookupProfileResult]{ + OutputState: o.OutputState, + } +} + +func (o LookupProfileResultOutput) BusinessName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.BusinessName }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) CreatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) Email() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.Email }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) LogGroupName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.LogGroupName }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) ModifiedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.ModifiedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) Phone() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.Phone }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) ProfileArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.ProfileArn }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) ProfileId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupProfileResult) *string { return v.ProfileId }).(pulumi.StringPtrOutput) +} + +func (o LookupProfileResultOutput) Tags() ProfileTagArrayOutput { + return o.ApplyT(func(v LookupProfileResult) []ProfileTag { return v.Tags }).(ProfileTagArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupProfileResultOutput{}) +} diff --git a/sdk/go/aws/b2bi/getTransformer.go b/sdk/go/aws/b2bi/getTransformer.go new file mode 100644 index 0000000000..49eb64ad57 --- /dev/null +++ b/sdk/go/aws/b2bi/getTransformer.go @@ -0,0 +1,131 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Definition of AWS::B2BI::Transformer Resource Type +func LookupTransformer(ctx *pulumi.Context, args *LookupTransformerArgs, opts ...pulumi.InvokeOption) (*LookupTransformerResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupTransformerResult + err := ctx.Invoke("aws-native:b2bi:getTransformer", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupTransformerArgs struct { + TransformerId string `pulumi:"transformerId"` +} + +type LookupTransformerResult struct { + CreatedAt *string `pulumi:"createdAt"` + EdiType *TransformerEdiTypeProperties `pulumi:"ediType"` + FileFormat *TransformerFileFormat `pulumi:"fileFormat"` + MappingTemplate *string `pulumi:"mappingTemplate"` + ModifiedAt *string `pulumi:"modifiedAt"` + Name *string `pulumi:"name"` + SampleDocument *string `pulumi:"sampleDocument"` + Status *TransformerStatus `pulumi:"status"` + Tags []TransformerTag `pulumi:"tags"` + TransformerArn *string `pulumi:"transformerArn"` + TransformerId *string `pulumi:"transformerId"` +} + +func LookupTransformerOutput(ctx *pulumi.Context, args LookupTransformerOutputArgs, opts ...pulumi.InvokeOption) LookupTransformerResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupTransformerResult, error) { + args := v.(LookupTransformerArgs) + r, err := LookupTransformer(ctx, &args, opts...) + var s LookupTransformerResult + if r != nil { + s = *r + } + return s, err + }).(LookupTransformerResultOutput) +} + +type LookupTransformerOutputArgs struct { + TransformerId pulumi.StringInput `pulumi:"transformerId"` +} + +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 +} + +func (o LookupTransformerResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupTransformerResult] { + return pulumix.Output[LookupTransformerResult]{ + OutputState: o.OutputState, + } +} + +func (o LookupTransformerResultOutput) CreatedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *string { return v.CreatedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupTransformerResultOutput) EdiType() TransformerEdiTypePropertiesPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *TransformerEdiTypeProperties { return v.EdiType }).(TransformerEdiTypePropertiesPtrOutput) +} + +func (o LookupTransformerResultOutput) FileFormat() TransformerFileFormatPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *TransformerFileFormat { return v.FileFormat }).(TransformerFileFormatPtrOutput) +} + +func (o LookupTransformerResultOutput) MappingTemplate() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *string { return v.MappingTemplate }).(pulumi.StringPtrOutput) +} + +func (o LookupTransformerResultOutput) ModifiedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *string { return v.ModifiedAt }).(pulumi.StringPtrOutput) +} + +func (o LookupTransformerResultOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +func (o LookupTransformerResultOutput) SampleDocument() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *string { return v.SampleDocument }).(pulumi.StringPtrOutput) +} + +func (o LookupTransformerResultOutput) Status() TransformerStatusPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *TransformerStatus { return v.Status }).(TransformerStatusPtrOutput) +} + +func (o LookupTransformerResultOutput) Tags() TransformerTagArrayOutput { + return o.ApplyT(func(v LookupTransformerResult) []TransformerTag { return v.Tags }).(TransformerTagArrayOutput) +} + +func (o LookupTransformerResultOutput) TransformerArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *string { return v.TransformerArn }).(pulumi.StringPtrOutput) +} + +func (o LookupTransformerResultOutput) TransformerId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTransformerResult) *string { return v.TransformerId }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupTransformerResultOutput{}) +} diff --git a/sdk/go/aws/b2bi/init.go b/sdk/go/aws/b2bi/init.go new file mode 100644 index 0000000000..62b6afd74f --- /dev/null +++ b/sdk/go/aws/b2bi/init.go @@ -0,0 +1,50 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "fmt" + + "github.com/blang/semver" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" +) + +type module struct { + version semver.Version +} + +func (m *module) Version() semver.Version { + return m.version +} + +func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi.Resource, err error) { + switch typ { + case "aws-native:b2bi:Capability": + r = &Capability{} + case "aws-native:b2bi:Partnership": + r = &Partnership{} + case "aws-native:b2bi:Profile": + r = &Profile{} + case "aws-native:b2bi:Transformer": + r = &Transformer{} + default: + return nil, fmt.Errorf("unknown resource type: %s", typ) + } + + err = ctx.RegisterResource(typ, name, nil, r, pulumi.URN_(urn)) + return +} + +func init() { + version, err := internal.PkgVersion() + if err != nil { + version = semver.Version{Major: 1} + } + pulumi.RegisterResourceModule( + "aws-native", + "b2bi", + &module{version}, + ) +} diff --git a/sdk/go/aws/b2bi/partnership.go b/sdk/go/aws/b2bi/partnership.go new file mode 100644 index 0000000000..f80b44b81e --- /dev/null +++ b/sdk/go/aws/b2bi/partnership.go @@ -0,0 +1,199 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Definition of AWS::B2BI::Partnership Resource Type +type Partnership struct { + pulumi.CustomResourceState + + Capabilities pulumi.StringArrayOutput `pulumi:"capabilities"` + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + Email pulumi.StringOutput `pulumi:"email"` + ModifiedAt pulumi.StringOutput `pulumi:"modifiedAt"` + Name pulumi.StringOutput `pulumi:"name"` + PartnershipArn pulumi.StringOutput `pulumi:"partnershipArn"` + PartnershipId pulumi.StringOutput `pulumi:"partnershipId"` + Phone pulumi.StringPtrOutput `pulumi:"phone"` + ProfileId pulumi.StringOutput `pulumi:"profileId"` + Tags PartnershipTagArrayOutput `pulumi:"tags"` + TradingPartnerId pulumi.StringOutput `pulumi:"tradingPartnerId"` +} + +// NewPartnership registers a new resource with the given unique name, arguments, and options. +func NewPartnership(ctx *pulumi.Context, + name string, args *PartnershipArgs, opts ...pulumi.ResourceOption) (*Partnership, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Email == nil { + return nil, errors.New("invalid value for required argument 'Email'") + } + if args.ProfileId == nil { + return nil, errors.New("invalid value for required argument 'ProfileId'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "email", + "phone", + "profileId", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Partnership + err := ctx.RegisterResource("aws-native:b2bi:Partnership", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetPartnership gets an existing Partnership 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 GetPartnership(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *PartnershipState, opts ...pulumi.ResourceOption) (*Partnership, error) { + var resource Partnership + err := ctx.ReadResource("aws-native:b2bi:Partnership", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Partnership resources. +type partnershipState struct { +} + +type PartnershipState struct { +} + +func (PartnershipState) ElementType() reflect.Type { + return reflect.TypeOf((*partnershipState)(nil)).Elem() +} + +type partnershipArgs struct { + Capabilities []string `pulumi:"capabilities"` + Email string `pulumi:"email"` + Name *string `pulumi:"name"` + Phone *string `pulumi:"phone"` + ProfileId string `pulumi:"profileId"` + Tags []PartnershipTag `pulumi:"tags"` +} + +// The set of arguments for constructing a Partnership resource. +type PartnershipArgs struct { + Capabilities pulumi.StringArrayInput + Email pulumi.StringInput + Name pulumi.StringPtrInput + Phone pulumi.StringPtrInput + ProfileId pulumi.StringInput + Tags PartnershipTagArrayInput +} + +func (PartnershipArgs) ElementType() reflect.Type { + return reflect.TypeOf((*partnershipArgs)(nil)).Elem() +} + +type PartnershipInput interface { + pulumi.Input + + ToPartnershipOutput() PartnershipOutput + ToPartnershipOutputWithContext(ctx context.Context) PartnershipOutput +} + +func (*Partnership) ElementType() reflect.Type { + return reflect.TypeOf((**Partnership)(nil)).Elem() +} + +func (i *Partnership) ToPartnershipOutput() PartnershipOutput { + return i.ToPartnershipOutputWithContext(context.Background()) +} + +func (i *Partnership) ToPartnershipOutputWithContext(ctx context.Context) PartnershipOutput { + return pulumi.ToOutputWithContext(ctx, i).(PartnershipOutput) +} + +func (i *Partnership) ToOutput(ctx context.Context) pulumix.Output[*Partnership] { + return pulumix.Output[*Partnership]{ + OutputState: i.ToPartnershipOutputWithContext(ctx).OutputState, + } +} + +type PartnershipOutput struct{ *pulumi.OutputState } + +func (PartnershipOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Partnership)(nil)).Elem() +} + +func (o PartnershipOutput) ToPartnershipOutput() PartnershipOutput { + return o +} + +func (o PartnershipOutput) ToPartnershipOutputWithContext(ctx context.Context) PartnershipOutput { + return o +} + +func (o PartnershipOutput) ToOutput(ctx context.Context) pulumix.Output[*Partnership] { + return pulumix.Output[*Partnership]{ + OutputState: o.OutputState, + } +} + +func (o PartnershipOutput) Capabilities() pulumi.StringArrayOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringArrayOutput { return v.Capabilities }).(pulumi.StringArrayOutput) +} + +func (o PartnershipOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) +} + +func (o PartnershipOutput) Email() pulumi.StringOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringOutput { return v.Email }).(pulumi.StringOutput) +} + +func (o PartnershipOutput) ModifiedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringOutput { return v.ModifiedAt }).(pulumi.StringOutput) +} + +func (o PartnershipOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +func (o PartnershipOutput) PartnershipArn() pulumi.StringOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringOutput { return v.PartnershipArn }).(pulumi.StringOutput) +} + +func (o PartnershipOutput) PartnershipId() pulumi.StringOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringOutput { return v.PartnershipId }).(pulumi.StringOutput) +} + +func (o PartnershipOutput) Phone() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringPtrOutput { return v.Phone }).(pulumi.StringPtrOutput) +} + +func (o PartnershipOutput) ProfileId() pulumi.StringOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringOutput { return v.ProfileId }).(pulumi.StringOutput) +} + +func (o PartnershipOutput) Tags() PartnershipTagArrayOutput { + return o.ApplyT(func(v *Partnership) PartnershipTagArrayOutput { return v.Tags }).(PartnershipTagArrayOutput) +} + +func (o PartnershipOutput) TradingPartnerId() pulumi.StringOutput { + return o.ApplyT(func(v *Partnership) pulumi.StringOutput { return v.TradingPartnerId }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*PartnershipInput)(nil)).Elem(), &Partnership{}) + pulumi.RegisterOutputType(PartnershipOutput{}) +} diff --git a/sdk/go/aws/b2bi/profile.go b/sdk/go/aws/b2bi/profile.go new file mode 100644 index 0000000000..f323daa5dc --- /dev/null +++ b/sdk/go/aws/b2bi/profile.go @@ -0,0 +1,200 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Definition of AWS::B2BI::Profile Resource Type +type Profile struct { + pulumi.CustomResourceState + + BusinessName pulumi.StringOutput `pulumi:"businessName"` + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + Email pulumi.StringPtrOutput `pulumi:"email"` + LogGroupName pulumi.StringOutput `pulumi:"logGroupName"` + Logging ProfileLoggingOutput `pulumi:"logging"` + ModifiedAt pulumi.StringOutput `pulumi:"modifiedAt"` + Name pulumi.StringOutput `pulumi:"name"` + Phone pulumi.StringOutput `pulumi:"phone"` + ProfileArn pulumi.StringOutput `pulumi:"profileArn"` + ProfileId pulumi.StringOutput `pulumi:"profileId"` + Tags ProfileTagArrayOutput `pulumi:"tags"` +} + +// NewProfile registers a new resource with the given unique name, arguments, and options. +func NewProfile(ctx *pulumi.Context, + name string, args *ProfileArgs, opts ...pulumi.ResourceOption) (*Profile, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.BusinessName == nil { + return nil, errors.New("invalid value for required argument 'BusinessName'") + } + if args.Logging == nil { + return nil, errors.New("invalid value for required argument 'Logging'") + } + if args.Phone == nil { + return nil, errors.New("invalid value for required argument 'Phone'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "logging", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Profile + err := ctx.RegisterResource("aws-native:b2bi:Profile", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetProfile gets an existing Profile 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 GetProfile(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *ProfileState, opts ...pulumi.ResourceOption) (*Profile, error) { + var resource Profile + err := ctx.ReadResource("aws-native:b2bi:Profile", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Profile resources. +type profileState struct { +} + +type ProfileState struct { +} + +func (ProfileState) ElementType() reflect.Type { + return reflect.TypeOf((*profileState)(nil)).Elem() +} + +type profileArgs struct { + BusinessName string `pulumi:"businessName"` + Email *string `pulumi:"email"` + Logging ProfileLogging `pulumi:"logging"` + Name *string `pulumi:"name"` + Phone string `pulumi:"phone"` + Tags []ProfileTag `pulumi:"tags"` +} + +// The set of arguments for constructing a Profile resource. +type ProfileArgs struct { + BusinessName pulumi.StringInput + Email pulumi.StringPtrInput + Logging ProfileLoggingInput + Name pulumi.StringPtrInput + Phone pulumi.StringInput + Tags ProfileTagArrayInput +} + +func (ProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*profileArgs)(nil)).Elem() +} + +type ProfileInput interface { + pulumi.Input + + ToProfileOutput() ProfileOutput + ToProfileOutputWithContext(ctx context.Context) ProfileOutput +} + +func (*Profile) ElementType() reflect.Type { + return reflect.TypeOf((**Profile)(nil)).Elem() +} + +func (i *Profile) ToProfileOutput() ProfileOutput { + return i.ToProfileOutputWithContext(context.Background()) +} + +func (i *Profile) ToProfileOutputWithContext(ctx context.Context) ProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(ProfileOutput) +} + +func (i *Profile) ToOutput(ctx context.Context) pulumix.Output[*Profile] { + return pulumix.Output[*Profile]{ + OutputState: i.ToProfileOutputWithContext(ctx).OutputState, + } +} + +type ProfileOutput struct{ *pulumi.OutputState } + +func (ProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Profile)(nil)).Elem() +} + +func (o ProfileOutput) ToProfileOutput() ProfileOutput { + return o +} + +func (o ProfileOutput) ToProfileOutputWithContext(ctx context.Context) ProfileOutput { + return o +} + +func (o ProfileOutput) ToOutput(ctx context.Context) pulumix.Output[*Profile] { + return pulumix.Output[*Profile]{ + OutputState: o.OutputState, + } +} + +func (o ProfileOutput) BusinessName() pulumi.StringOutput { + return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.BusinessName }).(pulumi.StringOutput) +} + +func (o ProfileOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) +} + +func (o ProfileOutput) Email() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Profile) pulumi.StringPtrOutput { return v.Email }).(pulumi.StringPtrOutput) +} + +func (o ProfileOutput) LogGroupName() pulumi.StringOutput { + return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.LogGroupName }).(pulumi.StringOutput) +} + +func (o ProfileOutput) Logging() ProfileLoggingOutput { + return o.ApplyT(func(v *Profile) ProfileLoggingOutput { return v.Logging }).(ProfileLoggingOutput) +} + +func (o ProfileOutput) ModifiedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.ModifiedAt }).(pulumi.StringOutput) +} + +func (o ProfileOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +func (o ProfileOutput) Phone() pulumi.StringOutput { + return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.Phone }).(pulumi.StringOutput) +} + +func (o ProfileOutput) ProfileArn() pulumi.StringOutput { + return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.ProfileArn }).(pulumi.StringOutput) +} + +func (o ProfileOutput) ProfileId() pulumi.StringOutput { + return o.ApplyT(func(v *Profile) pulumi.StringOutput { return v.ProfileId }).(pulumi.StringOutput) +} + +func (o ProfileOutput) Tags() ProfileTagArrayOutput { + return o.ApplyT(func(v *Profile) ProfileTagArrayOutput { return v.Tags }).(ProfileTagArrayOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ProfileInput)(nil)).Elem(), &Profile{}) + pulumi.RegisterOutputType(ProfileOutput{}) +} diff --git a/sdk/go/aws/b2bi/pulumiEnums.go b/sdk/go/aws/b2bi/pulumiEnums.go new file mode 100644 index 0000000000..172685b36a --- /dev/null +++ b/sdk/go/aws/b2bi/pulumiEnums.go @@ -0,0 +1,1550 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +type CapabilityType string + +const ( + CapabilityTypeEdi = CapabilityType("edi") +) + +func (CapabilityType) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityType)(nil)).Elem() +} + +func (e CapabilityType) ToCapabilityTypeOutput() CapabilityTypeOutput { + return pulumi.ToOutput(e).(CapabilityTypeOutput) +} + +func (e CapabilityType) ToCapabilityTypeOutputWithContext(ctx context.Context) CapabilityTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(CapabilityTypeOutput) +} + +func (e CapabilityType) ToCapabilityTypePtrOutput() CapabilityTypePtrOutput { + return e.ToCapabilityTypePtrOutputWithContext(context.Background()) +} + +func (e CapabilityType) ToCapabilityTypePtrOutputWithContext(ctx context.Context) CapabilityTypePtrOutput { + return CapabilityType(e).ToCapabilityTypeOutputWithContext(ctx).ToCapabilityTypePtrOutputWithContext(ctx) +} + +func (e CapabilityType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CapabilityType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CapabilityType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e CapabilityType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type CapabilityTypeOutput struct{ *pulumi.OutputState } + +func (CapabilityTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityType)(nil)).Elem() +} + +func (o CapabilityTypeOutput) ToCapabilityTypeOutput() CapabilityTypeOutput { + return o +} + +func (o CapabilityTypeOutput) ToCapabilityTypeOutputWithContext(ctx context.Context) CapabilityTypeOutput { + return o +} + +func (o CapabilityTypeOutput) ToCapabilityTypePtrOutput() CapabilityTypePtrOutput { + return o.ToCapabilityTypePtrOutputWithContext(context.Background()) +} + +func (o CapabilityTypeOutput) ToCapabilityTypePtrOutputWithContext(ctx context.Context) CapabilityTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CapabilityType) *CapabilityType { + return &v + }).(CapabilityTypePtrOutput) +} + +func (o CapabilityTypeOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityType] { + return pulumix.Output[CapabilityType]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o CapabilityTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CapabilityType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o CapabilityTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CapabilityTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CapabilityType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type CapabilityTypePtrOutput struct{ *pulumi.OutputState } + +func (CapabilityTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapabilityType)(nil)).Elem() +} + +func (o CapabilityTypePtrOutput) ToCapabilityTypePtrOutput() CapabilityTypePtrOutput { + return o +} + +func (o CapabilityTypePtrOutput) ToCapabilityTypePtrOutputWithContext(ctx context.Context) CapabilityTypePtrOutput { + return o +} + +func (o CapabilityTypePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapabilityType] { + return pulumix.Output[*CapabilityType]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityTypePtrOutput) Elem() CapabilityTypeOutput { + return o.ApplyT(func(v *CapabilityType) CapabilityType { + if v != nil { + return *v + } + var ret CapabilityType + return ret + }).(CapabilityTypeOutput) +} + +func (o CapabilityTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CapabilityTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *CapabilityType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// CapabilityTypeInput is an input type that accepts CapabilityTypeArgs and CapabilityTypeOutput values. +// You can construct a concrete instance of `CapabilityTypeInput` via: +// +// CapabilityTypeArgs{...} +type CapabilityTypeInput interface { + pulumi.Input + + ToCapabilityTypeOutput() CapabilityTypeOutput + ToCapabilityTypeOutputWithContext(context.Context) CapabilityTypeOutput +} + +var capabilityTypePtrType = reflect.TypeOf((**CapabilityType)(nil)).Elem() + +type CapabilityTypePtrInput interface { + pulumi.Input + + ToCapabilityTypePtrOutput() CapabilityTypePtrOutput + ToCapabilityTypePtrOutputWithContext(context.Context) CapabilityTypePtrOutput +} + +type capabilityTypePtr string + +func CapabilityTypePtr(v string) CapabilityTypePtrInput { + return (*capabilityTypePtr)(&v) +} + +func (*capabilityTypePtr) ElementType() reflect.Type { + return capabilityTypePtrType +} + +func (in *capabilityTypePtr) ToCapabilityTypePtrOutput() CapabilityTypePtrOutput { + return pulumi.ToOutput(in).(CapabilityTypePtrOutput) +} + +func (in *capabilityTypePtr) ToCapabilityTypePtrOutputWithContext(ctx context.Context) CapabilityTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(CapabilityTypePtrOutput) +} + +func (in *capabilityTypePtr) ToOutput(ctx context.Context) pulumix.Output[*CapabilityType] { + return pulumix.Output[*CapabilityType]{ + OutputState: in.ToCapabilityTypePtrOutputWithContext(ctx).OutputState, + } +} + +type CapabilityX12TransactionSet string + +const ( + CapabilityX12TransactionSetX12110 = CapabilityX12TransactionSet("X12_110") + CapabilityX12TransactionSetX12180 = CapabilityX12TransactionSet("X12_180") + CapabilityX12TransactionSetX12204 = CapabilityX12TransactionSet("X12_204") + CapabilityX12TransactionSetX12210 = CapabilityX12TransactionSet("X12_210") + CapabilityX12TransactionSetX12214 = CapabilityX12TransactionSet("X12_214") + CapabilityX12TransactionSetX12215 = CapabilityX12TransactionSet("X12_215") + CapabilityX12TransactionSetX12310 = CapabilityX12TransactionSet("X12_310") + CapabilityX12TransactionSetX12315 = CapabilityX12TransactionSet("X12_315") + CapabilityX12TransactionSetX12322 = CapabilityX12TransactionSet("X12_322") + CapabilityX12TransactionSetX12404 = CapabilityX12TransactionSet("X12_404") + CapabilityX12TransactionSetX12410 = CapabilityX12TransactionSet("X12_410") + CapabilityX12TransactionSetX12820 = CapabilityX12TransactionSet("X12_820") + CapabilityX12TransactionSetX12824 = CapabilityX12TransactionSet("X12_824") + CapabilityX12TransactionSetX12830 = CapabilityX12TransactionSet("X12_830") + CapabilityX12TransactionSetX12846 = CapabilityX12TransactionSet("X12_846") + CapabilityX12TransactionSetX12850 = CapabilityX12TransactionSet("X12_850") + CapabilityX12TransactionSetX12852 = CapabilityX12TransactionSet("X12_852") + CapabilityX12TransactionSetX12855 = CapabilityX12TransactionSet("X12_855") + CapabilityX12TransactionSetX12856 = CapabilityX12TransactionSet("X12_856") + CapabilityX12TransactionSetX12860 = CapabilityX12TransactionSet("X12_860") + CapabilityX12TransactionSetX12861 = CapabilityX12TransactionSet("X12_861") + CapabilityX12TransactionSetX12864 = CapabilityX12TransactionSet("X12_864") + CapabilityX12TransactionSetX12940 = CapabilityX12TransactionSet("X12_940") + CapabilityX12TransactionSetX12990 = CapabilityX12TransactionSet("X12_990") + CapabilityX12TransactionSetX12997 = CapabilityX12TransactionSet("X12_997") +) + +func (CapabilityX12TransactionSet) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityX12TransactionSet)(nil)).Elem() +} + +func (e CapabilityX12TransactionSet) ToCapabilityX12TransactionSetOutput() CapabilityX12TransactionSetOutput { + return pulumi.ToOutput(e).(CapabilityX12TransactionSetOutput) +} + +func (e CapabilityX12TransactionSet) ToCapabilityX12TransactionSetOutputWithContext(ctx context.Context) CapabilityX12TransactionSetOutput { + return pulumi.ToOutputWithContext(ctx, e).(CapabilityX12TransactionSetOutput) +} + +func (e CapabilityX12TransactionSet) ToCapabilityX12TransactionSetPtrOutput() CapabilityX12TransactionSetPtrOutput { + return e.ToCapabilityX12TransactionSetPtrOutputWithContext(context.Background()) +} + +func (e CapabilityX12TransactionSet) ToCapabilityX12TransactionSetPtrOutputWithContext(ctx context.Context) CapabilityX12TransactionSetPtrOutput { + return CapabilityX12TransactionSet(e).ToCapabilityX12TransactionSetOutputWithContext(ctx).ToCapabilityX12TransactionSetPtrOutputWithContext(ctx) +} + +func (e CapabilityX12TransactionSet) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CapabilityX12TransactionSet) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CapabilityX12TransactionSet) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e CapabilityX12TransactionSet) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type CapabilityX12TransactionSetOutput struct{ *pulumi.OutputState } + +func (CapabilityX12TransactionSetOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityX12TransactionSet)(nil)).Elem() +} + +func (o CapabilityX12TransactionSetOutput) ToCapabilityX12TransactionSetOutput() CapabilityX12TransactionSetOutput { + return o +} + +func (o CapabilityX12TransactionSetOutput) ToCapabilityX12TransactionSetOutputWithContext(ctx context.Context) CapabilityX12TransactionSetOutput { + return o +} + +func (o CapabilityX12TransactionSetOutput) ToCapabilityX12TransactionSetPtrOutput() CapabilityX12TransactionSetPtrOutput { + return o.ToCapabilityX12TransactionSetPtrOutputWithContext(context.Background()) +} + +func (o CapabilityX12TransactionSetOutput) ToCapabilityX12TransactionSetPtrOutputWithContext(ctx context.Context) CapabilityX12TransactionSetPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CapabilityX12TransactionSet) *CapabilityX12TransactionSet { + return &v + }).(CapabilityX12TransactionSetPtrOutput) +} + +func (o CapabilityX12TransactionSetOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityX12TransactionSet] { + return pulumix.Output[CapabilityX12TransactionSet]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityX12TransactionSetOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o CapabilityX12TransactionSetOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CapabilityX12TransactionSet) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o CapabilityX12TransactionSetOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CapabilityX12TransactionSetOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CapabilityX12TransactionSet) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type CapabilityX12TransactionSetPtrOutput struct{ *pulumi.OutputState } + +func (CapabilityX12TransactionSetPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapabilityX12TransactionSet)(nil)).Elem() +} + +func (o CapabilityX12TransactionSetPtrOutput) ToCapabilityX12TransactionSetPtrOutput() CapabilityX12TransactionSetPtrOutput { + return o +} + +func (o CapabilityX12TransactionSetPtrOutput) ToCapabilityX12TransactionSetPtrOutputWithContext(ctx context.Context) CapabilityX12TransactionSetPtrOutput { + return o +} + +func (o CapabilityX12TransactionSetPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapabilityX12TransactionSet] { + return pulumix.Output[*CapabilityX12TransactionSet]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityX12TransactionSetPtrOutput) Elem() CapabilityX12TransactionSetOutput { + return o.ApplyT(func(v *CapabilityX12TransactionSet) CapabilityX12TransactionSet { + if v != nil { + return *v + } + var ret CapabilityX12TransactionSet + return ret + }).(CapabilityX12TransactionSetOutput) +} + +func (o CapabilityX12TransactionSetPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CapabilityX12TransactionSetPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *CapabilityX12TransactionSet) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// CapabilityX12TransactionSetInput is an input type that accepts CapabilityX12TransactionSetArgs and CapabilityX12TransactionSetOutput values. +// You can construct a concrete instance of `CapabilityX12TransactionSetInput` via: +// +// CapabilityX12TransactionSetArgs{...} +type CapabilityX12TransactionSetInput interface { + pulumi.Input + + ToCapabilityX12TransactionSetOutput() CapabilityX12TransactionSetOutput + ToCapabilityX12TransactionSetOutputWithContext(context.Context) CapabilityX12TransactionSetOutput +} + +var capabilityX12TransactionSetPtrType = reflect.TypeOf((**CapabilityX12TransactionSet)(nil)).Elem() + +type CapabilityX12TransactionSetPtrInput interface { + pulumi.Input + + ToCapabilityX12TransactionSetPtrOutput() CapabilityX12TransactionSetPtrOutput + ToCapabilityX12TransactionSetPtrOutputWithContext(context.Context) CapabilityX12TransactionSetPtrOutput +} + +type capabilityX12TransactionSetPtr string + +func CapabilityX12TransactionSetPtr(v string) CapabilityX12TransactionSetPtrInput { + return (*capabilityX12TransactionSetPtr)(&v) +} + +func (*capabilityX12TransactionSetPtr) ElementType() reflect.Type { + return capabilityX12TransactionSetPtrType +} + +func (in *capabilityX12TransactionSetPtr) ToCapabilityX12TransactionSetPtrOutput() CapabilityX12TransactionSetPtrOutput { + return pulumi.ToOutput(in).(CapabilityX12TransactionSetPtrOutput) +} + +func (in *capabilityX12TransactionSetPtr) ToCapabilityX12TransactionSetPtrOutputWithContext(ctx context.Context) CapabilityX12TransactionSetPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(CapabilityX12TransactionSetPtrOutput) +} + +func (in *capabilityX12TransactionSetPtr) ToOutput(ctx context.Context) pulumix.Output[*CapabilityX12TransactionSet] { + return pulumix.Output[*CapabilityX12TransactionSet]{ + OutputState: in.ToCapabilityX12TransactionSetPtrOutputWithContext(ctx).OutputState, + } +} + +type CapabilityX12Version string + +const ( + CapabilityX12VersionVersion4010 = CapabilityX12Version("VERSION_4010") + CapabilityX12VersionVersion4030 = CapabilityX12Version("VERSION_4030") + CapabilityX12VersionVersion5010 = CapabilityX12Version("VERSION_5010") +) + +func (CapabilityX12Version) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityX12Version)(nil)).Elem() +} + +func (e CapabilityX12Version) ToCapabilityX12VersionOutput() CapabilityX12VersionOutput { + return pulumi.ToOutput(e).(CapabilityX12VersionOutput) +} + +func (e CapabilityX12Version) ToCapabilityX12VersionOutputWithContext(ctx context.Context) CapabilityX12VersionOutput { + return pulumi.ToOutputWithContext(ctx, e).(CapabilityX12VersionOutput) +} + +func (e CapabilityX12Version) ToCapabilityX12VersionPtrOutput() CapabilityX12VersionPtrOutput { + return e.ToCapabilityX12VersionPtrOutputWithContext(context.Background()) +} + +func (e CapabilityX12Version) ToCapabilityX12VersionPtrOutputWithContext(ctx context.Context) CapabilityX12VersionPtrOutput { + return CapabilityX12Version(e).ToCapabilityX12VersionOutputWithContext(ctx).ToCapabilityX12VersionPtrOutputWithContext(ctx) +} + +func (e CapabilityX12Version) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CapabilityX12Version) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CapabilityX12Version) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e CapabilityX12Version) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type CapabilityX12VersionOutput struct{ *pulumi.OutputState } + +func (CapabilityX12VersionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityX12Version)(nil)).Elem() +} + +func (o CapabilityX12VersionOutput) ToCapabilityX12VersionOutput() CapabilityX12VersionOutput { + return o +} + +func (o CapabilityX12VersionOutput) ToCapabilityX12VersionOutputWithContext(ctx context.Context) CapabilityX12VersionOutput { + return o +} + +func (o CapabilityX12VersionOutput) ToCapabilityX12VersionPtrOutput() CapabilityX12VersionPtrOutput { + return o.ToCapabilityX12VersionPtrOutputWithContext(context.Background()) +} + +func (o CapabilityX12VersionOutput) ToCapabilityX12VersionPtrOutputWithContext(ctx context.Context) CapabilityX12VersionPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CapabilityX12Version) *CapabilityX12Version { + return &v + }).(CapabilityX12VersionPtrOutput) +} + +func (o CapabilityX12VersionOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityX12Version] { + return pulumix.Output[CapabilityX12Version]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityX12VersionOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o CapabilityX12VersionOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CapabilityX12Version) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o CapabilityX12VersionOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CapabilityX12VersionOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CapabilityX12Version) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type CapabilityX12VersionPtrOutput struct{ *pulumi.OutputState } + +func (CapabilityX12VersionPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapabilityX12Version)(nil)).Elem() +} + +func (o CapabilityX12VersionPtrOutput) ToCapabilityX12VersionPtrOutput() CapabilityX12VersionPtrOutput { + return o +} + +func (o CapabilityX12VersionPtrOutput) ToCapabilityX12VersionPtrOutputWithContext(ctx context.Context) CapabilityX12VersionPtrOutput { + return o +} + +func (o CapabilityX12VersionPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapabilityX12Version] { + return pulumix.Output[*CapabilityX12Version]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityX12VersionPtrOutput) Elem() CapabilityX12VersionOutput { + return o.ApplyT(func(v *CapabilityX12Version) CapabilityX12Version { + if v != nil { + return *v + } + var ret CapabilityX12Version + return ret + }).(CapabilityX12VersionOutput) +} + +func (o CapabilityX12VersionPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CapabilityX12VersionPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *CapabilityX12Version) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// CapabilityX12VersionInput is an input type that accepts CapabilityX12VersionArgs and CapabilityX12VersionOutput values. +// You can construct a concrete instance of `CapabilityX12VersionInput` via: +// +// CapabilityX12VersionArgs{...} +type CapabilityX12VersionInput interface { + pulumi.Input + + ToCapabilityX12VersionOutput() CapabilityX12VersionOutput + ToCapabilityX12VersionOutputWithContext(context.Context) CapabilityX12VersionOutput +} + +var capabilityX12VersionPtrType = reflect.TypeOf((**CapabilityX12Version)(nil)).Elem() + +type CapabilityX12VersionPtrInput interface { + pulumi.Input + + ToCapabilityX12VersionPtrOutput() CapabilityX12VersionPtrOutput + ToCapabilityX12VersionPtrOutputWithContext(context.Context) CapabilityX12VersionPtrOutput +} + +type capabilityX12VersionPtr string + +func CapabilityX12VersionPtr(v string) CapabilityX12VersionPtrInput { + return (*capabilityX12VersionPtr)(&v) +} + +func (*capabilityX12VersionPtr) ElementType() reflect.Type { + return capabilityX12VersionPtrType +} + +func (in *capabilityX12VersionPtr) ToCapabilityX12VersionPtrOutput() CapabilityX12VersionPtrOutput { + return pulumi.ToOutput(in).(CapabilityX12VersionPtrOutput) +} + +func (in *capabilityX12VersionPtr) ToCapabilityX12VersionPtrOutputWithContext(ctx context.Context) CapabilityX12VersionPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(CapabilityX12VersionPtrOutput) +} + +func (in *capabilityX12VersionPtr) ToOutput(ctx context.Context) pulumix.Output[*CapabilityX12Version] { + return pulumix.Output[*CapabilityX12Version]{ + OutputState: in.ToCapabilityX12VersionPtrOutputWithContext(ctx).OutputState, + } +} + +type ProfileLogging string + +const ( + ProfileLoggingEnabled = ProfileLogging("ENABLED") + ProfileLoggingDisabled = ProfileLogging("DISABLED") +) + +func (ProfileLogging) ElementType() reflect.Type { + return reflect.TypeOf((*ProfileLogging)(nil)).Elem() +} + +func (e ProfileLogging) ToProfileLoggingOutput() ProfileLoggingOutput { + return pulumi.ToOutput(e).(ProfileLoggingOutput) +} + +func (e ProfileLogging) ToProfileLoggingOutputWithContext(ctx context.Context) ProfileLoggingOutput { + return pulumi.ToOutputWithContext(ctx, e).(ProfileLoggingOutput) +} + +func (e ProfileLogging) ToProfileLoggingPtrOutput() ProfileLoggingPtrOutput { + return e.ToProfileLoggingPtrOutputWithContext(context.Background()) +} + +func (e ProfileLogging) ToProfileLoggingPtrOutputWithContext(ctx context.Context) ProfileLoggingPtrOutput { + return ProfileLogging(e).ToProfileLoggingOutputWithContext(ctx).ToProfileLoggingPtrOutputWithContext(ctx) +} + +func (e ProfileLogging) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ProfileLogging) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ProfileLogging) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ProfileLogging) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ProfileLoggingOutput struct{ *pulumi.OutputState } + +func (ProfileLoggingOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ProfileLogging)(nil)).Elem() +} + +func (o ProfileLoggingOutput) ToProfileLoggingOutput() ProfileLoggingOutput { + return o +} + +func (o ProfileLoggingOutput) ToProfileLoggingOutputWithContext(ctx context.Context) ProfileLoggingOutput { + return o +} + +func (o ProfileLoggingOutput) ToProfileLoggingPtrOutput() ProfileLoggingPtrOutput { + return o.ToProfileLoggingPtrOutputWithContext(context.Background()) +} + +func (o ProfileLoggingOutput) ToProfileLoggingPtrOutputWithContext(ctx context.Context) ProfileLoggingPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ProfileLogging) *ProfileLogging { + return &v + }).(ProfileLoggingPtrOutput) +} + +func (o ProfileLoggingOutput) ToOutput(ctx context.Context) pulumix.Output[ProfileLogging] { + return pulumix.Output[ProfileLogging]{ + OutputState: o.OutputState, + } +} + +func (o ProfileLoggingOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ProfileLoggingOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ProfileLogging) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ProfileLoggingOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ProfileLoggingOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ProfileLogging) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ProfileLoggingPtrOutput struct{ *pulumi.OutputState } + +func (ProfileLoggingPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ProfileLogging)(nil)).Elem() +} + +func (o ProfileLoggingPtrOutput) ToProfileLoggingPtrOutput() ProfileLoggingPtrOutput { + return o +} + +func (o ProfileLoggingPtrOutput) ToProfileLoggingPtrOutputWithContext(ctx context.Context) ProfileLoggingPtrOutput { + return o +} + +func (o ProfileLoggingPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ProfileLogging] { + return pulumix.Output[*ProfileLogging]{ + OutputState: o.OutputState, + } +} + +func (o ProfileLoggingPtrOutput) Elem() ProfileLoggingOutput { + return o.ApplyT(func(v *ProfileLogging) ProfileLogging { + if v != nil { + return *v + } + var ret ProfileLogging + return ret + }).(ProfileLoggingOutput) +} + +func (o ProfileLoggingPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ProfileLoggingPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ProfileLogging) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ProfileLoggingInput is an input type that accepts ProfileLoggingArgs and ProfileLoggingOutput values. +// You can construct a concrete instance of `ProfileLoggingInput` via: +// +// ProfileLoggingArgs{...} +type ProfileLoggingInput interface { + pulumi.Input + + ToProfileLoggingOutput() ProfileLoggingOutput + ToProfileLoggingOutputWithContext(context.Context) ProfileLoggingOutput +} + +var profileLoggingPtrType = reflect.TypeOf((**ProfileLogging)(nil)).Elem() + +type ProfileLoggingPtrInput interface { + pulumi.Input + + ToProfileLoggingPtrOutput() ProfileLoggingPtrOutput + ToProfileLoggingPtrOutputWithContext(context.Context) ProfileLoggingPtrOutput +} + +type profileLoggingPtr string + +func ProfileLoggingPtr(v string) ProfileLoggingPtrInput { + return (*profileLoggingPtr)(&v) +} + +func (*profileLoggingPtr) ElementType() reflect.Type { + return profileLoggingPtrType +} + +func (in *profileLoggingPtr) ToProfileLoggingPtrOutput() ProfileLoggingPtrOutput { + return pulumi.ToOutput(in).(ProfileLoggingPtrOutput) +} + +func (in *profileLoggingPtr) ToProfileLoggingPtrOutputWithContext(ctx context.Context) ProfileLoggingPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ProfileLoggingPtrOutput) +} + +func (in *profileLoggingPtr) ToOutput(ctx context.Context) pulumix.Output[*ProfileLogging] { + return pulumix.Output[*ProfileLogging]{ + OutputState: in.ToProfileLoggingPtrOutputWithContext(ctx).OutputState, + } +} + +type TransformerFileFormat string + +const ( + TransformerFileFormatXml = TransformerFileFormat("XML") + TransformerFileFormatJson = TransformerFileFormat("JSON") +) + +func (TransformerFileFormat) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerFileFormat)(nil)).Elem() +} + +func (e TransformerFileFormat) ToTransformerFileFormatOutput() TransformerFileFormatOutput { + return pulumi.ToOutput(e).(TransformerFileFormatOutput) +} + +func (e TransformerFileFormat) ToTransformerFileFormatOutputWithContext(ctx context.Context) TransformerFileFormatOutput { + return pulumi.ToOutputWithContext(ctx, e).(TransformerFileFormatOutput) +} + +func (e TransformerFileFormat) ToTransformerFileFormatPtrOutput() TransformerFileFormatPtrOutput { + return e.ToTransformerFileFormatPtrOutputWithContext(context.Background()) +} + +func (e TransformerFileFormat) ToTransformerFileFormatPtrOutputWithContext(ctx context.Context) TransformerFileFormatPtrOutput { + return TransformerFileFormat(e).ToTransformerFileFormatOutputWithContext(ctx).ToTransformerFileFormatPtrOutputWithContext(ctx) +} + +func (e TransformerFileFormat) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerFileFormat) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerFileFormat) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e TransformerFileFormat) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type TransformerFileFormatOutput struct{ *pulumi.OutputState } + +func (TransformerFileFormatOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerFileFormat)(nil)).Elem() +} + +func (o TransformerFileFormatOutput) ToTransformerFileFormatOutput() TransformerFileFormatOutput { + return o +} + +func (o TransformerFileFormatOutput) ToTransformerFileFormatOutputWithContext(ctx context.Context) TransformerFileFormatOutput { + return o +} + +func (o TransformerFileFormatOutput) ToTransformerFileFormatPtrOutput() TransformerFileFormatPtrOutput { + return o.ToTransformerFileFormatPtrOutputWithContext(context.Background()) +} + +func (o TransformerFileFormatOutput) ToTransformerFileFormatPtrOutputWithContext(ctx context.Context) TransformerFileFormatPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerFileFormat) *TransformerFileFormat { + return &v + }).(TransformerFileFormatPtrOutput) +} + +func (o TransformerFileFormatOutput) ToOutput(ctx context.Context) pulumix.Output[TransformerFileFormat] { + return pulumix.Output[TransformerFileFormat]{ + OutputState: o.OutputState, + } +} + +func (o TransformerFileFormatOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o TransformerFileFormatOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerFileFormat) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o TransformerFileFormatOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerFileFormatOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerFileFormat) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type TransformerFileFormatPtrOutput struct{ *pulumi.OutputState } + +func (TransformerFileFormatPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerFileFormat)(nil)).Elem() +} + +func (o TransformerFileFormatPtrOutput) ToTransformerFileFormatPtrOutput() TransformerFileFormatPtrOutput { + return o +} + +func (o TransformerFileFormatPtrOutput) ToTransformerFileFormatPtrOutputWithContext(ctx context.Context) TransformerFileFormatPtrOutput { + return o +} + +func (o TransformerFileFormatPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TransformerFileFormat] { + return pulumix.Output[*TransformerFileFormat]{ + OutputState: o.OutputState, + } +} + +func (o TransformerFileFormatPtrOutput) Elem() TransformerFileFormatOutput { + return o.ApplyT(func(v *TransformerFileFormat) TransformerFileFormat { + if v != nil { + return *v + } + var ret TransformerFileFormat + return ret + }).(TransformerFileFormatOutput) +} + +func (o TransformerFileFormatPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerFileFormatPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *TransformerFileFormat) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// TransformerFileFormatInput is an input type that accepts TransformerFileFormatArgs and TransformerFileFormatOutput values. +// You can construct a concrete instance of `TransformerFileFormatInput` via: +// +// TransformerFileFormatArgs{...} +type TransformerFileFormatInput interface { + pulumi.Input + + ToTransformerFileFormatOutput() TransformerFileFormatOutput + ToTransformerFileFormatOutputWithContext(context.Context) TransformerFileFormatOutput +} + +var transformerFileFormatPtrType = reflect.TypeOf((**TransformerFileFormat)(nil)).Elem() + +type TransformerFileFormatPtrInput interface { + pulumi.Input + + ToTransformerFileFormatPtrOutput() TransformerFileFormatPtrOutput + ToTransformerFileFormatPtrOutputWithContext(context.Context) TransformerFileFormatPtrOutput +} + +type transformerFileFormatPtr string + +func TransformerFileFormatPtr(v string) TransformerFileFormatPtrInput { + return (*transformerFileFormatPtr)(&v) +} + +func (*transformerFileFormatPtr) ElementType() reflect.Type { + return transformerFileFormatPtrType +} + +func (in *transformerFileFormatPtr) ToTransformerFileFormatPtrOutput() TransformerFileFormatPtrOutput { + return pulumi.ToOutput(in).(TransformerFileFormatPtrOutput) +} + +func (in *transformerFileFormatPtr) ToTransformerFileFormatPtrOutputWithContext(ctx context.Context) TransformerFileFormatPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(TransformerFileFormatPtrOutput) +} + +func (in *transformerFileFormatPtr) ToOutput(ctx context.Context) pulumix.Output[*TransformerFileFormat] { + return pulumix.Output[*TransformerFileFormat]{ + OutputState: in.ToTransformerFileFormatPtrOutputWithContext(ctx).OutputState, + } +} + +type TransformerStatus string + +const ( + TransformerStatusActive = TransformerStatus("active") + TransformerStatusInactive = TransformerStatus("inactive") +) + +func (TransformerStatus) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerStatus)(nil)).Elem() +} + +func (e TransformerStatus) ToTransformerStatusOutput() TransformerStatusOutput { + return pulumi.ToOutput(e).(TransformerStatusOutput) +} + +func (e TransformerStatus) ToTransformerStatusOutputWithContext(ctx context.Context) TransformerStatusOutput { + return pulumi.ToOutputWithContext(ctx, e).(TransformerStatusOutput) +} + +func (e TransformerStatus) ToTransformerStatusPtrOutput() TransformerStatusPtrOutput { + return e.ToTransformerStatusPtrOutputWithContext(context.Background()) +} + +func (e TransformerStatus) ToTransformerStatusPtrOutputWithContext(ctx context.Context) TransformerStatusPtrOutput { + return TransformerStatus(e).ToTransformerStatusOutputWithContext(ctx).ToTransformerStatusPtrOutputWithContext(ctx) +} + +func (e TransformerStatus) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerStatus) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerStatus) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e TransformerStatus) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type TransformerStatusOutput struct{ *pulumi.OutputState } + +func (TransformerStatusOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerStatus)(nil)).Elem() +} + +func (o TransformerStatusOutput) ToTransformerStatusOutput() TransformerStatusOutput { + return o +} + +func (o TransformerStatusOutput) ToTransformerStatusOutputWithContext(ctx context.Context) TransformerStatusOutput { + return o +} + +func (o TransformerStatusOutput) ToTransformerStatusPtrOutput() TransformerStatusPtrOutput { + return o.ToTransformerStatusPtrOutputWithContext(context.Background()) +} + +func (o TransformerStatusOutput) ToTransformerStatusPtrOutputWithContext(ctx context.Context) TransformerStatusPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerStatus) *TransformerStatus { + return &v + }).(TransformerStatusPtrOutput) +} + +func (o TransformerStatusOutput) ToOutput(ctx context.Context) pulumix.Output[TransformerStatus] { + return pulumix.Output[TransformerStatus]{ + OutputState: o.OutputState, + } +} + +func (o TransformerStatusOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o TransformerStatusOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerStatus) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o TransformerStatusOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerStatusOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerStatus) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type TransformerStatusPtrOutput struct{ *pulumi.OutputState } + +func (TransformerStatusPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerStatus)(nil)).Elem() +} + +func (o TransformerStatusPtrOutput) ToTransformerStatusPtrOutput() TransformerStatusPtrOutput { + return o +} + +func (o TransformerStatusPtrOutput) ToTransformerStatusPtrOutputWithContext(ctx context.Context) TransformerStatusPtrOutput { + return o +} + +func (o TransformerStatusPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TransformerStatus] { + return pulumix.Output[*TransformerStatus]{ + OutputState: o.OutputState, + } +} + +func (o TransformerStatusPtrOutput) Elem() TransformerStatusOutput { + return o.ApplyT(func(v *TransformerStatus) TransformerStatus { + if v != nil { + return *v + } + var ret TransformerStatus + return ret + }).(TransformerStatusOutput) +} + +func (o TransformerStatusPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerStatusPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *TransformerStatus) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// TransformerStatusInput is an input type that accepts TransformerStatusArgs and TransformerStatusOutput values. +// You can construct a concrete instance of `TransformerStatusInput` via: +// +// TransformerStatusArgs{...} +type TransformerStatusInput interface { + pulumi.Input + + ToTransformerStatusOutput() TransformerStatusOutput + ToTransformerStatusOutputWithContext(context.Context) TransformerStatusOutput +} + +var transformerStatusPtrType = reflect.TypeOf((**TransformerStatus)(nil)).Elem() + +type TransformerStatusPtrInput interface { + pulumi.Input + + ToTransformerStatusPtrOutput() TransformerStatusPtrOutput + ToTransformerStatusPtrOutputWithContext(context.Context) TransformerStatusPtrOutput +} + +type transformerStatusPtr string + +func TransformerStatusPtr(v string) TransformerStatusPtrInput { + return (*transformerStatusPtr)(&v) +} + +func (*transformerStatusPtr) ElementType() reflect.Type { + return transformerStatusPtrType +} + +func (in *transformerStatusPtr) ToTransformerStatusPtrOutput() TransformerStatusPtrOutput { + return pulumi.ToOutput(in).(TransformerStatusPtrOutput) +} + +func (in *transformerStatusPtr) ToTransformerStatusPtrOutputWithContext(ctx context.Context) TransformerStatusPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(TransformerStatusPtrOutput) +} + +func (in *transformerStatusPtr) ToOutput(ctx context.Context) pulumix.Output[*TransformerStatus] { + return pulumix.Output[*TransformerStatus]{ + OutputState: in.ToTransformerStatusPtrOutputWithContext(ctx).OutputState, + } +} + +type TransformerX12TransactionSet string + +const ( + TransformerX12TransactionSetX12110 = TransformerX12TransactionSet("X12_110") + TransformerX12TransactionSetX12180 = TransformerX12TransactionSet("X12_180") + TransformerX12TransactionSetX12204 = TransformerX12TransactionSet("X12_204") + TransformerX12TransactionSetX12210 = TransformerX12TransactionSet("X12_210") + TransformerX12TransactionSetX12214 = TransformerX12TransactionSet("X12_214") + TransformerX12TransactionSetX12215 = TransformerX12TransactionSet("X12_215") + TransformerX12TransactionSetX12310 = TransformerX12TransactionSet("X12_310") + TransformerX12TransactionSetX12315 = TransformerX12TransactionSet("X12_315") + TransformerX12TransactionSetX12322 = TransformerX12TransactionSet("X12_322") + TransformerX12TransactionSetX12404 = TransformerX12TransactionSet("X12_404") + TransformerX12TransactionSetX12410 = TransformerX12TransactionSet("X12_410") + TransformerX12TransactionSetX12820 = TransformerX12TransactionSet("X12_820") + TransformerX12TransactionSetX12824 = TransformerX12TransactionSet("X12_824") + TransformerX12TransactionSetX12830 = TransformerX12TransactionSet("X12_830") + TransformerX12TransactionSetX12846 = TransformerX12TransactionSet("X12_846") + TransformerX12TransactionSetX12850 = TransformerX12TransactionSet("X12_850") + TransformerX12TransactionSetX12852 = TransformerX12TransactionSet("X12_852") + TransformerX12TransactionSetX12855 = TransformerX12TransactionSet("X12_855") + TransformerX12TransactionSetX12856 = TransformerX12TransactionSet("X12_856") + TransformerX12TransactionSetX12860 = TransformerX12TransactionSet("X12_860") + TransformerX12TransactionSetX12861 = TransformerX12TransactionSet("X12_861") + TransformerX12TransactionSetX12864 = TransformerX12TransactionSet("X12_864") + TransformerX12TransactionSetX12940 = TransformerX12TransactionSet("X12_940") + TransformerX12TransactionSetX12990 = TransformerX12TransactionSet("X12_990") + TransformerX12TransactionSetX12997 = TransformerX12TransactionSet("X12_997") +) + +func (TransformerX12TransactionSet) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerX12TransactionSet)(nil)).Elem() +} + +func (e TransformerX12TransactionSet) ToTransformerX12TransactionSetOutput() TransformerX12TransactionSetOutput { + return pulumi.ToOutput(e).(TransformerX12TransactionSetOutput) +} + +func (e TransformerX12TransactionSet) ToTransformerX12TransactionSetOutputWithContext(ctx context.Context) TransformerX12TransactionSetOutput { + return pulumi.ToOutputWithContext(ctx, e).(TransformerX12TransactionSetOutput) +} + +func (e TransformerX12TransactionSet) ToTransformerX12TransactionSetPtrOutput() TransformerX12TransactionSetPtrOutput { + return e.ToTransformerX12TransactionSetPtrOutputWithContext(context.Background()) +} + +func (e TransformerX12TransactionSet) ToTransformerX12TransactionSetPtrOutputWithContext(ctx context.Context) TransformerX12TransactionSetPtrOutput { + return TransformerX12TransactionSet(e).ToTransformerX12TransactionSetOutputWithContext(ctx).ToTransformerX12TransactionSetPtrOutputWithContext(ctx) +} + +func (e TransformerX12TransactionSet) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerX12TransactionSet) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerX12TransactionSet) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e TransformerX12TransactionSet) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type TransformerX12TransactionSetOutput struct{ *pulumi.OutputState } + +func (TransformerX12TransactionSetOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerX12TransactionSet)(nil)).Elem() +} + +func (o TransformerX12TransactionSetOutput) ToTransformerX12TransactionSetOutput() TransformerX12TransactionSetOutput { + return o +} + +func (o TransformerX12TransactionSetOutput) ToTransformerX12TransactionSetOutputWithContext(ctx context.Context) TransformerX12TransactionSetOutput { + return o +} + +func (o TransformerX12TransactionSetOutput) ToTransformerX12TransactionSetPtrOutput() TransformerX12TransactionSetPtrOutput { + return o.ToTransformerX12TransactionSetPtrOutputWithContext(context.Background()) +} + +func (o TransformerX12TransactionSetOutput) ToTransformerX12TransactionSetPtrOutputWithContext(ctx context.Context) TransformerX12TransactionSetPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerX12TransactionSet) *TransformerX12TransactionSet { + return &v + }).(TransformerX12TransactionSetPtrOutput) +} + +func (o TransformerX12TransactionSetOutput) ToOutput(ctx context.Context) pulumix.Output[TransformerX12TransactionSet] { + return pulumix.Output[TransformerX12TransactionSet]{ + OutputState: o.OutputState, + } +} + +func (o TransformerX12TransactionSetOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o TransformerX12TransactionSetOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerX12TransactionSet) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o TransformerX12TransactionSetOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerX12TransactionSetOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerX12TransactionSet) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type TransformerX12TransactionSetPtrOutput struct{ *pulumi.OutputState } + +func (TransformerX12TransactionSetPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerX12TransactionSet)(nil)).Elem() +} + +func (o TransformerX12TransactionSetPtrOutput) ToTransformerX12TransactionSetPtrOutput() TransformerX12TransactionSetPtrOutput { + return o +} + +func (o TransformerX12TransactionSetPtrOutput) ToTransformerX12TransactionSetPtrOutputWithContext(ctx context.Context) TransformerX12TransactionSetPtrOutput { + return o +} + +func (o TransformerX12TransactionSetPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TransformerX12TransactionSet] { + return pulumix.Output[*TransformerX12TransactionSet]{ + OutputState: o.OutputState, + } +} + +func (o TransformerX12TransactionSetPtrOutput) Elem() TransformerX12TransactionSetOutput { + return o.ApplyT(func(v *TransformerX12TransactionSet) TransformerX12TransactionSet { + if v != nil { + return *v + } + var ret TransformerX12TransactionSet + return ret + }).(TransformerX12TransactionSetOutput) +} + +func (o TransformerX12TransactionSetPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerX12TransactionSetPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *TransformerX12TransactionSet) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// TransformerX12TransactionSetInput is an input type that accepts TransformerX12TransactionSetArgs and TransformerX12TransactionSetOutput values. +// You can construct a concrete instance of `TransformerX12TransactionSetInput` via: +// +// TransformerX12TransactionSetArgs{...} +type TransformerX12TransactionSetInput interface { + pulumi.Input + + ToTransformerX12TransactionSetOutput() TransformerX12TransactionSetOutput + ToTransformerX12TransactionSetOutputWithContext(context.Context) TransformerX12TransactionSetOutput +} + +var transformerX12TransactionSetPtrType = reflect.TypeOf((**TransformerX12TransactionSet)(nil)).Elem() + +type TransformerX12TransactionSetPtrInput interface { + pulumi.Input + + ToTransformerX12TransactionSetPtrOutput() TransformerX12TransactionSetPtrOutput + ToTransformerX12TransactionSetPtrOutputWithContext(context.Context) TransformerX12TransactionSetPtrOutput +} + +type transformerX12TransactionSetPtr string + +func TransformerX12TransactionSetPtr(v string) TransformerX12TransactionSetPtrInput { + return (*transformerX12TransactionSetPtr)(&v) +} + +func (*transformerX12TransactionSetPtr) ElementType() reflect.Type { + return transformerX12TransactionSetPtrType +} + +func (in *transformerX12TransactionSetPtr) ToTransformerX12TransactionSetPtrOutput() TransformerX12TransactionSetPtrOutput { + return pulumi.ToOutput(in).(TransformerX12TransactionSetPtrOutput) +} + +func (in *transformerX12TransactionSetPtr) ToTransformerX12TransactionSetPtrOutputWithContext(ctx context.Context) TransformerX12TransactionSetPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(TransformerX12TransactionSetPtrOutput) +} + +func (in *transformerX12TransactionSetPtr) ToOutput(ctx context.Context) pulumix.Output[*TransformerX12TransactionSet] { + return pulumix.Output[*TransformerX12TransactionSet]{ + OutputState: in.ToTransformerX12TransactionSetPtrOutputWithContext(ctx).OutputState, + } +} + +type TransformerX12Version string + +const ( + TransformerX12VersionVersion4010 = TransformerX12Version("VERSION_4010") + TransformerX12VersionVersion4030 = TransformerX12Version("VERSION_4030") + TransformerX12VersionVersion5010 = TransformerX12Version("VERSION_5010") +) + +func (TransformerX12Version) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerX12Version)(nil)).Elem() +} + +func (e TransformerX12Version) ToTransformerX12VersionOutput() TransformerX12VersionOutput { + return pulumi.ToOutput(e).(TransformerX12VersionOutput) +} + +func (e TransformerX12Version) ToTransformerX12VersionOutputWithContext(ctx context.Context) TransformerX12VersionOutput { + return pulumi.ToOutputWithContext(ctx, e).(TransformerX12VersionOutput) +} + +func (e TransformerX12Version) ToTransformerX12VersionPtrOutput() TransformerX12VersionPtrOutput { + return e.ToTransformerX12VersionPtrOutputWithContext(context.Background()) +} + +func (e TransformerX12Version) ToTransformerX12VersionPtrOutputWithContext(ctx context.Context) TransformerX12VersionPtrOutput { + return TransformerX12Version(e).ToTransformerX12VersionOutputWithContext(ctx).ToTransformerX12VersionPtrOutputWithContext(ctx) +} + +func (e TransformerX12Version) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerX12Version) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e TransformerX12Version) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e TransformerX12Version) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type TransformerX12VersionOutput struct{ *pulumi.OutputState } + +func (TransformerX12VersionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerX12Version)(nil)).Elem() +} + +func (o TransformerX12VersionOutput) ToTransformerX12VersionOutput() TransformerX12VersionOutput { + return o +} + +func (o TransformerX12VersionOutput) ToTransformerX12VersionOutputWithContext(ctx context.Context) TransformerX12VersionOutput { + return o +} + +func (o TransformerX12VersionOutput) ToTransformerX12VersionPtrOutput() TransformerX12VersionPtrOutput { + return o.ToTransformerX12VersionPtrOutputWithContext(context.Background()) +} + +func (o TransformerX12VersionOutput) ToTransformerX12VersionPtrOutputWithContext(ctx context.Context) TransformerX12VersionPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v TransformerX12Version) *TransformerX12Version { + return &v + }).(TransformerX12VersionPtrOutput) +} + +func (o TransformerX12VersionOutput) ToOutput(ctx context.Context) pulumix.Output[TransformerX12Version] { + return pulumix.Output[TransformerX12Version]{ + OutputState: o.OutputState, + } +} + +func (o TransformerX12VersionOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o TransformerX12VersionOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerX12Version) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o TransformerX12VersionOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerX12VersionOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e TransformerX12Version) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type TransformerX12VersionPtrOutput struct{ *pulumi.OutputState } + +func (TransformerX12VersionPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerX12Version)(nil)).Elem() +} + +func (o TransformerX12VersionPtrOutput) ToTransformerX12VersionPtrOutput() TransformerX12VersionPtrOutput { + return o +} + +func (o TransformerX12VersionPtrOutput) ToTransformerX12VersionPtrOutputWithContext(ctx context.Context) TransformerX12VersionPtrOutput { + return o +} + +func (o TransformerX12VersionPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TransformerX12Version] { + return pulumix.Output[*TransformerX12Version]{ + OutputState: o.OutputState, + } +} + +func (o TransformerX12VersionPtrOutput) Elem() TransformerX12VersionOutput { + return o.ApplyT(func(v *TransformerX12Version) TransformerX12Version { + if v != nil { + return *v + } + var ret TransformerX12Version + return ret + }).(TransformerX12VersionOutput) +} + +func (o TransformerX12VersionPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o TransformerX12VersionPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *TransformerX12Version) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// TransformerX12VersionInput is an input type that accepts TransformerX12VersionArgs and TransformerX12VersionOutput values. +// You can construct a concrete instance of `TransformerX12VersionInput` via: +// +// TransformerX12VersionArgs{...} +type TransformerX12VersionInput interface { + pulumi.Input + + ToTransformerX12VersionOutput() TransformerX12VersionOutput + ToTransformerX12VersionOutputWithContext(context.Context) TransformerX12VersionOutput +} + +var transformerX12VersionPtrType = reflect.TypeOf((**TransformerX12Version)(nil)).Elem() + +type TransformerX12VersionPtrInput interface { + pulumi.Input + + ToTransformerX12VersionPtrOutput() TransformerX12VersionPtrOutput + ToTransformerX12VersionPtrOutputWithContext(context.Context) TransformerX12VersionPtrOutput +} + +type transformerX12VersionPtr string + +func TransformerX12VersionPtr(v string) TransformerX12VersionPtrInput { + return (*transformerX12VersionPtr)(&v) +} + +func (*transformerX12VersionPtr) ElementType() reflect.Type { + return transformerX12VersionPtrType +} + +func (in *transformerX12VersionPtr) ToTransformerX12VersionPtrOutput() TransformerX12VersionPtrOutput { + return pulumi.ToOutput(in).(TransformerX12VersionPtrOutput) +} + +func (in *transformerX12VersionPtr) ToTransformerX12VersionPtrOutputWithContext(ctx context.Context) TransformerX12VersionPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(TransformerX12VersionPtrOutput) +} + +func (in *transformerX12VersionPtr) ToOutput(ctx context.Context) pulumix.Output[*TransformerX12Version] { + return pulumix.Output[*TransformerX12Version]{ + OutputState: in.ToTransformerX12VersionPtrOutputWithContext(ctx).OutputState, + } +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityTypeInput)(nil)).Elem(), CapabilityType("edi")) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityTypePtrInput)(nil)).Elem(), CapabilityType("edi")) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityX12TransactionSetInput)(nil)).Elem(), CapabilityX12TransactionSet("X12_110")) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityX12TransactionSetPtrInput)(nil)).Elem(), CapabilityX12TransactionSet("X12_110")) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityX12VersionInput)(nil)).Elem(), CapabilityX12Version("VERSION_4010")) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityX12VersionPtrInput)(nil)).Elem(), CapabilityX12Version("VERSION_4010")) + pulumi.RegisterInputType(reflect.TypeOf((*ProfileLoggingInput)(nil)).Elem(), ProfileLogging("ENABLED")) + pulumi.RegisterInputType(reflect.TypeOf((*ProfileLoggingPtrInput)(nil)).Elem(), ProfileLogging("ENABLED")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerFileFormatInput)(nil)).Elem(), TransformerFileFormat("XML")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerFileFormatPtrInput)(nil)).Elem(), TransformerFileFormat("XML")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerStatusInput)(nil)).Elem(), TransformerStatus("active")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerStatusPtrInput)(nil)).Elem(), TransformerStatus("active")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerX12TransactionSetInput)(nil)).Elem(), TransformerX12TransactionSet("X12_110")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerX12TransactionSetPtrInput)(nil)).Elem(), TransformerX12TransactionSet("X12_110")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerX12VersionInput)(nil)).Elem(), TransformerX12Version("VERSION_4010")) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerX12VersionPtrInput)(nil)).Elem(), TransformerX12Version("VERSION_4010")) + pulumi.RegisterOutputType(CapabilityTypeOutput{}) + pulumi.RegisterOutputType(CapabilityTypePtrOutput{}) + pulumi.RegisterOutputType(CapabilityX12TransactionSetOutput{}) + pulumi.RegisterOutputType(CapabilityX12TransactionSetPtrOutput{}) + pulumi.RegisterOutputType(CapabilityX12VersionOutput{}) + pulumi.RegisterOutputType(CapabilityX12VersionPtrOutput{}) + pulumi.RegisterOutputType(ProfileLoggingOutput{}) + pulumi.RegisterOutputType(ProfileLoggingPtrOutput{}) + pulumi.RegisterOutputType(TransformerFileFormatOutput{}) + pulumi.RegisterOutputType(TransformerFileFormatPtrOutput{}) + pulumi.RegisterOutputType(TransformerStatusOutput{}) + pulumi.RegisterOutputType(TransformerStatusPtrOutput{}) + pulumi.RegisterOutputType(TransformerX12TransactionSetOutput{}) + pulumi.RegisterOutputType(TransformerX12TransactionSetPtrOutput{}) + pulumi.RegisterOutputType(TransformerX12VersionOutput{}) + pulumi.RegisterOutputType(TransformerX12VersionPtrOutput{}) +} diff --git a/sdk/go/aws/b2bi/pulumiTypes.go b/sdk/go/aws/b2bi/pulumiTypes.go new file mode 100644 index 0000000000..06a9f0184a --- /dev/null +++ b/sdk/go/aws/b2bi/pulumiTypes.go @@ -0,0 +1,1412 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +var _ = internal.GetEnvOrDefault + +type CapabilityConfiguration0Properties struct { + Edi CapabilityEdiConfiguration `pulumi:"edi"` +} + +type CapabilityConfigurationProperties struct { + Edi CapabilityEdiConfiguration `pulumi:"edi"` +} + +// CapabilityConfigurationPropertiesInput is an input type that accepts CapabilityConfigurationPropertiesArgs and CapabilityConfigurationPropertiesOutput values. +// You can construct a concrete instance of `CapabilityConfigurationPropertiesInput` via: +// +// CapabilityConfigurationPropertiesArgs{...} +type CapabilityConfigurationPropertiesInput interface { + pulumi.Input + + ToCapabilityConfigurationPropertiesOutput() CapabilityConfigurationPropertiesOutput + ToCapabilityConfigurationPropertiesOutputWithContext(context.Context) CapabilityConfigurationPropertiesOutput +} + +type CapabilityConfigurationPropertiesArgs struct { + Edi CapabilityEdiConfigurationInput `pulumi:"edi"` +} + +func (CapabilityConfigurationPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityConfigurationProperties)(nil)).Elem() +} + +func (i CapabilityConfigurationPropertiesArgs) ToCapabilityConfigurationPropertiesOutput() CapabilityConfigurationPropertiesOutput { + return i.ToCapabilityConfigurationPropertiesOutputWithContext(context.Background()) +} + +func (i CapabilityConfigurationPropertiesArgs) ToCapabilityConfigurationPropertiesOutputWithContext(ctx context.Context) CapabilityConfigurationPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityConfigurationPropertiesOutput) +} + +func (i CapabilityConfigurationPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[CapabilityConfigurationProperties] { + return pulumix.Output[CapabilityConfigurationProperties]{ + OutputState: i.ToCapabilityConfigurationPropertiesOutputWithContext(ctx).OutputState, + } +} + +type CapabilityConfigurationPropertiesOutput struct{ *pulumi.OutputState } + +func (CapabilityConfigurationPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityConfigurationProperties)(nil)).Elem() +} + +func (o CapabilityConfigurationPropertiesOutput) ToCapabilityConfigurationPropertiesOutput() CapabilityConfigurationPropertiesOutput { + return o +} + +func (o CapabilityConfigurationPropertiesOutput) ToCapabilityConfigurationPropertiesOutputWithContext(ctx context.Context) CapabilityConfigurationPropertiesOutput { + return o +} + +func (o CapabilityConfigurationPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityConfigurationProperties] { + return pulumix.Output[CapabilityConfigurationProperties]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityConfigurationPropertiesOutput) Edi() CapabilityEdiConfigurationOutput { + return o.ApplyT(func(v CapabilityConfigurationProperties) CapabilityEdiConfiguration { return v.Edi }).(CapabilityEdiConfigurationOutput) +} + +type CapabilityConfigurationPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (CapabilityConfigurationPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapabilityConfigurationProperties)(nil)).Elem() +} + +func (o CapabilityConfigurationPropertiesPtrOutput) ToCapabilityConfigurationPropertiesPtrOutput() CapabilityConfigurationPropertiesPtrOutput { + return o +} + +func (o CapabilityConfigurationPropertiesPtrOutput) ToCapabilityConfigurationPropertiesPtrOutputWithContext(ctx context.Context) CapabilityConfigurationPropertiesPtrOutput { + return o +} + +func (o CapabilityConfigurationPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapabilityConfigurationProperties] { + return pulumix.Output[*CapabilityConfigurationProperties]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityConfigurationPropertiesPtrOutput) Elem() CapabilityConfigurationPropertiesOutput { + return o.ApplyT(func(v *CapabilityConfigurationProperties) CapabilityConfigurationProperties { + if v != nil { + return *v + } + var ret CapabilityConfigurationProperties + return ret + }).(CapabilityConfigurationPropertiesOutput) +} + +func (o CapabilityConfigurationPropertiesPtrOutput) Edi() CapabilityEdiConfigurationPtrOutput { + return o.ApplyT(func(v *CapabilityConfigurationProperties) *CapabilityEdiConfiguration { + if v == nil { + return nil + } + return &v.Edi + }).(CapabilityEdiConfigurationPtrOutput) +} + +type CapabilityEdiConfiguration struct { + InputLocation CapabilityS3Location `pulumi:"inputLocation"` + OutputLocation CapabilityS3Location `pulumi:"outputLocation"` + TransformerId string `pulumi:"transformerId"` + Type CapabilityEdiTypeProperties `pulumi:"type"` +} + +// CapabilityEdiConfigurationInput is an input type that accepts CapabilityEdiConfigurationArgs and CapabilityEdiConfigurationOutput values. +// You can construct a concrete instance of `CapabilityEdiConfigurationInput` via: +// +// CapabilityEdiConfigurationArgs{...} +type CapabilityEdiConfigurationInput interface { + pulumi.Input + + ToCapabilityEdiConfigurationOutput() CapabilityEdiConfigurationOutput + ToCapabilityEdiConfigurationOutputWithContext(context.Context) CapabilityEdiConfigurationOutput +} + +type CapabilityEdiConfigurationArgs struct { + InputLocation CapabilityS3LocationInput `pulumi:"inputLocation"` + OutputLocation CapabilityS3LocationInput `pulumi:"outputLocation"` + TransformerId pulumi.StringInput `pulumi:"transformerId"` + Type CapabilityEdiTypePropertiesInput `pulumi:"type"` +} + +func (CapabilityEdiConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityEdiConfiguration)(nil)).Elem() +} + +func (i CapabilityEdiConfigurationArgs) ToCapabilityEdiConfigurationOutput() CapabilityEdiConfigurationOutput { + return i.ToCapabilityEdiConfigurationOutputWithContext(context.Background()) +} + +func (i CapabilityEdiConfigurationArgs) ToCapabilityEdiConfigurationOutputWithContext(ctx context.Context) CapabilityEdiConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityEdiConfigurationOutput) +} + +func (i CapabilityEdiConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[CapabilityEdiConfiguration] { + return pulumix.Output[CapabilityEdiConfiguration]{ + OutputState: i.ToCapabilityEdiConfigurationOutputWithContext(ctx).OutputState, + } +} + +type CapabilityEdiConfigurationOutput struct{ *pulumi.OutputState } + +func (CapabilityEdiConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityEdiConfiguration)(nil)).Elem() +} + +func (o CapabilityEdiConfigurationOutput) ToCapabilityEdiConfigurationOutput() CapabilityEdiConfigurationOutput { + return o +} + +func (o CapabilityEdiConfigurationOutput) ToCapabilityEdiConfigurationOutputWithContext(ctx context.Context) CapabilityEdiConfigurationOutput { + return o +} + +func (o CapabilityEdiConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityEdiConfiguration] { + return pulumix.Output[CapabilityEdiConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityEdiConfigurationOutput) InputLocation() CapabilityS3LocationOutput { + return o.ApplyT(func(v CapabilityEdiConfiguration) CapabilityS3Location { return v.InputLocation }).(CapabilityS3LocationOutput) +} + +func (o CapabilityEdiConfigurationOutput) OutputLocation() CapabilityS3LocationOutput { + return o.ApplyT(func(v CapabilityEdiConfiguration) CapabilityS3Location { return v.OutputLocation }).(CapabilityS3LocationOutput) +} + +func (o CapabilityEdiConfigurationOutput) TransformerId() pulumi.StringOutput { + return o.ApplyT(func(v CapabilityEdiConfiguration) string { return v.TransformerId }).(pulumi.StringOutput) +} + +func (o CapabilityEdiConfigurationOutput) Type() CapabilityEdiTypePropertiesOutput { + return o.ApplyT(func(v CapabilityEdiConfiguration) CapabilityEdiTypeProperties { return v.Type }).(CapabilityEdiTypePropertiesOutput) +} + +type CapabilityEdiConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (CapabilityEdiConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapabilityEdiConfiguration)(nil)).Elem() +} + +func (o CapabilityEdiConfigurationPtrOutput) ToCapabilityEdiConfigurationPtrOutput() CapabilityEdiConfigurationPtrOutput { + return o +} + +func (o CapabilityEdiConfigurationPtrOutput) ToCapabilityEdiConfigurationPtrOutputWithContext(ctx context.Context) CapabilityEdiConfigurationPtrOutput { + return o +} + +func (o CapabilityEdiConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapabilityEdiConfiguration] { + return pulumix.Output[*CapabilityEdiConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityEdiConfigurationPtrOutput) Elem() CapabilityEdiConfigurationOutput { + return o.ApplyT(func(v *CapabilityEdiConfiguration) CapabilityEdiConfiguration { + if v != nil { + return *v + } + var ret CapabilityEdiConfiguration + return ret + }).(CapabilityEdiConfigurationOutput) +} + +func (o CapabilityEdiConfigurationPtrOutput) InputLocation() CapabilityS3LocationPtrOutput { + return o.ApplyT(func(v *CapabilityEdiConfiguration) *CapabilityS3Location { + if v == nil { + return nil + } + return &v.InputLocation + }).(CapabilityS3LocationPtrOutput) +} + +func (o CapabilityEdiConfigurationPtrOutput) OutputLocation() CapabilityS3LocationPtrOutput { + return o.ApplyT(func(v *CapabilityEdiConfiguration) *CapabilityS3Location { + if v == nil { + return nil + } + return &v.OutputLocation + }).(CapabilityS3LocationPtrOutput) +} + +func (o CapabilityEdiConfigurationPtrOutput) TransformerId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *CapabilityEdiConfiguration) *string { + if v == nil { + return nil + } + return &v.TransformerId + }).(pulumi.StringPtrOutput) +} + +func (o CapabilityEdiConfigurationPtrOutput) Type() CapabilityEdiTypePropertiesPtrOutput { + return o.ApplyT(func(v *CapabilityEdiConfiguration) *CapabilityEdiTypeProperties { + if v == nil { + return nil + } + return &v.Type + }).(CapabilityEdiTypePropertiesPtrOutput) +} + +type CapabilityEdiType0Properties struct { + X12Details CapabilityX12Details `pulumi:"x12Details"` +} + +type CapabilityEdiTypeProperties struct { + X12Details CapabilityX12Details `pulumi:"x12Details"` +} + +// CapabilityEdiTypePropertiesInput is an input type that accepts CapabilityEdiTypePropertiesArgs and CapabilityEdiTypePropertiesOutput values. +// You can construct a concrete instance of `CapabilityEdiTypePropertiesInput` via: +// +// CapabilityEdiTypePropertiesArgs{...} +type CapabilityEdiTypePropertiesInput interface { + pulumi.Input + + ToCapabilityEdiTypePropertiesOutput() CapabilityEdiTypePropertiesOutput + ToCapabilityEdiTypePropertiesOutputWithContext(context.Context) CapabilityEdiTypePropertiesOutput +} + +type CapabilityEdiTypePropertiesArgs struct { + X12Details CapabilityX12DetailsInput `pulumi:"x12Details"` +} + +func (CapabilityEdiTypePropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityEdiTypeProperties)(nil)).Elem() +} + +func (i CapabilityEdiTypePropertiesArgs) ToCapabilityEdiTypePropertiesOutput() CapabilityEdiTypePropertiesOutput { + return i.ToCapabilityEdiTypePropertiesOutputWithContext(context.Background()) +} + +func (i CapabilityEdiTypePropertiesArgs) ToCapabilityEdiTypePropertiesOutputWithContext(ctx context.Context) CapabilityEdiTypePropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityEdiTypePropertiesOutput) +} + +func (i CapabilityEdiTypePropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[CapabilityEdiTypeProperties] { + return pulumix.Output[CapabilityEdiTypeProperties]{ + OutputState: i.ToCapabilityEdiTypePropertiesOutputWithContext(ctx).OutputState, + } +} + +type CapabilityEdiTypePropertiesOutput struct{ *pulumi.OutputState } + +func (CapabilityEdiTypePropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityEdiTypeProperties)(nil)).Elem() +} + +func (o CapabilityEdiTypePropertiesOutput) ToCapabilityEdiTypePropertiesOutput() CapabilityEdiTypePropertiesOutput { + return o +} + +func (o CapabilityEdiTypePropertiesOutput) ToCapabilityEdiTypePropertiesOutputWithContext(ctx context.Context) CapabilityEdiTypePropertiesOutput { + return o +} + +func (o CapabilityEdiTypePropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityEdiTypeProperties] { + return pulumix.Output[CapabilityEdiTypeProperties]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityEdiTypePropertiesOutput) X12Details() CapabilityX12DetailsOutput { + return o.ApplyT(func(v CapabilityEdiTypeProperties) CapabilityX12Details { return v.X12Details }).(CapabilityX12DetailsOutput) +} + +type CapabilityEdiTypePropertiesPtrOutput struct{ *pulumi.OutputState } + +func (CapabilityEdiTypePropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapabilityEdiTypeProperties)(nil)).Elem() +} + +func (o CapabilityEdiTypePropertiesPtrOutput) ToCapabilityEdiTypePropertiesPtrOutput() CapabilityEdiTypePropertiesPtrOutput { + return o +} + +func (o CapabilityEdiTypePropertiesPtrOutput) ToCapabilityEdiTypePropertiesPtrOutputWithContext(ctx context.Context) CapabilityEdiTypePropertiesPtrOutput { + return o +} + +func (o CapabilityEdiTypePropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapabilityEdiTypeProperties] { + return pulumix.Output[*CapabilityEdiTypeProperties]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityEdiTypePropertiesPtrOutput) Elem() CapabilityEdiTypePropertiesOutput { + return o.ApplyT(func(v *CapabilityEdiTypeProperties) CapabilityEdiTypeProperties { + if v != nil { + return *v + } + var ret CapabilityEdiTypeProperties + return ret + }).(CapabilityEdiTypePropertiesOutput) +} + +func (o CapabilityEdiTypePropertiesPtrOutput) X12Details() CapabilityX12DetailsPtrOutput { + return o.ApplyT(func(v *CapabilityEdiTypeProperties) *CapabilityX12Details { + if v == nil { + return nil + } + return &v.X12Details + }).(CapabilityX12DetailsPtrOutput) +} + +type CapabilityS3Location struct { + BucketName *string `pulumi:"bucketName"` + Key *string `pulumi:"key"` +} + +// CapabilityS3LocationInput is an input type that accepts CapabilityS3LocationArgs and CapabilityS3LocationOutput values. +// You can construct a concrete instance of `CapabilityS3LocationInput` via: +// +// CapabilityS3LocationArgs{...} +type CapabilityS3LocationInput interface { + pulumi.Input + + ToCapabilityS3LocationOutput() CapabilityS3LocationOutput + ToCapabilityS3LocationOutputWithContext(context.Context) CapabilityS3LocationOutput +} + +type CapabilityS3LocationArgs struct { + BucketName pulumi.StringPtrInput `pulumi:"bucketName"` + Key pulumi.StringPtrInput `pulumi:"key"` +} + +func (CapabilityS3LocationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityS3Location)(nil)).Elem() +} + +func (i CapabilityS3LocationArgs) ToCapabilityS3LocationOutput() CapabilityS3LocationOutput { + return i.ToCapabilityS3LocationOutputWithContext(context.Background()) +} + +func (i CapabilityS3LocationArgs) ToCapabilityS3LocationOutputWithContext(ctx context.Context) CapabilityS3LocationOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityS3LocationOutput) +} + +func (i CapabilityS3LocationArgs) ToOutput(ctx context.Context) pulumix.Output[CapabilityS3Location] { + return pulumix.Output[CapabilityS3Location]{ + OutputState: i.ToCapabilityS3LocationOutputWithContext(ctx).OutputState, + } +} + +// CapabilityS3LocationArrayInput is an input type that accepts CapabilityS3LocationArray and CapabilityS3LocationArrayOutput values. +// You can construct a concrete instance of `CapabilityS3LocationArrayInput` via: +// +// CapabilityS3LocationArray{ CapabilityS3LocationArgs{...} } +type CapabilityS3LocationArrayInput interface { + pulumi.Input + + ToCapabilityS3LocationArrayOutput() CapabilityS3LocationArrayOutput + ToCapabilityS3LocationArrayOutputWithContext(context.Context) CapabilityS3LocationArrayOutput +} + +type CapabilityS3LocationArray []CapabilityS3LocationInput + +func (CapabilityS3LocationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]CapabilityS3Location)(nil)).Elem() +} + +func (i CapabilityS3LocationArray) ToCapabilityS3LocationArrayOutput() CapabilityS3LocationArrayOutput { + return i.ToCapabilityS3LocationArrayOutputWithContext(context.Background()) +} + +func (i CapabilityS3LocationArray) ToCapabilityS3LocationArrayOutputWithContext(ctx context.Context) CapabilityS3LocationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityS3LocationArrayOutput) +} + +func (i CapabilityS3LocationArray) ToOutput(ctx context.Context) pulumix.Output[[]CapabilityS3Location] { + return pulumix.Output[[]CapabilityS3Location]{ + OutputState: i.ToCapabilityS3LocationArrayOutputWithContext(ctx).OutputState, + } +} + +type CapabilityS3LocationOutput struct{ *pulumi.OutputState } + +func (CapabilityS3LocationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityS3Location)(nil)).Elem() +} + +func (o CapabilityS3LocationOutput) ToCapabilityS3LocationOutput() CapabilityS3LocationOutput { + return o +} + +func (o CapabilityS3LocationOutput) ToCapabilityS3LocationOutputWithContext(ctx context.Context) CapabilityS3LocationOutput { + return o +} + +func (o CapabilityS3LocationOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityS3Location] { + return pulumix.Output[CapabilityS3Location]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityS3LocationOutput) BucketName() pulumi.StringPtrOutput { + return o.ApplyT(func(v CapabilityS3Location) *string { return v.BucketName }).(pulumi.StringPtrOutput) +} + +func (o CapabilityS3LocationOutput) Key() pulumi.StringPtrOutput { + return o.ApplyT(func(v CapabilityS3Location) *string { return v.Key }).(pulumi.StringPtrOutput) +} + +type CapabilityS3LocationPtrOutput struct{ *pulumi.OutputState } + +func (CapabilityS3LocationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapabilityS3Location)(nil)).Elem() +} + +func (o CapabilityS3LocationPtrOutput) ToCapabilityS3LocationPtrOutput() CapabilityS3LocationPtrOutput { + return o +} + +func (o CapabilityS3LocationPtrOutput) ToCapabilityS3LocationPtrOutputWithContext(ctx context.Context) CapabilityS3LocationPtrOutput { + return o +} + +func (o CapabilityS3LocationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapabilityS3Location] { + return pulumix.Output[*CapabilityS3Location]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityS3LocationPtrOutput) Elem() CapabilityS3LocationOutput { + return o.ApplyT(func(v *CapabilityS3Location) CapabilityS3Location { + if v != nil { + return *v + } + var ret CapabilityS3Location + return ret + }).(CapabilityS3LocationOutput) +} + +func (o CapabilityS3LocationPtrOutput) BucketName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *CapabilityS3Location) *string { + if v == nil { + return nil + } + return v.BucketName + }).(pulumi.StringPtrOutput) +} + +func (o CapabilityS3LocationPtrOutput) Key() pulumi.StringPtrOutput { + return o.ApplyT(func(v *CapabilityS3Location) *string { + if v == nil { + return nil + } + return v.Key + }).(pulumi.StringPtrOutput) +} + +type CapabilityS3LocationArrayOutput struct{ *pulumi.OutputState } + +func (CapabilityS3LocationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]CapabilityS3Location)(nil)).Elem() +} + +func (o CapabilityS3LocationArrayOutput) ToCapabilityS3LocationArrayOutput() CapabilityS3LocationArrayOutput { + return o +} + +func (o CapabilityS3LocationArrayOutput) ToCapabilityS3LocationArrayOutputWithContext(ctx context.Context) CapabilityS3LocationArrayOutput { + return o +} + +func (o CapabilityS3LocationArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]CapabilityS3Location] { + return pulumix.Output[[]CapabilityS3Location]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityS3LocationArrayOutput) Index(i pulumi.IntInput) CapabilityS3LocationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) CapabilityS3Location { + return vs[0].([]CapabilityS3Location)[vs[1].(int)] + }).(CapabilityS3LocationOutput) +} + +type CapabilityTag struct { + Key string `pulumi:"key"` + Value string `pulumi:"value"` +} + +// CapabilityTagInput is an input type that accepts CapabilityTagArgs and CapabilityTagOutput values. +// You can construct a concrete instance of `CapabilityTagInput` via: +// +// CapabilityTagArgs{...} +type CapabilityTagInput interface { + pulumi.Input + + ToCapabilityTagOutput() CapabilityTagOutput + ToCapabilityTagOutputWithContext(context.Context) CapabilityTagOutput +} + +type CapabilityTagArgs struct { + Key pulumi.StringInput `pulumi:"key"` + Value pulumi.StringInput `pulumi:"value"` +} + +func (CapabilityTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityTag)(nil)).Elem() +} + +func (i CapabilityTagArgs) ToCapabilityTagOutput() CapabilityTagOutput { + return i.ToCapabilityTagOutputWithContext(context.Background()) +} + +func (i CapabilityTagArgs) ToCapabilityTagOutputWithContext(ctx context.Context) CapabilityTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityTagOutput) +} + +func (i CapabilityTagArgs) ToOutput(ctx context.Context) pulumix.Output[CapabilityTag] { + return pulumix.Output[CapabilityTag]{ + OutputState: i.ToCapabilityTagOutputWithContext(ctx).OutputState, + } +} + +// CapabilityTagArrayInput is an input type that accepts CapabilityTagArray and CapabilityTagArrayOutput values. +// You can construct a concrete instance of `CapabilityTagArrayInput` via: +// +// CapabilityTagArray{ CapabilityTagArgs{...} } +type CapabilityTagArrayInput interface { + pulumi.Input + + ToCapabilityTagArrayOutput() CapabilityTagArrayOutput + ToCapabilityTagArrayOutputWithContext(context.Context) CapabilityTagArrayOutput +} + +type CapabilityTagArray []CapabilityTagInput + +func (CapabilityTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]CapabilityTag)(nil)).Elem() +} + +func (i CapabilityTagArray) ToCapabilityTagArrayOutput() CapabilityTagArrayOutput { + return i.ToCapabilityTagArrayOutputWithContext(context.Background()) +} + +func (i CapabilityTagArray) ToCapabilityTagArrayOutputWithContext(ctx context.Context) CapabilityTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityTagArrayOutput) +} + +func (i CapabilityTagArray) ToOutput(ctx context.Context) pulumix.Output[[]CapabilityTag] { + return pulumix.Output[[]CapabilityTag]{ + OutputState: i.ToCapabilityTagArrayOutputWithContext(ctx).OutputState, + } +} + +type CapabilityTagOutput struct{ *pulumi.OutputState } + +func (CapabilityTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityTag)(nil)).Elem() +} + +func (o CapabilityTagOutput) ToCapabilityTagOutput() CapabilityTagOutput { + return o +} + +func (o CapabilityTagOutput) ToCapabilityTagOutputWithContext(ctx context.Context) CapabilityTagOutput { + return o +} + +func (o CapabilityTagOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityTag] { + return pulumix.Output[CapabilityTag]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v CapabilityTag) string { return v.Key }).(pulumi.StringOutput) +} + +func (o CapabilityTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v CapabilityTag) string { return v.Value }).(pulumi.StringOutput) +} + +type CapabilityTagArrayOutput struct{ *pulumi.OutputState } + +func (CapabilityTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]CapabilityTag)(nil)).Elem() +} + +func (o CapabilityTagArrayOutput) ToCapabilityTagArrayOutput() CapabilityTagArrayOutput { + return o +} + +func (o CapabilityTagArrayOutput) ToCapabilityTagArrayOutputWithContext(ctx context.Context) CapabilityTagArrayOutput { + return o +} + +func (o CapabilityTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]CapabilityTag] { + return pulumix.Output[[]CapabilityTag]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityTagArrayOutput) Index(i pulumi.IntInput) CapabilityTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) CapabilityTag { + return vs[0].([]CapabilityTag)[vs[1].(int)] + }).(CapabilityTagOutput) +} + +type CapabilityX12Details struct { + TransactionSet *CapabilityX12TransactionSet `pulumi:"transactionSet"` + Version *CapabilityX12Version `pulumi:"version"` +} + +// CapabilityX12DetailsInput is an input type that accepts CapabilityX12DetailsArgs and CapabilityX12DetailsOutput values. +// You can construct a concrete instance of `CapabilityX12DetailsInput` via: +// +// CapabilityX12DetailsArgs{...} +type CapabilityX12DetailsInput interface { + pulumi.Input + + ToCapabilityX12DetailsOutput() CapabilityX12DetailsOutput + ToCapabilityX12DetailsOutputWithContext(context.Context) CapabilityX12DetailsOutput +} + +type CapabilityX12DetailsArgs struct { + TransactionSet CapabilityX12TransactionSetPtrInput `pulumi:"transactionSet"` + Version CapabilityX12VersionPtrInput `pulumi:"version"` +} + +func (CapabilityX12DetailsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityX12Details)(nil)).Elem() +} + +func (i CapabilityX12DetailsArgs) ToCapabilityX12DetailsOutput() CapabilityX12DetailsOutput { + return i.ToCapabilityX12DetailsOutputWithContext(context.Background()) +} + +func (i CapabilityX12DetailsArgs) ToCapabilityX12DetailsOutputWithContext(ctx context.Context) CapabilityX12DetailsOutput { + return pulumi.ToOutputWithContext(ctx, i).(CapabilityX12DetailsOutput) +} + +func (i CapabilityX12DetailsArgs) ToOutput(ctx context.Context) pulumix.Output[CapabilityX12Details] { + return pulumix.Output[CapabilityX12Details]{ + OutputState: i.ToCapabilityX12DetailsOutputWithContext(ctx).OutputState, + } +} + +type CapabilityX12DetailsOutput struct{ *pulumi.OutputState } + +func (CapabilityX12DetailsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapabilityX12Details)(nil)).Elem() +} + +func (o CapabilityX12DetailsOutput) ToCapabilityX12DetailsOutput() CapabilityX12DetailsOutput { + return o +} + +func (o CapabilityX12DetailsOutput) ToCapabilityX12DetailsOutputWithContext(ctx context.Context) CapabilityX12DetailsOutput { + return o +} + +func (o CapabilityX12DetailsOutput) ToOutput(ctx context.Context) pulumix.Output[CapabilityX12Details] { + return pulumix.Output[CapabilityX12Details]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityX12DetailsOutput) TransactionSet() CapabilityX12TransactionSetPtrOutput { + return o.ApplyT(func(v CapabilityX12Details) *CapabilityX12TransactionSet { return v.TransactionSet }).(CapabilityX12TransactionSetPtrOutput) +} + +func (o CapabilityX12DetailsOutput) Version() CapabilityX12VersionPtrOutput { + return o.ApplyT(func(v CapabilityX12Details) *CapabilityX12Version { return v.Version }).(CapabilityX12VersionPtrOutput) +} + +type CapabilityX12DetailsPtrOutput struct{ *pulumi.OutputState } + +func (CapabilityX12DetailsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapabilityX12Details)(nil)).Elem() +} + +func (o CapabilityX12DetailsPtrOutput) ToCapabilityX12DetailsPtrOutput() CapabilityX12DetailsPtrOutput { + return o +} + +func (o CapabilityX12DetailsPtrOutput) ToCapabilityX12DetailsPtrOutputWithContext(ctx context.Context) CapabilityX12DetailsPtrOutput { + return o +} + +func (o CapabilityX12DetailsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapabilityX12Details] { + return pulumix.Output[*CapabilityX12Details]{ + OutputState: o.OutputState, + } +} + +func (o CapabilityX12DetailsPtrOutput) Elem() CapabilityX12DetailsOutput { + return o.ApplyT(func(v *CapabilityX12Details) CapabilityX12Details { + if v != nil { + return *v + } + var ret CapabilityX12Details + return ret + }).(CapabilityX12DetailsOutput) +} + +func (o CapabilityX12DetailsPtrOutput) TransactionSet() CapabilityX12TransactionSetPtrOutput { + return o.ApplyT(func(v *CapabilityX12Details) *CapabilityX12TransactionSet { + if v == nil { + return nil + } + return v.TransactionSet + }).(CapabilityX12TransactionSetPtrOutput) +} + +func (o CapabilityX12DetailsPtrOutput) Version() CapabilityX12VersionPtrOutput { + return o.ApplyT(func(v *CapabilityX12Details) *CapabilityX12Version { + if v == nil { + return nil + } + return v.Version + }).(CapabilityX12VersionPtrOutput) +} + +type PartnershipTag struct { + Key string `pulumi:"key"` + Value string `pulumi:"value"` +} + +// PartnershipTagInput is an input type that accepts PartnershipTagArgs and PartnershipTagOutput values. +// You can construct a concrete instance of `PartnershipTagInput` via: +// +// PartnershipTagArgs{...} +type PartnershipTagInput interface { + pulumi.Input + + ToPartnershipTagOutput() PartnershipTagOutput + ToPartnershipTagOutputWithContext(context.Context) PartnershipTagOutput +} + +type PartnershipTagArgs struct { + Key pulumi.StringInput `pulumi:"key"` + Value pulumi.StringInput `pulumi:"value"` +} + +func (PartnershipTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PartnershipTag)(nil)).Elem() +} + +func (i PartnershipTagArgs) ToPartnershipTagOutput() PartnershipTagOutput { + return i.ToPartnershipTagOutputWithContext(context.Background()) +} + +func (i PartnershipTagArgs) ToPartnershipTagOutputWithContext(ctx context.Context) PartnershipTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(PartnershipTagOutput) +} + +func (i PartnershipTagArgs) ToOutput(ctx context.Context) pulumix.Output[PartnershipTag] { + return pulumix.Output[PartnershipTag]{ + OutputState: i.ToPartnershipTagOutputWithContext(ctx).OutputState, + } +} + +// PartnershipTagArrayInput is an input type that accepts PartnershipTagArray and PartnershipTagArrayOutput values. +// You can construct a concrete instance of `PartnershipTagArrayInput` via: +// +// PartnershipTagArray{ PartnershipTagArgs{...} } +type PartnershipTagArrayInput interface { + pulumi.Input + + ToPartnershipTagArrayOutput() PartnershipTagArrayOutput + ToPartnershipTagArrayOutputWithContext(context.Context) PartnershipTagArrayOutput +} + +type PartnershipTagArray []PartnershipTagInput + +func (PartnershipTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PartnershipTag)(nil)).Elem() +} + +func (i PartnershipTagArray) ToPartnershipTagArrayOutput() PartnershipTagArrayOutput { + return i.ToPartnershipTagArrayOutputWithContext(context.Background()) +} + +func (i PartnershipTagArray) ToPartnershipTagArrayOutputWithContext(ctx context.Context) PartnershipTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PartnershipTagArrayOutput) +} + +func (i PartnershipTagArray) ToOutput(ctx context.Context) pulumix.Output[[]PartnershipTag] { + return pulumix.Output[[]PartnershipTag]{ + OutputState: i.ToPartnershipTagArrayOutputWithContext(ctx).OutputState, + } +} + +type PartnershipTagOutput struct{ *pulumi.OutputState } + +func (PartnershipTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PartnershipTag)(nil)).Elem() +} + +func (o PartnershipTagOutput) ToPartnershipTagOutput() PartnershipTagOutput { + return o +} + +func (o PartnershipTagOutput) ToPartnershipTagOutputWithContext(ctx context.Context) PartnershipTagOutput { + return o +} + +func (o PartnershipTagOutput) ToOutput(ctx context.Context) pulumix.Output[PartnershipTag] { + return pulumix.Output[PartnershipTag]{ + OutputState: o.OutputState, + } +} + +func (o PartnershipTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v PartnershipTag) string { return v.Key }).(pulumi.StringOutput) +} + +func (o PartnershipTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v PartnershipTag) string { return v.Value }).(pulumi.StringOutput) +} + +type PartnershipTagArrayOutput struct{ *pulumi.OutputState } + +func (PartnershipTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PartnershipTag)(nil)).Elem() +} + +func (o PartnershipTagArrayOutput) ToPartnershipTagArrayOutput() PartnershipTagArrayOutput { + return o +} + +func (o PartnershipTagArrayOutput) ToPartnershipTagArrayOutputWithContext(ctx context.Context) PartnershipTagArrayOutput { + return o +} + +func (o PartnershipTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]PartnershipTag] { + return pulumix.Output[[]PartnershipTag]{ + OutputState: o.OutputState, + } +} + +func (o PartnershipTagArrayOutput) Index(i pulumi.IntInput) PartnershipTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PartnershipTag { + return vs[0].([]PartnershipTag)[vs[1].(int)] + }).(PartnershipTagOutput) +} + +type ProfileTag struct { + Key string `pulumi:"key"` + Value string `pulumi:"value"` +} + +// ProfileTagInput is an input type that accepts ProfileTagArgs and ProfileTagOutput values. +// You can construct a concrete instance of `ProfileTagInput` via: +// +// ProfileTagArgs{...} +type ProfileTagInput interface { + pulumi.Input + + ToProfileTagOutput() ProfileTagOutput + ToProfileTagOutputWithContext(context.Context) ProfileTagOutput +} + +type ProfileTagArgs struct { + Key pulumi.StringInput `pulumi:"key"` + Value pulumi.StringInput `pulumi:"value"` +} + +func (ProfileTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ProfileTag)(nil)).Elem() +} + +func (i ProfileTagArgs) ToProfileTagOutput() ProfileTagOutput { + return i.ToProfileTagOutputWithContext(context.Background()) +} + +func (i ProfileTagArgs) ToProfileTagOutputWithContext(ctx context.Context) ProfileTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(ProfileTagOutput) +} + +func (i ProfileTagArgs) ToOutput(ctx context.Context) pulumix.Output[ProfileTag] { + return pulumix.Output[ProfileTag]{ + OutputState: i.ToProfileTagOutputWithContext(ctx).OutputState, + } +} + +// ProfileTagArrayInput is an input type that accepts ProfileTagArray and ProfileTagArrayOutput values. +// You can construct a concrete instance of `ProfileTagArrayInput` via: +// +// ProfileTagArray{ ProfileTagArgs{...} } +type ProfileTagArrayInput interface { + pulumi.Input + + ToProfileTagArrayOutput() ProfileTagArrayOutput + ToProfileTagArrayOutputWithContext(context.Context) ProfileTagArrayOutput +} + +type ProfileTagArray []ProfileTagInput + +func (ProfileTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ProfileTag)(nil)).Elem() +} + +func (i ProfileTagArray) ToProfileTagArrayOutput() ProfileTagArrayOutput { + return i.ToProfileTagArrayOutputWithContext(context.Background()) +} + +func (i ProfileTagArray) ToProfileTagArrayOutputWithContext(ctx context.Context) ProfileTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ProfileTagArrayOutput) +} + +func (i ProfileTagArray) ToOutput(ctx context.Context) pulumix.Output[[]ProfileTag] { + return pulumix.Output[[]ProfileTag]{ + OutputState: i.ToProfileTagArrayOutputWithContext(ctx).OutputState, + } +} + +type ProfileTagOutput struct{ *pulumi.OutputState } + +func (ProfileTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ProfileTag)(nil)).Elem() +} + +func (o ProfileTagOutput) ToProfileTagOutput() ProfileTagOutput { + return o +} + +func (o ProfileTagOutput) ToProfileTagOutputWithContext(ctx context.Context) ProfileTagOutput { + return o +} + +func (o ProfileTagOutput) ToOutput(ctx context.Context) pulumix.Output[ProfileTag] { + return pulumix.Output[ProfileTag]{ + OutputState: o.OutputState, + } +} + +func (o ProfileTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v ProfileTag) string { return v.Key }).(pulumi.StringOutput) +} + +func (o ProfileTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v ProfileTag) string { return v.Value }).(pulumi.StringOutput) +} + +type ProfileTagArrayOutput struct{ *pulumi.OutputState } + +func (ProfileTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ProfileTag)(nil)).Elem() +} + +func (o ProfileTagArrayOutput) ToProfileTagArrayOutput() ProfileTagArrayOutput { + return o +} + +func (o ProfileTagArrayOutput) ToProfileTagArrayOutputWithContext(ctx context.Context) ProfileTagArrayOutput { + return o +} + +func (o ProfileTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ProfileTag] { + return pulumix.Output[[]ProfileTag]{ + OutputState: o.OutputState, + } +} + +func (o ProfileTagArrayOutput) Index(i pulumi.IntInput) ProfileTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ProfileTag { + return vs[0].([]ProfileTag)[vs[1].(int)] + }).(ProfileTagOutput) +} + +type TransformerEdiType0Properties struct { + X12Details TransformerX12Details `pulumi:"x12Details"` +} + +type TransformerEdiTypeProperties struct { + X12Details TransformerX12Details `pulumi:"x12Details"` +} + +// TransformerEdiTypePropertiesInput is an input type that accepts TransformerEdiTypePropertiesArgs and TransformerEdiTypePropertiesOutput values. +// You can construct a concrete instance of `TransformerEdiTypePropertiesInput` via: +// +// TransformerEdiTypePropertiesArgs{...} +type TransformerEdiTypePropertiesInput interface { + pulumi.Input + + ToTransformerEdiTypePropertiesOutput() TransformerEdiTypePropertiesOutput + ToTransformerEdiTypePropertiesOutputWithContext(context.Context) TransformerEdiTypePropertiesOutput +} + +type TransformerEdiTypePropertiesArgs struct { + X12Details TransformerX12DetailsInput `pulumi:"x12Details"` +} + +func (TransformerEdiTypePropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerEdiTypeProperties)(nil)).Elem() +} + +func (i TransformerEdiTypePropertiesArgs) ToTransformerEdiTypePropertiesOutput() TransformerEdiTypePropertiesOutput { + return i.ToTransformerEdiTypePropertiesOutputWithContext(context.Background()) +} + +func (i TransformerEdiTypePropertiesArgs) ToTransformerEdiTypePropertiesOutputWithContext(ctx context.Context) TransformerEdiTypePropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerEdiTypePropertiesOutput) +} + +func (i TransformerEdiTypePropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[TransformerEdiTypeProperties] { + return pulumix.Output[TransformerEdiTypeProperties]{ + OutputState: i.ToTransformerEdiTypePropertiesOutputWithContext(ctx).OutputState, + } +} + +type TransformerEdiTypePropertiesOutput struct{ *pulumi.OutputState } + +func (TransformerEdiTypePropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerEdiTypeProperties)(nil)).Elem() +} + +func (o TransformerEdiTypePropertiesOutput) ToTransformerEdiTypePropertiesOutput() TransformerEdiTypePropertiesOutput { + return o +} + +func (o TransformerEdiTypePropertiesOutput) ToTransformerEdiTypePropertiesOutputWithContext(ctx context.Context) TransformerEdiTypePropertiesOutput { + return o +} + +func (o TransformerEdiTypePropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[TransformerEdiTypeProperties] { + return pulumix.Output[TransformerEdiTypeProperties]{ + OutputState: o.OutputState, + } +} + +func (o TransformerEdiTypePropertiesOutput) X12Details() TransformerX12DetailsOutput { + return o.ApplyT(func(v TransformerEdiTypeProperties) TransformerX12Details { return v.X12Details }).(TransformerX12DetailsOutput) +} + +type TransformerEdiTypePropertiesPtrOutput struct{ *pulumi.OutputState } + +func (TransformerEdiTypePropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerEdiTypeProperties)(nil)).Elem() +} + +func (o TransformerEdiTypePropertiesPtrOutput) ToTransformerEdiTypePropertiesPtrOutput() TransformerEdiTypePropertiesPtrOutput { + return o +} + +func (o TransformerEdiTypePropertiesPtrOutput) ToTransformerEdiTypePropertiesPtrOutputWithContext(ctx context.Context) TransformerEdiTypePropertiesPtrOutput { + return o +} + +func (o TransformerEdiTypePropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TransformerEdiTypeProperties] { + return pulumix.Output[*TransformerEdiTypeProperties]{ + OutputState: o.OutputState, + } +} + +func (o TransformerEdiTypePropertiesPtrOutput) Elem() TransformerEdiTypePropertiesOutput { + return o.ApplyT(func(v *TransformerEdiTypeProperties) TransformerEdiTypeProperties { + if v != nil { + return *v + } + var ret TransformerEdiTypeProperties + return ret + }).(TransformerEdiTypePropertiesOutput) +} + +func (o TransformerEdiTypePropertiesPtrOutput) X12Details() TransformerX12DetailsPtrOutput { + return o.ApplyT(func(v *TransformerEdiTypeProperties) *TransformerX12Details { + if v == nil { + return nil + } + return &v.X12Details + }).(TransformerX12DetailsPtrOutput) +} + +type TransformerTag struct { + Key string `pulumi:"key"` + Value string `pulumi:"value"` +} + +// TransformerTagInput is an input type that accepts TransformerTagArgs and TransformerTagOutput values. +// You can construct a concrete instance of `TransformerTagInput` via: +// +// TransformerTagArgs{...} +type TransformerTagInput interface { + pulumi.Input + + ToTransformerTagOutput() TransformerTagOutput + ToTransformerTagOutputWithContext(context.Context) TransformerTagOutput +} + +type TransformerTagArgs struct { + Key pulumi.StringInput `pulumi:"key"` + Value pulumi.StringInput `pulumi:"value"` +} + +func (TransformerTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerTag)(nil)).Elem() +} + +func (i TransformerTagArgs) ToTransformerTagOutput() TransformerTagOutput { + return i.ToTransformerTagOutputWithContext(context.Background()) +} + +func (i TransformerTagArgs) ToTransformerTagOutputWithContext(ctx context.Context) TransformerTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerTagOutput) +} + +func (i TransformerTagArgs) ToOutput(ctx context.Context) pulumix.Output[TransformerTag] { + return pulumix.Output[TransformerTag]{ + OutputState: i.ToTransformerTagOutputWithContext(ctx).OutputState, + } +} + +// TransformerTagArrayInput is an input type that accepts TransformerTagArray and TransformerTagArrayOutput values. +// You can construct a concrete instance of `TransformerTagArrayInput` via: +// +// TransformerTagArray{ TransformerTagArgs{...} } +type TransformerTagArrayInput interface { + pulumi.Input + + ToTransformerTagArrayOutput() TransformerTagArrayOutput + ToTransformerTagArrayOutputWithContext(context.Context) TransformerTagArrayOutput +} + +type TransformerTagArray []TransformerTagInput + +func (TransformerTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerTag)(nil)).Elem() +} + +func (i TransformerTagArray) ToTransformerTagArrayOutput() TransformerTagArrayOutput { + return i.ToTransformerTagArrayOutputWithContext(context.Background()) +} + +func (i TransformerTagArray) ToTransformerTagArrayOutputWithContext(ctx context.Context) TransformerTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerTagArrayOutput) +} + +func (i TransformerTagArray) ToOutput(ctx context.Context) pulumix.Output[[]TransformerTag] { + return pulumix.Output[[]TransformerTag]{ + OutputState: i.ToTransformerTagArrayOutputWithContext(ctx).OutputState, + } +} + +type TransformerTagOutput struct{ *pulumi.OutputState } + +func (TransformerTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerTag)(nil)).Elem() +} + +func (o TransformerTagOutput) ToTransformerTagOutput() TransformerTagOutput { + return o +} + +func (o TransformerTagOutput) ToTransformerTagOutputWithContext(ctx context.Context) TransformerTagOutput { + return o +} + +func (o TransformerTagOutput) ToOutput(ctx context.Context) pulumix.Output[TransformerTag] { + return pulumix.Output[TransformerTag]{ + OutputState: o.OutputState, + } +} + +func (o TransformerTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v TransformerTag) string { return v.Key }).(pulumi.StringOutput) +} + +func (o TransformerTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v TransformerTag) string { return v.Value }).(pulumi.StringOutput) +} + +type TransformerTagArrayOutput struct{ *pulumi.OutputState } + +func (TransformerTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]TransformerTag)(nil)).Elem() +} + +func (o TransformerTagArrayOutput) ToTransformerTagArrayOutput() TransformerTagArrayOutput { + return o +} + +func (o TransformerTagArrayOutput) ToTransformerTagArrayOutputWithContext(ctx context.Context) TransformerTagArrayOutput { + return o +} + +func (o TransformerTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]TransformerTag] { + return pulumix.Output[[]TransformerTag]{ + OutputState: o.OutputState, + } +} + +func (o TransformerTagArrayOutput) Index(i pulumi.IntInput) TransformerTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) TransformerTag { + return vs[0].([]TransformerTag)[vs[1].(int)] + }).(TransformerTagOutput) +} + +type TransformerX12Details struct { + TransactionSet *TransformerX12TransactionSet `pulumi:"transactionSet"` + Version *TransformerX12Version `pulumi:"version"` +} + +// TransformerX12DetailsInput is an input type that accepts TransformerX12DetailsArgs and TransformerX12DetailsOutput values. +// You can construct a concrete instance of `TransformerX12DetailsInput` via: +// +// TransformerX12DetailsArgs{...} +type TransformerX12DetailsInput interface { + pulumi.Input + + ToTransformerX12DetailsOutput() TransformerX12DetailsOutput + ToTransformerX12DetailsOutputWithContext(context.Context) TransformerX12DetailsOutput +} + +type TransformerX12DetailsArgs struct { + TransactionSet TransformerX12TransactionSetPtrInput `pulumi:"transactionSet"` + Version TransformerX12VersionPtrInput `pulumi:"version"` +} + +func (TransformerX12DetailsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerX12Details)(nil)).Elem() +} + +func (i TransformerX12DetailsArgs) ToTransformerX12DetailsOutput() TransformerX12DetailsOutput { + return i.ToTransformerX12DetailsOutputWithContext(context.Background()) +} + +func (i TransformerX12DetailsArgs) ToTransformerX12DetailsOutputWithContext(ctx context.Context) TransformerX12DetailsOutput { + return pulumi.ToOutputWithContext(ctx, i).(TransformerX12DetailsOutput) +} + +func (i TransformerX12DetailsArgs) ToOutput(ctx context.Context) pulumix.Output[TransformerX12Details] { + return pulumix.Output[TransformerX12Details]{ + OutputState: i.ToTransformerX12DetailsOutputWithContext(ctx).OutputState, + } +} + +type TransformerX12DetailsOutput struct{ *pulumi.OutputState } + +func (TransformerX12DetailsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*TransformerX12Details)(nil)).Elem() +} + +func (o TransformerX12DetailsOutput) ToTransformerX12DetailsOutput() TransformerX12DetailsOutput { + return o +} + +func (o TransformerX12DetailsOutput) ToTransformerX12DetailsOutputWithContext(ctx context.Context) TransformerX12DetailsOutput { + return o +} + +func (o TransformerX12DetailsOutput) ToOutput(ctx context.Context) pulumix.Output[TransformerX12Details] { + return pulumix.Output[TransformerX12Details]{ + OutputState: o.OutputState, + } +} + +func (o TransformerX12DetailsOutput) TransactionSet() TransformerX12TransactionSetPtrOutput { + return o.ApplyT(func(v TransformerX12Details) *TransformerX12TransactionSet { return v.TransactionSet }).(TransformerX12TransactionSetPtrOutput) +} + +func (o TransformerX12DetailsOutput) Version() TransformerX12VersionPtrOutput { + return o.ApplyT(func(v TransformerX12Details) *TransformerX12Version { return v.Version }).(TransformerX12VersionPtrOutput) +} + +type TransformerX12DetailsPtrOutput struct{ *pulumi.OutputState } + +func (TransformerX12DetailsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TransformerX12Details)(nil)).Elem() +} + +func (o TransformerX12DetailsPtrOutput) ToTransformerX12DetailsPtrOutput() TransformerX12DetailsPtrOutput { + return o +} + +func (o TransformerX12DetailsPtrOutput) ToTransformerX12DetailsPtrOutputWithContext(ctx context.Context) TransformerX12DetailsPtrOutput { + return o +} + +func (o TransformerX12DetailsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*TransformerX12Details] { + return pulumix.Output[*TransformerX12Details]{ + OutputState: o.OutputState, + } +} + +func (o TransformerX12DetailsPtrOutput) Elem() TransformerX12DetailsOutput { + return o.ApplyT(func(v *TransformerX12Details) TransformerX12Details { + if v != nil { + return *v + } + var ret TransformerX12Details + return ret + }).(TransformerX12DetailsOutput) +} + +func (o TransformerX12DetailsPtrOutput) TransactionSet() TransformerX12TransactionSetPtrOutput { + return o.ApplyT(func(v *TransformerX12Details) *TransformerX12TransactionSet { + if v == nil { + return nil + } + return v.TransactionSet + }).(TransformerX12TransactionSetPtrOutput) +} + +func (o TransformerX12DetailsPtrOutput) Version() TransformerX12VersionPtrOutput { + return o.ApplyT(func(v *TransformerX12Details) *TransformerX12Version { + if v == nil { + return nil + } + return v.Version + }).(TransformerX12VersionPtrOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityConfigurationPropertiesInput)(nil)).Elem(), CapabilityConfigurationPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityEdiConfigurationInput)(nil)).Elem(), CapabilityEdiConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityEdiTypePropertiesInput)(nil)).Elem(), CapabilityEdiTypePropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityS3LocationInput)(nil)).Elem(), CapabilityS3LocationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityS3LocationArrayInput)(nil)).Elem(), CapabilityS3LocationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityTagInput)(nil)).Elem(), CapabilityTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityTagArrayInput)(nil)).Elem(), CapabilityTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*CapabilityX12DetailsInput)(nil)).Elem(), CapabilityX12DetailsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PartnershipTagInput)(nil)).Elem(), PartnershipTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PartnershipTagArrayInput)(nil)).Elem(), PartnershipTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ProfileTagInput)(nil)).Elem(), ProfileTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ProfileTagArrayInput)(nil)).Elem(), ProfileTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerEdiTypePropertiesInput)(nil)).Elem(), TransformerEdiTypePropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerTagInput)(nil)).Elem(), TransformerTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerTagArrayInput)(nil)).Elem(), TransformerTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*TransformerX12DetailsInput)(nil)).Elem(), TransformerX12DetailsArgs{}) + pulumi.RegisterOutputType(CapabilityConfigurationPropertiesOutput{}) + pulumi.RegisterOutputType(CapabilityConfigurationPropertiesPtrOutput{}) + pulumi.RegisterOutputType(CapabilityEdiConfigurationOutput{}) + pulumi.RegisterOutputType(CapabilityEdiConfigurationPtrOutput{}) + pulumi.RegisterOutputType(CapabilityEdiTypePropertiesOutput{}) + pulumi.RegisterOutputType(CapabilityEdiTypePropertiesPtrOutput{}) + pulumi.RegisterOutputType(CapabilityS3LocationOutput{}) + pulumi.RegisterOutputType(CapabilityS3LocationPtrOutput{}) + pulumi.RegisterOutputType(CapabilityS3LocationArrayOutput{}) + pulumi.RegisterOutputType(CapabilityTagOutput{}) + pulumi.RegisterOutputType(CapabilityTagArrayOutput{}) + pulumi.RegisterOutputType(CapabilityX12DetailsOutput{}) + pulumi.RegisterOutputType(CapabilityX12DetailsPtrOutput{}) + pulumi.RegisterOutputType(PartnershipTagOutput{}) + pulumi.RegisterOutputType(PartnershipTagArrayOutput{}) + pulumi.RegisterOutputType(ProfileTagOutput{}) + pulumi.RegisterOutputType(ProfileTagArrayOutput{}) + pulumi.RegisterOutputType(TransformerEdiTypePropertiesOutput{}) + pulumi.RegisterOutputType(TransformerEdiTypePropertiesPtrOutput{}) + pulumi.RegisterOutputType(TransformerTagOutput{}) + pulumi.RegisterOutputType(TransformerTagArrayOutput{}) + pulumi.RegisterOutputType(TransformerX12DetailsOutput{}) + pulumi.RegisterOutputType(TransformerX12DetailsPtrOutput{}) +} diff --git a/sdk/go/aws/b2bi/transformer.go b/sdk/go/aws/b2bi/transformer.go new file mode 100644 index 0000000000..6f0110d665 --- /dev/null +++ b/sdk/go/aws/b2bi/transformer.go @@ -0,0 +1,203 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package b2bi + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Definition of AWS::B2BI::Transformer Resource Type +type Transformer struct { + pulumi.CustomResourceState + + CreatedAt pulumi.StringOutput `pulumi:"createdAt"` + EdiType TransformerEdiTypePropertiesOutput `pulumi:"ediType"` + FileFormat TransformerFileFormatOutput `pulumi:"fileFormat"` + MappingTemplate pulumi.StringOutput `pulumi:"mappingTemplate"` + ModifiedAt pulumi.StringPtrOutput `pulumi:"modifiedAt"` + Name pulumi.StringOutput `pulumi:"name"` + SampleDocument pulumi.StringPtrOutput `pulumi:"sampleDocument"` + Status TransformerStatusOutput `pulumi:"status"` + Tags TransformerTagArrayOutput `pulumi:"tags"` + TransformerArn pulumi.StringOutput `pulumi:"transformerArn"` + TransformerId pulumi.StringOutput `pulumi:"transformerId"` +} + +// 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.EdiType == nil { + return nil, errors.New("invalid value for required argument 'EdiType'") + } + if args.FileFormat == nil { + return nil, errors.New("invalid value for required argument 'FileFormat'") + } + if args.MappingTemplate == nil { + return nil, errors.New("invalid value for required argument 'MappingTemplate'") + } + if args.Status == nil { + return nil, errors.New("invalid value for required argument 'Status'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource Transformer + err := ctx.RegisterResource("aws-native:b2bi: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:b2bi: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 { + EdiType TransformerEdiTypeProperties `pulumi:"ediType"` + FileFormat TransformerFileFormat `pulumi:"fileFormat"` + MappingTemplate string `pulumi:"mappingTemplate"` + ModifiedAt *string `pulumi:"modifiedAt"` + Name *string `pulumi:"name"` + SampleDocument *string `pulumi:"sampleDocument"` + Status TransformerStatus `pulumi:"status"` + Tags []TransformerTag `pulumi:"tags"` +} + +// The set of arguments for constructing a Transformer resource. +type TransformerArgs struct { + EdiType TransformerEdiTypePropertiesInput + FileFormat TransformerFileFormatInput + MappingTemplate pulumi.StringInput + ModifiedAt pulumi.StringPtrInput + Name pulumi.StringPtrInput + SampleDocument pulumi.StringPtrInput + Status TransformerStatusInput + Tags TransformerTagArrayInput +} + +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) +} + +func (i *Transformer) ToOutput(ctx context.Context) pulumix.Output[*Transformer] { + return pulumix.Output[*Transformer]{ + OutputState: i.ToTransformerOutputWithContext(ctx).OutputState, + } +} + +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 +} + +func (o TransformerOutput) ToOutput(ctx context.Context) pulumix.Output[*Transformer] { + return pulumix.Output[*Transformer]{ + OutputState: o.OutputState, + } +} + +func (o TransformerOutput) CreatedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Transformer) pulumi.StringOutput { return v.CreatedAt }).(pulumi.StringOutput) +} + +func (o TransformerOutput) EdiType() TransformerEdiTypePropertiesOutput { + return o.ApplyT(func(v *Transformer) TransformerEdiTypePropertiesOutput { return v.EdiType }).(TransformerEdiTypePropertiesOutput) +} + +func (o TransformerOutput) FileFormat() TransformerFileFormatOutput { + return o.ApplyT(func(v *Transformer) TransformerFileFormatOutput { return v.FileFormat }).(TransformerFileFormatOutput) +} + +func (o TransformerOutput) MappingTemplate() pulumi.StringOutput { + return o.ApplyT(func(v *Transformer) pulumi.StringOutput { return v.MappingTemplate }).(pulumi.StringOutput) +} + +func (o TransformerOutput) ModifiedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Transformer) pulumi.StringPtrOutput { return v.ModifiedAt }).(pulumi.StringPtrOutput) +} + +func (o TransformerOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *Transformer) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +func (o TransformerOutput) SampleDocument() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Transformer) pulumi.StringPtrOutput { return v.SampleDocument }).(pulumi.StringPtrOutput) +} + +func (o TransformerOutput) Status() TransformerStatusOutput { + return o.ApplyT(func(v *Transformer) TransformerStatusOutput { return v.Status }).(TransformerStatusOutput) +} + +func (o TransformerOutput) Tags() TransformerTagArrayOutput { + return o.ApplyT(func(v *Transformer) TransformerTagArrayOutput { return v.Tags }).(TransformerTagArrayOutput) +} + +func (o TransformerOutput) TransformerArn() pulumi.StringOutput { + return o.ApplyT(func(v *Transformer) pulumi.StringOutput { return v.TransformerArn }).(pulumi.StringOutput) +} + +func (o TransformerOutput) TransformerId() pulumi.StringOutput { + return o.ApplyT(func(v *Transformer) pulumi.StringOutput { return v.TransformerId }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*TransformerInput)(nil)).Elem(), &Transformer{}) + pulumi.RegisterOutputType(TransformerOutput{}) +} diff --git a/sdk/go/aws/batch/getJobDefinition.go b/sdk/go/aws/batch/getJobDefinition.go index 7f8fc21e78..2db77bb04b 100644 --- a/sdk/go/aws/batch/getJobDefinition.go +++ b/sdk/go/aws/batch/getJobDefinition.go @@ -24,21 +24,16 @@ func LookupJobDefinition(ctx *pulumi.Context, args *LookupJobDefinitionArgs, opt } type LookupJobDefinitionArgs struct { - Id string `pulumi:"id"` + JobDefinitionArn string `pulumi:"jobDefinitionArn"` } type LookupJobDefinitionResult struct { - ContainerProperties *JobDefinitionContainerProperties `pulumi:"containerProperties"` - EksProperties *JobDefinitionEksProperties `pulumi:"eksProperties"` - Id *string `pulumi:"id"` - NodeProperties *JobDefinitionNodeProperties `pulumi:"nodeProperties"` - Parameters interface{} `pulumi:"parameters"` - PlatformCapabilities []string `pulumi:"platformCapabilities"` - PropagateTags *bool `pulumi:"propagateTags"` - RetryStrategy *JobDefinitionRetryStrategy `pulumi:"retryStrategy"` - SchedulingPriority *int `pulumi:"schedulingPriority"` - Timeout *JobDefinitionTimeout `pulumi:"timeout"` - Type *string `pulumi:"type"` + ContainerOrchestrationType *string `pulumi:"containerOrchestrationType"` + JobDefinitionArn *string `pulumi:"jobDefinitionArn"` + Revision *int `pulumi:"revision"` + Status *string `pulumi:"status"` + // A key-value pair to associate with a resource. + Tags interface{} `pulumi:"tags"` } func LookupJobDefinitionOutput(ctx *pulumi.Context, args LookupJobDefinitionOutputArgs, opts ...pulumi.InvokeOption) LookupJobDefinitionResultOutput { @@ -55,7 +50,7 @@ func LookupJobDefinitionOutput(ctx *pulumi.Context, args LookupJobDefinitionOutp } type LookupJobDefinitionOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + JobDefinitionArn pulumi.StringInput `pulumi:"jobDefinitionArn"` } func (LookupJobDefinitionOutputArgs) ElementType() reflect.Type { @@ -82,48 +77,25 @@ func (o LookupJobDefinitionResultOutput) ToOutput(ctx context.Context) pulumix.O } } -func (o LookupJobDefinitionResultOutput) ContainerProperties() JobDefinitionContainerPropertiesPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *JobDefinitionContainerProperties { return v.ContainerProperties }).(JobDefinitionContainerPropertiesPtrOutput) +func (o LookupJobDefinitionResultOutput) ContainerOrchestrationType() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupJobDefinitionResult) *string { return v.ContainerOrchestrationType }).(pulumi.StringPtrOutput) } -func (o LookupJobDefinitionResultOutput) EksProperties() JobDefinitionEksPropertiesPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *JobDefinitionEksProperties { return v.EksProperties }).(JobDefinitionEksPropertiesPtrOutput) +func (o LookupJobDefinitionResultOutput) JobDefinitionArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupJobDefinitionResult) *string { return v.JobDefinitionArn }).(pulumi.StringPtrOutput) } -func (o LookupJobDefinitionResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *string { return v.Id }).(pulumi.StringPtrOutput) +func (o LookupJobDefinitionResultOutput) Revision() pulumi.IntPtrOutput { + return o.ApplyT(func(v LookupJobDefinitionResult) *int { return v.Revision }).(pulumi.IntPtrOutput) } -func (o LookupJobDefinitionResultOutput) NodeProperties() JobDefinitionNodePropertiesPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *JobDefinitionNodeProperties { return v.NodeProperties }).(JobDefinitionNodePropertiesPtrOutput) +func (o LookupJobDefinitionResultOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupJobDefinitionResult) *string { return v.Status }).(pulumi.StringPtrOutput) } -func (o LookupJobDefinitionResultOutput) Parameters() pulumi.AnyOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) interface{} { return v.Parameters }).(pulumi.AnyOutput) -} - -func (o LookupJobDefinitionResultOutput) PlatformCapabilities() pulumi.StringArrayOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) []string { return v.PlatformCapabilities }).(pulumi.StringArrayOutput) -} - -func (o LookupJobDefinitionResultOutput) PropagateTags() pulumi.BoolPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *bool { return v.PropagateTags }).(pulumi.BoolPtrOutput) -} - -func (o LookupJobDefinitionResultOutput) RetryStrategy() JobDefinitionRetryStrategyPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *JobDefinitionRetryStrategy { return v.RetryStrategy }).(JobDefinitionRetryStrategyPtrOutput) -} - -func (o LookupJobDefinitionResultOutput) SchedulingPriority() pulumi.IntPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *int { return v.SchedulingPriority }).(pulumi.IntPtrOutput) -} - -func (o LookupJobDefinitionResultOutput) Timeout() JobDefinitionTimeoutPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *JobDefinitionTimeout { return v.Timeout }).(JobDefinitionTimeoutPtrOutput) -} - -func (o LookupJobDefinitionResultOutput) Type() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupJobDefinitionResult) *string { return v.Type }).(pulumi.StringPtrOutput) +// A key-value pair to associate with a resource. +func (o LookupJobDefinitionResultOutput) Tags() pulumi.AnyOutput { + return o.ApplyT(func(v LookupJobDefinitionResult) interface{} { return v.Tags }).(pulumi.AnyOutput) } func init() { diff --git a/sdk/go/aws/batch/jobDefinition.go b/sdk/go/aws/batch/jobDefinition.go index 400cc5f6a7..2ce8ee5233 100644 --- a/sdk/go/aws/batch/jobDefinition.go +++ b/sdk/go/aws/batch/jobDefinition.go @@ -14,23 +14,26 @@ import ( ) // Resource Type definition for AWS::Batch::JobDefinition -// -// Deprecated: JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type JobDefinition struct { pulumi.CustomResourceState - ContainerProperties JobDefinitionContainerPropertiesPtrOutput `pulumi:"containerProperties"` - EksProperties JobDefinitionEksPropertiesPtrOutput `pulumi:"eksProperties"` - JobDefinitionName pulumi.StringPtrOutput `pulumi:"jobDefinitionName"` - NodeProperties JobDefinitionNodePropertiesPtrOutput `pulumi:"nodeProperties"` - Parameters pulumi.AnyOutput `pulumi:"parameters"` - PlatformCapabilities pulumi.StringArrayOutput `pulumi:"platformCapabilities"` - PropagateTags pulumi.BoolPtrOutput `pulumi:"propagateTags"` - RetryStrategy JobDefinitionRetryStrategyPtrOutput `pulumi:"retryStrategy"` - SchedulingPriority pulumi.IntPtrOutput `pulumi:"schedulingPriority"` - Tags pulumi.AnyOutput `pulumi:"tags"` - Timeout JobDefinitionTimeoutPtrOutput `pulumi:"timeout"` - Type pulumi.StringOutput `pulumi:"type"` + ContainerOrchestrationType pulumi.StringOutput `pulumi:"containerOrchestrationType"` + ContainerProperties JobDefinitionContainerPropertiesPtrOutput `pulumi:"containerProperties"` + EksProperties JobDefinitionEksPropertiesPtrOutput `pulumi:"eksProperties"` + JobDefinitionArn pulumi.StringOutput `pulumi:"jobDefinitionArn"` + JobDefinitionName pulumi.StringPtrOutput `pulumi:"jobDefinitionName"` + NodeProperties JobDefinitionNodePropertiesPtrOutput `pulumi:"nodeProperties"` + Parameters pulumi.AnyOutput `pulumi:"parameters"` + PlatformCapabilities pulumi.StringArrayOutput `pulumi:"platformCapabilities"` + PropagateTags pulumi.BoolPtrOutput `pulumi:"propagateTags"` + RetryStrategy JobDefinitionRetryStrategyPtrOutput `pulumi:"retryStrategy"` + Revision pulumi.IntOutput `pulumi:"revision"` + SchedulingPriority pulumi.IntPtrOutput `pulumi:"schedulingPriority"` + Status pulumi.StringOutput `pulumi:"status"` + // A key-value pair to associate with a resource. + Tags pulumi.AnyOutput `pulumi:"tags"` + Timeout JobDefinitionJobTimeoutPtrOutput `pulumi:"timeout"` + Type pulumi.StringOutput `pulumi:"type"` } // NewJobDefinition registers a new resource with the given unique name, arguments, and options. @@ -44,8 +47,17 @@ func NewJobDefinition(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'Type'") } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "containerProperties", + "eksProperties", "jobDefinitionName", - "tags", + "nodeProperties", + "parameters", + "platformCapabilities[*]", + "propagateTags", + "retryStrategy", + "schedulingPriority", + "timeout", + "type", }) opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) @@ -90,9 +102,10 @@ type jobDefinitionArgs struct { PropagateTags *bool `pulumi:"propagateTags"` RetryStrategy *JobDefinitionRetryStrategy `pulumi:"retryStrategy"` SchedulingPriority *int `pulumi:"schedulingPriority"` - Tags interface{} `pulumi:"tags"` - Timeout *JobDefinitionTimeout `pulumi:"timeout"` - Type string `pulumi:"type"` + // A key-value pair to associate with a resource. + Tags interface{} `pulumi:"tags"` + Timeout *JobDefinitionJobTimeout `pulumi:"timeout"` + Type string `pulumi:"type"` } // The set of arguments for constructing a JobDefinition resource. @@ -106,9 +119,10 @@ type JobDefinitionArgs struct { PropagateTags pulumi.BoolPtrInput RetryStrategy JobDefinitionRetryStrategyPtrInput SchedulingPriority pulumi.IntPtrInput - Tags pulumi.Input - Timeout JobDefinitionTimeoutPtrInput - Type pulumi.StringInput + // A key-value pair to associate with a resource. + Tags pulumi.Input + Timeout JobDefinitionJobTimeoutPtrInput + Type pulumi.StringInput } func (JobDefinitionArgs) ElementType() reflect.Type { @@ -160,6 +174,10 @@ func (o JobDefinitionOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDe } } +func (o JobDefinitionOutput) ContainerOrchestrationType() pulumi.StringOutput { + return o.ApplyT(func(v *JobDefinition) pulumi.StringOutput { return v.ContainerOrchestrationType }).(pulumi.StringOutput) +} + func (o JobDefinitionOutput) ContainerProperties() JobDefinitionContainerPropertiesPtrOutput { return o.ApplyT(func(v *JobDefinition) JobDefinitionContainerPropertiesPtrOutput { return v.ContainerProperties }).(JobDefinitionContainerPropertiesPtrOutput) } @@ -168,6 +186,10 @@ func (o JobDefinitionOutput) EksProperties() JobDefinitionEksPropertiesPtrOutput return o.ApplyT(func(v *JobDefinition) JobDefinitionEksPropertiesPtrOutput { return v.EksProperties }).(JobDefinitionEksPropertiesPtrOutput) } +func (o JobDefinitionOutput) JobDefinitionArn() pulumi.StringOutput { + return o.ApplyT(func(v *JobDefinition) pulumi.StringOutput { return v.JobDefinitionArn }).(pulumi.StringOutput) +} + func (o JobDefinitionOutput) JobDefinitionName() pulumi.StringPtrOutput { return o.ApplyT(func(v *JobDefinition) pulumi.StringPtrOutput { return v.JobDefinitionName }).(pulumi.StringPtrOutput) } @@ -192,16 +214,25 @@ func (o JobDefinitionOutput) RetryStrategy() JobDefinitionRetryStrategyPtrOutput return o.ApplyT(func(v *JobDefinition) JobDefinitionRetryStrategyPtrOutput { return v.RetryStrategy }).(JobDefinitionRetryStrategyPtrOutput) } +func (o JobDefinitionOutput) Revision() pulumi.IntOutput { + return o.ApplyT(func(v *JobDefinition) pulumi.IntOutput { return v.Revision }).(pulumi.IntOutput) +} + func (o JobDefinitionOutput) SchedulingPriority() pulumi.IntPtrOutput { return o.ApplyT(func(v *JobDefinition) pulumi.IntPtrOutput { return v.SchedulingPriority }).(pulumi.IntPtrOutput) } +func (o JobDefinitionOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *JobDefinition) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +// A key-value pair to associate with a resource. func (o JobDefinitionOutput) Tags() pulumi.AnyOutput { return o.ApplyT(func(v *JobDefinition) pulumi.AnyOutput { return v.Tags }).(pulumi.AnyOutput) } -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) } func (o JobDefinitionOutput) Type() pulumi.StringOutput { diff --git a/sdk/go/aws/batch/pulumiTypes.go b/sdk/go/aws/batch/pulumiTypes.go index 6eec2aafb6..1eaa08b07c 100644 --- a/sdk/go/aws/batch/pulumiTypes.go +++ b/sdk/go/aws/batch/pulumiTypes.go @@ -1095,201 +1095,29 @@ func (o ComputeEnvironmentUpdatePolicyPtrOutput) TerminateJobsOnUpdate() pulumi. }).(pulumi.BoolPtrOutput) } -type JobDefinitionAuthorizationConfig struct { - AccessPointId *string `pulumi:"accessPointId"` - 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 { - AccessPointId pulumi.StringPtrInput `pulumi:"accessPointId"` - 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) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionAuthorizationConfig] { - return pulumix.Output[JobDefinitionAuthorizationConfig]{ - OutputState: i.ToJobDefinitionAuthorizationConfigOutputWithContext(ctx).OutputState, - } -} - -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) -} - -func (i *jobDefinitionAuthorizationConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionAuthorizationConfig] { - return pulumix.Output[*JobDefinitionAuthorizationConfig]{ - OutputState: i.ToJobDefinitionAuthorizationConfigPtrOutputWithContext(ctx).OutputState, - } -} - -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) -} - -func (o JobDefinitionAuthorizationConfigOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionAuthorizationConfig] { - return pulumix.Output[JobDefinitionAuthorizationConfig]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionAuthorizationConfigOutput) AccessPointId() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionAuthorizationConfig) *string { return v.AccessPointId }).(pulumi.StringPtrOutput) -} - -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) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionAuthorizationConfig] { - return pulumix.Output[*JobDefinitionAuthorizationConfig]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionAuthorizationConfigPtrOutput) Elem() JobDefinitionAuthorizationConfigOutput { - return o.ApplyT(func(v *JobDefinitionAuthorizationConfig) JobDefinitionAuthorizationConfig { - if v != nil { - return *v - } - var ret JobDefinitionAuthorizationConfig - return ret - }).(JobDefinitionAuthorizationConfigOutput) -} - -func (o JobDefinitionAuthorizationConfigPtrOutput) AccessPointId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionAuthorizationConfig) *string { - if v == nil { - return nil - } - return v.AccessPointId - }).(pulumi.StringPtrOutput) -} - -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 { - Command []string `pulumi:"command"` - Environment []JobDefinitionEnvironment `pulumi:"environment"` - EphemeralStorage *JobDefinitionEphemeralStorage `pulumi:"ephemeralStorage"` - ExecutionRoleArn *string `pulumi:"executionRoleArn"` - FargatePlatformConfiguration *JobDefinitionFargatePlatformConfiguration `pulumi:"fargatePlatformConfiguration"` - 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 []JobDefinitionMountPoints `pulumi:"mountPoints"` - NetworkConfiguration *JobDefinitionNetworkConfiguration `pulumi:"networkConfiguration"` - Privileged *bool `pulumi:"privileged"` - ReadonlyRootFilesystem *bool `pulumi:"readonlyRootFilesystem"` - 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 []JobDefinitionVolumes `pulumi:"volumes"` + Command []string `pulumi:"command"` + Environment []JobDefinitionEnvironment `pulumi:"environment"` + EphemeralStorage *JobDefinitionContainerPropertiesEphemeralStorageProperties `pulumi:"ephemeralStorage"` + ExecutionRoleArn *string `pulumi:"executionRoleArn"` + FargatePlatformConfiguration *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties `pulumi:"fargatePlatformConfiguration"` + Image string `pulumi:"image"` + InstanceType *string `pulumi:"instanceType"` + JobRoleArn *string `pulumi:"jobRoleArn"` + LinuxParameters *JobDefinitionContainerPropertiesLinuxParametersProperties `pulumi:"linuxParameters"` + LogConfiguration *JobDefinitionContainerPropertiesLogConfigurationProperties `pulumi:"logConfiguration"` + Memory *int `pulumi:"memory"` + MountPoints []JobDefinitionMountPoint `pulumi:"mountPoints"` + NetworkConfiguration *JobDefinitionContainerPropertiesNetworkConfigurationProperties `pulumi:"networkConfiguration"` + Privileged *bool `pulumi:"privileged"` + ReadonlyRootFilesystem *bool `pulumi:"readonlyRootFilesystem"` + ResourceRequirements []JobDefinitionResourceRequirement `pulumi:"resourceRequirements"` + RuntimePlatform *JobDefinitionContainerPropertiesRuntimePlatformProperties `pulumi:"runtimePlatform"` + Secrets []JobDefinitionSecret `pulumi:"secrets"` + Ulimits []JobDefinitionUlimit `pulumi:"ulimits"` + User *string `pulumi:"user"` + Vcpus *int `pulumi:"vcpus"` + Volumes []JobDefinitionVolume `pulumi:"volumes"` } // JobDefinitionContainerPropertiesInput is an input type that accepts JobDefinitionContainerPropertiesArgs and JobDefinitionContainerPropertiesOutput values. @@ -1304,28 +1132,28 @@ type JobDefinitionContainerPropertiesInput interface { } type JobDefinitionContainerPropertiesArgs struct { - Command pulumi.StringArrayInput `pulumi:"command"` - Environment JobDefinitionEnvironmentArrayInput `pulumi:"environment"` - EphemeralStorage JobDefinitionEphemeralStoragePtrInput `pulumi:"ephemeralStorage"` - ExecutionRoleArn pulumi.StringPtrInput `pulumi:"executionRoleArn"` - FargatePlatformConfiguration JobDefinitionFargatePlatformConfigurationPtrInput `pulumi:"fargatePlatformConfiguration"` - 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 JobDefinitionMountPointsArrayInput `pulumi:"mountPoints"` - NetworkConfiguration JobDefinitionNetworkConfigurationPtrInput `pulumi:"networkConfiguration"` - Privileged pulumi.BoolPtrInput `pulumi:"privileged"` - ReadonlyRootFilesystem pulumi.BoolPtrInput `pulumi:"readonlyRootFilesystem"` - 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 JobDefinitionVolumesArrayInput `pulumi:"volumes"` + Command pulumi.StringArrayInput `pulumi:"command"` + Environment JobDefinitionEnvironmentArrayInput `pulumi:"environment"` + EphemeralStorage JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrInput `pulumi:"ephemeralStorage"` + ExecutionRoleArn pulumi.StringPtrInput `pulumi:"executionRoleArn"` + FargatePlatformConfiguration JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput `pulumi:"fargatePlatformConfiguration"` + Image pulumi.StringInput `pulumi:"image"` + InstanceType pulumi.StringPtrInput `pulumi:"instanceType"` + JobRoleArn pulumi.StringPtrInput `pulumi:"jobRoleArn"` + LinuxParameters JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrInput `pulumi:"linuxParameters"` + LogConfiguration JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrInput `pulumi:"logConfiguration"` + Memory pulumi.IntPtrInput `pulumi:"memory"` + MountPoints JobDefinitionMountPointArrayInput `pulumi:"mountPoints"` + NetworkConfiguration JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrInput `pulumi:"networkConfiguration"` + Privileged pulumi.BoolPtrInput `pulumi:"privileged"` + ReadonlyRootFilesystem pulumi.BoolPtrInput `pulumi:"readonlyRootFilesystem"` + ResourceRequirements JobDefinitionResourceRequirementArrayInput `pulumi:"resourceRequirements"` + RuntimePlatform JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrInput `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 (JobDefinitionContainerPropertiesArgs) ElementType() reflect.Type { @@ -1431,18 +1259,20 @@ func (o JobDefinitionContainerPropertiesOutput) Environment() JobDefinitionEnvir return o.ApplyT(func(v JobDefinitionContainerProperties) []JobDefinitionEnvironment { return v.Environment }).(JobDefinitionEnvironmentArrayOutput) } -func (o JobDefinitionContainerPropertiesOutput) EphemeralStorage() JobDefinitionEphemeralStoragePtrOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionEphemeralStorage { return v.EphemeralStorage }).(JobDefinitionEphemeralStoragePtrOutput) +func (o JobDefinitionContainerPropertiesOutput) EphemeralStorage() JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesEphemeralStorageProperties { + return v.EphemeralStorage + }).(JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) } func (o JobDefinitionContainerPropertiesOutput) ExecutionRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v JobDefinitionContainerProperties) *string { return v.ExecutionRoleArn }).(pulumi.StringPtrOutput) } -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) } func (o JobDefinitionContainerPropertiesOutput) Image() pulumi.StringOutput { @@ -1457,26 +1287,30 @@ func (o JobDefinitionContainerPropertiesOutput) JobRoleArn() pulumi.StringPtrOut return o.ApplyT(func(v JobDefinitionContainerProperties) *string { return v.JobRoleArn }).(pulumi.StringPtrOutput) } -func (o JobDefinitionContainerPropertiesOutput) LinuxParameters() JobDefinitionLinuxParametersPtrOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionLinuxParameters { return v.LinuxParameters }).(JobDefinitionLinuxParametersPtrOutput) +func (o JobDefinitionContainerPropertiesOutput) LinuxParameters() JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesLinuxParametersProperties { + return v.LinuxParameters + }).(JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) } -func (o JobDefinitionContainerPropertiesOutput) LogConfiguration() JobDefinitionLogConfigurationPtrOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionLogConfiguration { return v.LogConfiguration }).(JobDefinitionLogConfigurationPtrOutput) +func (o JobDefinitionContainerPropertiesOutput) LogConfiguration() JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesLogConfigurationProperties { + return v.LogConfiguration + }).(JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) } func (o JobDefinitionContainerPropertiesOutput) Memory() pulumi.IntPtrOutput { return o.ApplyT(func(v JobDefinitionContainerProperties) *int { return v.Memory }).(pulumi.IntPtrOutput) } -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) } -func (o JobDefinitionContainerPropertiesOutput) NetworkConfiguration() JobDefinitionNetworkConfigurationPtrOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionNetworkConfiguration { +func (o JobDefinitionContainerPropertiesOutput) NetworkConfiguration() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesNetworkConfigurationProperties { return v.NetworkConfiguration - }).(JobDefinitionNetworkConfigurationPtrOutput) + }).(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) } func (o JobDefinitionContainerPropertiesOutput) Privileged() pulumi.BoolPtrOutput { @@ -1493,8 +1327,10 @@ func (o JobDefinitionContainerPropertiesOutput) ResourceRequirements() JobDefini }).(JobDefinitionResourceRequirementArrayOutput) } -func (o JobDefinitionContainerPropertiesOutput) RuntimePlatform() JobDefinitionRuntimePlatformPtrOutput { - return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionRuntimePlatform { return v.RuntimePlatform }).(JobDefinitionRuntimePlatformPtrOutput) +func (o JobDefinitionContainerPropertiesOutput) RuntimePlatform() JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesRuntimePlatformProperties { + return v.RuntimePlatform + }).(JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) } func (o JobDefinitionContainerPropertiesOutput) Secrets() JobDefinitionSecretArrayOutput { @@ -1513,8 +1349,8 @@ func (o JobDefinitionContainerPropertiesOutput) Vcpus() pulumi.IntPtrOutput { return o.ApplyT(func(v JobDefinitionContainerProperties) *int { return v.Vcpus }).(pulumi.IntPtrOutput) } -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 } @@ -1565,13 +1401,13 @@ func (o JobDefinitionContainerPropertiesPtrOutput) Environment() JobDefinitionEn }).(JobDefinitionEnvironmentArrayOutput) } -func (o JobDefinitionContainerPropertiesPtrOutput) EphemeralStorage() JobDefinitionEphemeralStoragePtrOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionEphemeralStorage { +func (o JobDefinitionContainerPropertiesPtrOutput) EphemeralStorage() JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesEphemeralStorageProperties { if v == nil { return nil } return v.EphemeralStorage - }).(JobDefinitionEphemeralStoragePtrOutput) + }).(JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) } func (o JobDefinitionContainerPropertiesPtrOutput) ExecutionRoleArn() pulumi.StringPtrOutput { @@ -1583,13 +1419,13 @@ func (o JobDefinitionContainerPropertiesPtrOutput) ExecutionRoleArn() pulumi.Str }).(pulumi.StringPtrOutput) } -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) } func (o JobDefinitionContainerPropertiesPtrOutput) Image() pulumi.StringPtrOutput { @@ -1619,22 +1455,22 @@ func (o JobDefinitionContainerPropertiesPtrOutput) JobRoleArn() pulumi.StringPtr }).(pulumi.StringPtrOutput) } -func (o JobDefinitionContainerPropertiesPtrOutput) LinuxParameters() JobDefinitionLinuxParametersPtrOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionLinuxParameters { +func (o JobDefinitionContainerPropertiesPtrOutput) LinuxParameters() JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesLinuxParametersProperties { if v == nil { return nil } return v.LinuxParameters - }).(JobDefinitionLinuxParametersPtrOutput) + }).(JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) } -func (o JobDefinitionContainerPropertiesPtrOutput) LogConfiguration() JobDefinitionLogConfigurationPtrOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionLogConfiguration { +func (o JobDefinitionContainerPropertiesPtrOutput) LogConfiguration() JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesLogConfigurationProperties { if v == nil { return nil } return v.LogConfiguration - }).(JobDefinitionLogConfigurationPtrOutput) + }).(JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) } func (o JobDefinitionContainerPropertiesPtrOutput) Memory() pulumi.IntPtrOutput { @@ -1646,22 +1482,22 @@ func (o JobDefinitionContainerPropertiesPtrOutput) Memory() pulumi.IntPtrOutput }).(pulumi.IntPtrOutput) } -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) } -func (o JobDefinitionContainerPropertiesPtrOutput) NetworkConfiguration() JobDefinitionNetworkConfigurationPtrOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionNetworkConfiguration { +func (o JobDefinitionContainerPropertiesPtrOutput) NetworkConfiguration() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesNetworkConfigurationProperties { if v == nil { return nil } return v.NetworkConfiguration - }).(JobDefinitionNetworkConfigurationPtrOutput) + }).(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) } func (o JobDefinitionContainerPropertiesPtrOutput) Privileged() pulumi.BoolPtrOutput { @@ -1691,13 +1527,13 @@ func (o JobDefinitionContainerPropertiesPtrOutput) ResourceRequirements() JobDef }).(JobDefinitionResourceRequirementArrayOutput) } -func (o JobDefinitionContainerPropertiesPtrOutput) RuntimePlatform() JobDefinitionRuntimePlatformPtrOutput { - return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionRuntimePlatform { +func (o JobDefinitionContainerPropertiesPtrOutput) RuntimePlatform() JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerProperties) *JobDefinitionContainerPropertiesRuntimePlatformProperties { if v == nil { return nil } return v.RuntimePlatform - }).(JobDefinitionRuntimePlatformPtrOutput) + }).(JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) } func (o JobDefinitionContainerPropertiesPtrOutput) Secrets() JobDefinitionSecretArrayOutput { @@ -1736,3402 +1572,4302 @@ func (o JobDefinitionContainerPropertiesPtrOutput) Vcpus() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -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) } -type JobDefinitionDevice struct { - ContainerPath *string `pulumi:"containerPath"` - HostPath *string `pulumi:"hostPath"` - Permissions []string `pulumi:"permissions"` +type JobDefinitionContainerPropertiesEphemeralStorageProperties struct { + SizeInGiB int `pulumi:"sizeInGiB"` } -// JobDefinitionDeviceInput is an input type that accepts JobDefinitionDeviceArgs and JobDefinitionDeviceOutput values. -// You can construct a concrete instance of `JobDefinitionDeviceInput` via: +// JobDefinitionContainerPropertiesEphemeralStoragePropertiesInput is an input type that accepts JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs and JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesEphemeralStoragePropertiesInput` via: // -// JobDefinitionDeviceArgs{...} -type JobDefinitionDeviceInput interface { +// JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs{...} +type JobDefinitionContainerPropertiesEphemeralStoragePropertiesInput interface { pulumi.Input - ToJobDefinitionDeviceOutput() JobDefinitionDeviceOutput - ToJobDefinitionDeviceOutputWithContext(context.Context) JobDefinitionDeviceOutput + ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput() JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput + ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesOutputWithContext(context.Context) JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput } -type JobDefinitionDeviceArgs struct { - ContainerPath pulumi.StringPtrInput `pulumi:"containerPath"` - HostPath pulumi.StringPtrInput `pulumi:"hostPath"` - Permissions pulumi.StringArrayInput `pulumi:"permissions"` +type JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs struct { + SizeInGiB pulumi.IntInput `pulumi:"sizeInGiB"` } -func (JobDefinitionDeviceArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionDevice)(nil)).Elem() +func (JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesEphemeralStorageProperties)(nil)).Elem() } -func (i JobDefinitionDeviceArgs) ToJobDefinitionDeviceOutput() JobDefinitionDeviceOutput { - return i.ToJobDefinitionDeviceOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput() JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput { + return i.ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionDeviceArgs) ToJobDefinitionDeviceOutputWithContext(ctx context.Context) JobDefinitionDeviceOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionDeviceOutput) +func (i JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) } -func (i JobDefinitionDeviceArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionDevice] { - return pulumix.Output[JobDefinitionDevice]{ - OutputState: i.ToJobDefinitionDeviceOutputWithContext(ctx).OutputState, +func (i JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesEphemeralStorageProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesEphemeralStorageProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesOutputWithContext(ctx).OutputState, } } -// JobDefinitionDeviceArrayInput is an input type that accepts JobDefinitionDeviceArray and JobDefinitionDeviceArrayOutput values. -// You can construct a concrete instance of `JobDefinitionDeviceArrayInput` via: +func (i JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput() JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput).ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(ctx) +} + +// JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrInput is an input type that accepts JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs, JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtr and JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrInput` via: // -// JobDefinitionDeviceArray{ JobDefinitionDeviceArgs{...} } -type JobDefinitionDeviceArrayInput interface { +// JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs{...} +// +// or: +// +// nil +type JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrInput interface { pulumi.Input - ToJobDefinitionDeviceArrayOutput() JobDefinitionDeviceArrayOutput - ToJobDefinitionDeviceArrayOutputWithContext(context.Context) JobDefinitionDeviceArrayOutput + ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput() JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput + ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(context.Context) JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput } -type JobDefinitionDeviceArray []JobDefinitionDeviceInput +type jobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrType JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs -func (JobDefinitionDeviceArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionDevice)(nil)).Elem() +func JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtr(v *JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs) JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrInput { + return (*jobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrType)(v) } -func (i JobDefinitionDeviceArray) ToJobDefinitionDeviceArrayOutput() JobDefinitionDeviceArrayOutput { - return i.ToJobDefinitionDeviceArrayOutputWithContext(context.Background()) +func (*jobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesEphemeralStorageProperties)(nil)).Elem() } -func (i JobDefinitionDeviceArray) ToJobDefinitionDeviceArrayOutputWithContext(ctx context.Context) JobDefinitionDeviceArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionDeviceArrayOutput) +func (i *jobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrType) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput() JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionDeviceArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionDevice] { - return pulumix.Output[[]JobDefinitionDevice]{ - OutputState: i.ToJobDefinitionDeviceArrayOutputWithContext(ctx).OutputState, +func (i *jobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrType) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) +} + +func (i *jobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesEphemeralStorageProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesEphemeralStorageProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionDeviceOutput struct{ *pulumi.OutputState } +type JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionDeviceOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionDevice)(nil)).Elem() +func (JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesEphemeralStorageProperties)(nil)).Elem() } -func (o JobDefinitionDeviceOutput) ToJobDefinitionDeviceOutput() JobDefinitionDeviceOutput { +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput() JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput { return o } -func (o JobDefinitionDeviceOutput) ToJobDefinitionDeviceOutputWithContext(ctx context.Context) JobDefinitionDeviceOutput { +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput { return o } -func (o JobDefinitionDeviceOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionDevice] { - return pulumix.Output[JobDefinitionDevice]{ - OutputState: o.OutputState, - } +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput() JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { + return o.ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionDeviceOutput) ContainerPath() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionDevice) *string { return v.ContainerPath }).(pulumi.StringPtrOutput) +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionContainerPropertiesEphemeralStorageProperties) *JobDefinitionContainerPropertiesEphemeralStorageProperties { + return &v + }).(JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) } -func (o JobDefinitionDeviceOutput) HostPath() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionDevice) *string { return v.HostPath }).(pulumi.StringPtrOutput) +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesEphemeralStorageProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesEphemeralStorageProperties]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionDeviceOutput) Permissions() pulumi.StringArrayOutput { - return o.ApplyT(func(v JobDefinitionDevice) []string { return v.Permissions }).(pulumi.StringArrayOutput) +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) SizeInGiB() pulumi.IntOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesEphemeralStorageProperties) int { return v.SizeInGiB }).(pulumi.IntOutput) } -type JobDefinitionDeviceArrayOutput struct{ *pulumi.OutputState } +type JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionDeviceArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionDevice)(nil)).Elem() +func (JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesEphemeralStorageProperties)(nil)).Elem() } -func (o JobDefinitionDeviceArrayOutput) ToJobDefinitionDeviceArrayOutput() JobDefinitionDeviceArrayOutput { +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput() JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { return o } -func (o JobDefinitionDeviceArrayOutput) ToJobDefinitionDeviceArrayOutputWithContext(ctx context.Context) JobDefinitionDeviceArrayOutput { +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) ToJobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput { return o } -func (o JobDefinitionDeviceArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionDevice] { - return pulumix.Output[[]JobDefinitionDevice]{ +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesEphemeralStorageProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesEphemeralStorageProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionDeviceArrayOutput) Index(i pulumi.IntInput) JobDefinitionDeviceOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionDevice { - return vs[0].([]JobDefinitionDevice)[vs[1].(int)] - }).(JobDefinitionDeviceOutput) +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) Elem() JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesEphemeralStorageProperties) JobDefinitionContainerPropertiesEphemeralStorageProperties { + if v != nil { + return *v + } + var ret JobDefinitionContainerPropertiesEphemeralStorageProperties + return ret + }).(JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput) } -type JobDefinitionEfsVolumeConfiguration struct { - AuthorizationConfig *JobDefinitionAuthorizationConfig `pulumi:"authorizationConfig"` - FileSystemId string `pulumi:"fileSystemId"` - RootDirectory *string `pulumi:"rootDirectory"` - TransitEncryption *string `pulumi:"transitEncryption"` - TransitEncryptionPort *int `pulumi:"transitEncryptionPort"` +func (o JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput) SizeInGiB() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesEphemeralStorageProperties) *int { + if v == nil { + return nil + } + return &v.SizeInGiB + }).(pulumi.IntPtrOutput) } -// JobDefinitionEfsVolumeConfigurationInput is an input type that accepts JobDefinitionEfsVolumeConfigurationArgs and JobDefinitionEfsVolumeConfigurationOutput values. -// You can construct a concrete instance of `JobDefinitionEfsVolumeConfigurationInput` via: +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: // -// JobDefinitionEfsVolumeConfigurationArgs{...} -type JobDefinitionEfsVolumeConfigurationInput interface { +// JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs{...} +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesInput interface { pulumi.Input - ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput - ToJobDefinitionEfsVolumeConfigurationOutputWithContext(context.Context) JobDefinitionEfsVolumeConfigurationOutput + ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput + ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput } -type JobDefinitionEfsVolumeConfigurationArgs struct { - AuthorizationConfig JobDefinitionAuthorizationConfigPtrInput `pulumi:"authorizationConfig"` - FileSystemId pulumi.StringInput `pulumi:"fileSystemId"` - RootDirectory pulumi.StringPtrInput `pulumi:"rootDirectory"` - TransitEncryption pulumi.StringPtrInput `pulumi:"transitEncryption"` - TransitEncryptionPort pulumi.IntPtrInput `pulumi:"transitEncryptionPort"` +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs struct { + PlatformVersion pulumi.StringPtrInput `pulumi:"platformVersion"` } -func (JobDefinitionEfsVolumeConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEfsVolumeConfiguration)(nil)).Elem() +func (JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties)(nil)).Elem() } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput { - return i.ToJobDefinitionEfsVolumeConfigurationOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { + return i.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationOutput) +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEfsVolumeConfiguration] { - return pulumix.Output[JobDefinitionEfsVolumeConfiguration]{ - OutputState: i.ToJobDefinitionEfsVolumeConfigurationOutputWithContext(ctx).OutputState, +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { - return i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationOutput).ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx) +func (i JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput).ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx) } -// JobDefinitionEfsVolumeConfigurationPtrInput is an input type that accepts JobDefinitionEfsVolumeConfigurationArgs, JobDefinitionEfsVolumeConfigurationPtr and JobDefinitionEfsVolumeConfigurationPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEfsVolumeConfigurationPtrInput` via: +// JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput is an input type that accepts JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs, JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtr and JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput` via: // -// JobDefinitionEfsVolumeConfigurationArgs{...} +// JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs{...} // // or: // // nil -type JobDefinitionEfsVolumeConfigurationPtrInput interface { +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput - ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput + ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput + ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput } -type jobDefinitionEfsVolumeConfigurationPtrType JobDefinitionEfsVolumeConfigurationArgs +type jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs -func JobDefinitionEfsVolumeConfigurationPtr(v *JobDefinitionEfsVolumeConfigurationArgs) JobDefinitionEfsVolumeConfigurationPtrInput { - return (*jobDefinitionEfsVolumeConfigurationPtrType)(v) +func JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtr(v *JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput { + return (*jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType)(v) } -func (*jobDefinitionEfsVolumeConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEfsVolumeConfiguration)(nil)).Elem() +func (*jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties)(nil)).Elem() } -func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { - return i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) +func (i *jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationPtrOutput) +func (i *jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) } -func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEfsVolumeConfiguration] { - return pulumix.Output[*JobDefinitionEfsVolumeConfiguration]{ - OutputState: i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEfsVolumeConfigurationOutput struct{ *pulumi.OutputState } +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionEfsVolumeConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEfsVolumeConfiguration)(nil)).Elem() +func (JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties)(nil)).Elem() } -func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput { +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { return o } -func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfigurationOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationOutput { +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { return o } -func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { - return o.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return o.ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEfsVolumeConfiguration) *JobDefinitionEfsVolumeConfiguration { +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties) *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { return &v - }).(JobDefinitionEfsVolumeConfigurationPtrOutput) + }).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) } -func (o JobDefinitionEfsVolumeConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEfsVolumeConfiguration] { - return pulumix.Output[JobDefinitionEfsVolumeConfiguration]{ +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEfsVolumeConfigurationOutput) AuthorizationConfig() JobDefinitionAuthorizationConfigPtrOutput { - return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *JobDefinitionAuthorizationConfig { - return v.AuthorizationConfig - }).(JobDefinitionAuthorizationConfigPtrOutput) +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) PlatformVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties) *string { + return v.PlatformVersion + }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEfsVolumeConfigurationOutput) FileSystemId() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) string { return v.FileSystemId }).(pulumi.StringOutput) +type JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties)(nil)).Elem() } -func (o JobDefinitionEfsVolumeConfigurationOutput) RootDirectory() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *string { return v.RootDirectory }).(pulumi.StringPtrOutput) -} - -func (o JobDefinitionEfsVolumeConfigurationOutput) TransitEncryption() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *string { return v.TransitEncryption }).(pulumi.StringPtrOutput) -} - -func (o JobDefinitionEfsVolumeConfigurationOutput) TransitEncryptionPort() pulumi.IntPtrOutput { - return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *int { return v.TransitEncryptionPort }).(pulumi.IntPtrOutput) -} - -type JobDefinitionEfsVolumeConfigurationPtrOutput struct{ *pulumi.OutputState } - -func (JobDefinitionEfsVolumeConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEfsVolumeConfiguration)(nil)).Elem() -} - -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { return o } -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) ToJobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput { return o } -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEfsVolumeConfiguration] { - return pulumix.Output[*JobDefinitionEfsVolumeConfiguration]{ +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) Elem() JobDefinitionEfsVolumeConfigurationOutput { - return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) JobDefinitionEfsVolumeConfiguration { +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) Elem() JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties) JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { if v != nil { return *v } - var ret JobDefinitionEfsVolumeConfiguration + var ret JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties return ret - }).(JobDefinitionEfsVolumeConfigurationOutput) -} - -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) AuthorizationConfig() JobDefinitionAuthorizationConfigPtrOutput { - return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *JobDefinitionAuthorizationConfig { - if v == nil { - return nil - } - return v.AuthorizationConfig - }).(JobDefinitionAuthorizationConfigPtrOutput) + }).(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput) } -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) FileSystemId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *string { +func (o JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput) PlatformVersion() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties) *string { if v == nil { return nil } - return &v.FileSystemId + return v.PlatformVersion }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) RootDirectory() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *string { - if v == nil { - return nil - } - return v.RootDirectory - }).(pulumi.StringPtrOutput) +type JobDefinitionContainerPropertiesLinuxParametersProperties struct { + Devices []JobDefinitionDevice `pulumi:"devices"` + InitProcessEnabled *bool `pulumi:"initProcessEnabled"` + MaxSwap *int `pulumi:"maxSwap"` + SharedMemorySize *int `pulumi:"sharedMemorySize"` + Swappiness *int `pulumi:"swappiness"` + Tmpfs []JobDefinitionTmpfs `pulumi:"tmpfs"` } -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) TransitEncryption() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *string { - if v == nil { - return nil - } - return v.TransitEncryption - }).(pulumi.StringPtrOutput) -} +// JobDefinitionContainerPropertiesLinuxParametersPropertiesInput is an input type that accepts JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs and JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesLinuxParametersPropertiesInput` via: +// +// JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs{...} +type JobDefinitionContainerPropertiesLinuxParametersPropertiesInput interface { + pulumi.Input -func (o JobDefinitionEfsVolumeConfigurationPtrOutput) TransitEncryptionPort() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *int { - if v == nil { - return nil - } - return v.TransitEncryptionPort - }).(pulumi.IntPtrOutput) + ToJobDefinitionContainerPropertiesLinuxParametersPropertiesOutput() JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput + ToJobDefinitionContainerPropertiesLinuxParametersPropertiesOutputWithContext(context.Context) JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput } -type JobDefinitionEksContainer struct { - Args []string `pulumi:"args"` - Command []string `pulumi:"command"` - Env []JobDefinitionEksContainerEnvironmentVariable `pulumi:"env"` - Image string `pulumi:"image"` - ImagePullPolicy *string `pulumi:"imagePullPolicy"` - Name *string `pulumi:"name"` - Resources *JobDefinitionEksContainerResourceRequirements `pulumi:"resources"` - SecurityContext *JobDefinitionEksContainerSecurityContext `pulumi:"securityContext"` - VolumeMounts []JobDefinitionEksContainerVolumeMount `pulumi:"volumeMounts"` +type JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs struct { + Devices JobDefinitionDeviceArrayInput `pulumi:"devices"` + InitProcessEnabled pulumi.BoolPtrInput `pulumi:"initProcessEnabled"` + MaxSwap pulumi.IntPtrInput `pulumi:"maxSwap"` + SharedMemorySize pulumi.IntPtrInput `pulumi:"sharedMemorySize"` + Swappiness pulumi.IntPtrInput `pulumi:"swappiness"` + Tmpfs JobDefinitionTmpfsArrayInput `pulumi:"tmpfs"` } -// JobDefinitionEksContainerInput is an input type that accepts JobDefinitionEksContainerArgs and JobDefinitionEksContainerOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerInput` via: -// -// JobDefinitionEksContainerArgs{...} -type JobDefinitionEksContainerInput interface { - pulumi.Input - - ToJobDefinitionEksContainerOutput() JobDefinitionEksContainerOutput - ToJobDefinitionEksContainerOutputWithContext(context.Context) JobDefinitionEksContainerOutput +func (JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesLinuxParametersProperties)(nil)).Elem() } -type JobDefinitionEksContainerArgs struct { - Args pulumi.StringArrayInput `pulumi:"args"` - Command pulumi.StringArrayInput `pulumi:"command"` - Env JobDefinitionEksContainerEnvironmentVariableArrayInput `pulumi:"env"` - Image pulumi.StringInput `pulumi:"image"` - ImagePullPolicy pulumi.StringPtrInput `pulumi:"imagePullPolicy"` - Name pulumi.StringPtrInput `pulumi:"name"` - Resources JobDefinitionEksContainerResourceRequirementsPtrInput `pulumi:"resources"` - SecurityContext JobDefinitionEksContainerSecurityContextPtrInput `pulumi:"securityContext"` - VolumeMounts JobDefinitionEksContainerVolumeMountArrayInput `pulumi:"volumeMounts"` +func (i JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesOutput() JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput { + return i.ToJobDefinitionContainerPropertiesLinuxParametersPropertiesOutputWithContext(context.Background()) } -func (JobDefinitionEksContainerArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainer)(nil)).Elem() +func (i JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) } -func (i JobDefinitionEksContainerArgs) ToJobDefinitionEksContainerOutput() JobDefinitionEksContainerOutput { - return i.ToJobDefinitionEksContainerOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesLinuxParametersProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesLinuxParametersProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesLinuxParametersPropertiesOutputWithContext(ctx).OutputState, + } } -func (i JobDefinitionEksContainerArgs) ToJobDefinitionEksContainerOutputWithContext(ctx context.Context) JobDefinitionEksContainerOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerOutput) +func (i JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput() JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainer] { - return pulumix.Output[JobDefinitionEksContainer]{ - OutputState: i.ToJobDefinitionEksContainerOutputWithContext(ctx).OutputState, - } +func (i JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput).ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(ctx) } -// JobDefinitionEksContainerArrayInput is an input type that accepts JobDefinitionEksContainerArray and JobDefinitionEksContainerArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerArrayInput` via: +// JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrInput is an input type that accepts JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs, JobDefinitionContainerPropertiesLinuxParametersPropertiesPtr and JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrInput` via: // -// JobDefinitionEksContainerArray{ JobDefinitionEksContainerArgs{...} } -type JobDefinitionEksContainerArrayInput interface { +// JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs{...} +// +// or: +// +// nil +type JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionEksContainerArrayOutput() JobDefinitionEksContainerArrayOutput - ToJobDefinitionEksContainerArrayOutputWithContext(context.Context) JobDefinitionEksContainerArrayOutput + ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput() JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput + ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(context.Context) JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput } -type JobDefinitionEksContainerArray []JobDefinitionEksContainerInput +type jobDefinitionContainerPropertiesLinuxParametersPropertiesPtrType JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs -func (JobDefinitionEksContainerArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksContainer)(nil)).Elem() +func JobDefinitionContainerPropertiesLinuxParametersPropertiesPtr(v *JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs) JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrInput { + return (*jobDefinitionContainerPropertiesLinuxParametersPropertiesPtrType)(v) } -func (i JobDefinitionEksContainerArray) ToJobDefinitionEksContainerArrayOutput() JobDefinitionEksContainerArrayOutput { - return i.ToJobDefinitionEksContainerArrayOutputWithContext(context.Background()) +func (*jobDefinitionContainerPropertiesLinuxParametersPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesLinuxParametersProperties)(nil)).Elem() } -func (i JobDefinitionEksContainerArray) ToJobDefinitionEksContainerArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerArrayOutput) +func (i *jobDefinitionContainerPropertiesLinuxParametersPropertiesPtrType) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput() JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainer] { - return pulumix.Output[[]JobDefinitionEksContainer]{ - OutputState: i.ToJobDefinitionEksContainerArrayOutputWithContext(ctx).OutputState, +func (i *jobDefinitionContainerPropertiesLinuxParametersPropertiesPtrType) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) +} + +func (i *jobDefinitionContainerPropertiesLinuxParametersPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesLinuxParametersProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesLinuxParametersProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksContainerOutput struct{ *pulumi.OutputState } +type JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksContainerOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainer)(nil)).Elem() +func (JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesLinuxParametersProperties)(nil)).Elem() } -func (o JobDefinitionEksContainerOutput) ToJobDefinitionEksContainerOutput() JobDefinitionEksContainerOutput { +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesOutput() JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput { return o } -func (o JobDefinitionEksContainerOutput) ToJobDefinitionEksContainerOutputWithContext(ctx context.Context) JobDefinitionEksContainerOutput { +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput { return o } -func (o JobDefinitionEksContainerOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainer] { - return pulumix.Output[JobDefinitionEksContainer]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionEksContainerOutput) Args() pulumi.StringArrayOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) []string { return v.Args }).(pulumi.StringArrayOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput() JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { + return o.ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksContainerOutput) Command() pulumi.StringArrayOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) []string { return v.Command }).(pulumi.StringArrayOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionContainerPropertiesLinuxParametersProperties) *JobDefinitionContainerPropertiesLinuxParametersProperties { + return &v + }).(JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) } -func (o JobDefinitionEksContainerOutput) Env() JobDefinitionEksContainerEnvironmentVariableArrayOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) []JobDefinitionEksContainerEnvironmentVariable { return v.Env }).(JobDefinitionEksContainerEnvironmentVariableArrayOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesLinuxParametersProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesLinuxParametersProperties]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionEksContainerOutput) Image() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) string { return v.Image }).(pulumi.StringOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) Devices() JobDefinitionDeviceArrayOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLinuxParametersProperties) []JobDefinitionDevice { + return v.Devices + }).(JobDefinitionDeviceArrayOutput) } -func (o JobDefinitionEksContainerOutput) ImagePullPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) *string { return v.ImagePullPolicy }).(pulumi.StringPtrOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) InitProcessEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLinuxParametersProperties) *bool { return v.InitProcessEnabled }).(pulumi.BoolPtrOutput) } -func (o JobDefinitionEksContainerOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) *string { return v.Name }).(pulumi.StringPtrOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) MaxSwap() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLinuxParametersProperties) *int { return v.MaxSwap }).(pulumi.IntPtrOutput) } -func (o JobDefinitionEksContainerOutput) Resources() JobDefinitionEksContainerResourceRequirementsPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) *JobDefinitionEksContainerResourceRequirements { return v.Resources }).(JobDefinitionEksContainerResourceRequirementsPtrOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) SharedMemorySize() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLinuxParametersProperties) *int { return v.SharedMemorySize }).(pulumi.IntPtrOutput) } -func (o JobDefinitionEksContainerOutput) SecurityContext() JobDefinitionEksContainerSecurityContextPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) *JobDefinitionEksContainerSecurityContext { return v.SecurityContext }).(JobDefinitionEksContainerSecurityContextPtrOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) Swappiness() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLinuxParametersProperties) *int { return v.Swappiness }).(pulumi.IntPtrOutput) } -func (o JobDefinitionEksContainerOutput) VolumeMounts() JobDefinitionEksContainerVolumeMountArrayOutput { - return o.ApplyT(func(v JobDefinitionEksContainer) []JobDefinitionEksContainerVolumeMount { return v.VolumeMounts }).(JobDefinitionEksContainerVolumeMountArrayOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) Tmpfs() JobDefinitionTmpfsArrayOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLinuxParametersProperties) []JobDefinitionTmpfs { return v.Tmpfs }).(JobDefinitionTmpfsArrayOutput) } -type JobDefinitionEksContainerArrayOutput struct{ *pulumi.OutputState } +type JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksContainerArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksContainer)(nil)).Elem() +func (JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesLinuxParametersProperties)(nil)).Elem() } -func (o JobDefinitionEksContainerArrayOutput) ToJobDefinitionEksContainerArrayOutput() JobDefinitionEksContainerArrayOutput { +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput() JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { return o } -func (o JobDefinitionEksContainerArrayOutput) ToJobDefinitionEksContainerArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerArrayOutput { +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) ToJobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput { return o } -func (o JobDefinitionEksContainerArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainer] { - return pulumix.Output[[]JobDefinitionEksContainer]{ +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesLinuxParametersProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesLinuxParametersProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerArrayOutput) Index(i pulumi.IntInput) JobDefinitionEksContainerOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEksContainer { - return vs[0].([]JobDefinitionEksContainer)[vs[1].(int)] - }).(JobDefinitionEksContainerOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) Elem() JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLinuxParametersProperties) JobDefinitionContainerPropertiesLinuxParametersProperties { + if v != nil { + return *v + } + var ret JobDefinitionContainerPropertiesLinuxParametersProperties + return ret + }).(JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput) } -type JobDefinitionEksContainerEnvironmentVariable struct { - Name string `pulumi:"name"` - Value *string `pulumi:"value"` +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) Devices() JobDefinitionDeviceArrayOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLinuxParametersProperties) []JobDefinitionDevice { + if v == nil { + return nil + } + return v.Devices + }).(JobDefinitionDeviceArrayOutput) } -// JobDefinitionEksContainerEnvironmentVariableInput is an input type that accepts JobDefinitionEksContainerEnvironmentVariableArgs and JobDefinitionEksContainerEnvironmentVariableOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerEnvironmentVariableInput` via: -// -// JobDefinitionEksContainerEnvironmentVariableArgs{...} -type JobDefinitionEksContainerEnvironmentVariableInput interface { - pulumi.Input - - ToJobDefinitionEksContainerEnvironmentVariableOutput() JobDefinitionEksContainerEnvironmentVariableOutput - ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(context.Context) JobDefinitionEksContainerEnvironmentVariableOutput +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) InitProcessEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLinuxParametersProperties) *bool { + if v == nil { + return nil + } + return v.InitProcessEnabled + }).(pulumi.BoolPtrOutput) } -type JobDefinitionEksContainerEnvironmentVariableArgs struct { - Name pulumi.StringInput `pulumi:"name"` - Value pulumi.StringPtrInput `pulumi:"value"` +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) MaxSwap() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLinuxParametersProperties) *int { + if v == nil { + return nil + } + return v.MaxSwap + }).(pulumi.IntPtrOutput) } -func (JobDefinitionEksContainerEnvironmentVariableArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainerEnvironmentVariable)(nil)).Elem() +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) SharedMemorySize() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLinuxParametersProperties) *int { + if v == nil { + return nil + } + return v.SharedMemorySize + }).(pulumi.IntPtrOutput) } -func (i JobDefinitionEksContainerEnvironmentVariableArgs) ToJobDefinitionEksContainerEnvironmentVariableOutput() JobDefinitionEksContainerEnvironmentVariableOutput { - return i.ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(context.Background()) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) Swappiness() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLinuxParametersProperties) *int { + if v == nil { + return nil + } + return v.Swappiness + }).(pulumi.IntPtrOutput) } -func (i JobDefinitionEksContainerEnvironmentVariableArgs) ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(ctx context.Context) JobDefinitionEksContainerEnvironmentVariableOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerEnvironmentVariableOutput) +func (o JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput) Tmpfs() JobDefinitionTmpfsArrayOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLinuxParametersProperties) []JobDefinitionTmpfs { + if v == nil { + return nil + } + return v.Tmpfs + }).(JobDefinitionTmpfsArrayOutput) } -func (i JobDefinitionEksContainerEnvironmentVariableArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerEnvironmentVariable] { - return pulumix.Output[JobDefinitionEksContainerEnvironmentVariable]{ - OutputState: i.ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(ctx).OutputState, - } +type JobDefinitionContainerPropertiesLogConfigurationProperties struct { + LogDriver string `pulumi:"logDriver"` + Options interface{} `pulumi:"options"` + SecretOptions []JobDefinitionSecret `pulumi:"secretOptions"` } -// JobDefinitionEksContainerEnvironmentVariableArrayInput is an input type that accepts JobDefinitionEksContainerEnvironmentVariableArray and JobDefinitionEksContainerEnvironmentVariableArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerEnvironmentVariableArrayInput` via: +// JobDefinitionContainerPropertiesLogConfigurationPropertiesInput is an input type that accepts JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs and JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesLogConfigurationPropertiesInput` via: // -// JobDefinitionEksContainerEnvironmentVariableArray{ JobDefinitionEksContainerEnvironmentVariableArgs{...} } -type JobDefinitionEksContainerEnvironmentVariableArrayInput interface { +// JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs{...} +type JobDefinitionContainerPropertiesLogConfigurationPropertiesInput interface { pulumi.Input - ToJobDefinitionEksContainerEnvironmentVariableArrayOutput() JobDefinitionEksContainerEnvironmentVariableArrayOutput - ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(context.Context) JobDefinitionEksContainerEnvironmentVariableArrayOutput + ToJobDefinitionContainerPropertiesLogConfigurationPropertiesOutput() JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput + ToJobDefinitionContainerPropertiesLogConfigurationPropertiesOutputWithContext(context.Context) JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput } -type JobDefinitionEksContainerEnvironmentVariableArray []JobDefinitionEksContainerEnvironmentVariableInput +type JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs struct { + LogDriver pulumi.StringInput `pulumi:"logDriver"` + Options pulumi.Input `pulumi:"options"` + SecretOptions JobDefinitionSecretArrayInput `pulumi:"secretOptions"` +} -func (JobDefinitionEksContainerEnvironmentVariableArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksContainerEnvironmentVariable)(nil)).Elem() +func (JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesLogConfigurationProperties)(nil)).Elem() } -func (i JobDefinitionEksContainerEnvironmentVariableArray) ToJobDefinitionEksContainerEnvironmentVariableArrayOutput() JobDefinitionEksContainerEnvironmentVariableArrayOutput { - return i.ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesOutput() JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput { + return i.ToJobDefinitionContainerPropertiesLogConfigurationPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerEnvironmentVariableArray) ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerEnvironmentVariableArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerEnvironmentVariableArrayOutput) +func (i JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) } -func (i JobDefinitionEksContainerEnvironmentVariableArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainerEnvironmentVariable] { - return pulumix.Output[[]JobDefinitionEksContainerEnvironmentVariable]{ - OutputState: i.ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(ctx).OutputState, +func (i JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesLogConfigurationProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesLogConfigurationProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesLogConfigurationPropertiesOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksContainerEnvironmentVariableOutput struct{ *pulumi.OutputState } +func (i JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(context.Background()) +} -func (JobDefinitionEksContainerEnvironmentVariableOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainerEnvironmentVariable)(nil)).Elem() +func (i JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput).ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(ctx) } -func (o JobDefinitionEksContainerEnvironmentVariableOutput) ToJobDefinitionEksContainerEnvironmentVariableOutput() JobDefinitionEksContainerEnvironmentVariableOutput { +// JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrInput is an input type that accepts JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs, JobDefinitionContainerPropertiesLogConfigurationPropertiesPtr and JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrInput` via: +// +// JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs{...} +// +// or: +// +// nil +type JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrInput interface { + pulumi.Input + + ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput + ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(context.Context) JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput +} + +type jobDefinitionContainerPropertiesLogConfigurationPropertiesPtrType JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs + +func JobDefinitionContainerPropertiesLogConfigurationPropertiesPtr(v *JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs) JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrInput { + return (*jobDefinitionContainerPropertiesLogConfigurationPropertiesPtrType)(v) +} + +func (*jobDefinitionContainerPropertiesLogConfigurationPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesLogConfigurationProperties)(nil)).Elem() +} + +func (i *jobDefinitionContainerPropertiesLogConfigurationPropertiesPtrType) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionContainerPropertiesLogConfigurationPropertiesPtrType) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) +} + +func (i *jobDefinitionContainerPropertiesLogConfigurationPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesLogConfigurationProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesLogConfigurationProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(ctx).OutputState, + } +} + +type JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput struct{ *pulumi.OutputState } + +func (JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesLogConfigurationProperties)(nil)).Elem() +} + +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesOutput() JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput { return o } -func (o JobDefinitionEksContainerEnvironmentVariableOutput) ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(ctx context.Context) JobDefinitionEksContainerEnvironmentVariableOutput { +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput { return o } -func (o JobDefinitionEksContainerEnvironmentVariableOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerEnvironmentVariable] { - return pulumix.Output[JobDefinitionEksContainerEnvironmentVariable]{ +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { + return o.ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionContainerPropertiesLogConfigurationProperties) *JobDefinitionContainerPropertiesLogConfigurationProperties { + return &v + }).(JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) +} + +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesLogConfigurationProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesLogConfigurationProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerEnvironmentVariableOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEksContainerEnvironmentVariable) string { return v.Name }).(pulumi.StringOutput) +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) LogDriver() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLogConfigurationProperties) string { return v.LogDriver }).(pulumi.StringOutput) } -func (o JobDefinitionEksContainerEnvironmentVariableOutput) Value() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerEnvironmentVariable) *string { return v.Value }).(pulumi.StringPtrOutput) +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) Options() pulumi.AnyOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLogConfigurationProperties) interface{} { return v.Options }).(pulumi.AnyOutput) } -type JobDefinitionEksContainerEnvironmentVariableArrayOutput struct{ *pulumi.OutputState } +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) SecretOptions() JobDefinitionSecretArrayOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesLogConfigurationProperties) []JobDefinitionSecret { + return v.SecretOptions + }).(JobDefinitionSecretArrayOutput) +} -func (JobDefinitionEksContainerEnvironmentVariableArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksContainerEnvironmentVariable)(nil)).Elem() +type JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesLogConfigurationProperties)(nil)).Elem() } -func (o JobDefinitionEksContainerEnvironmentVariableArrayOutput) ToJobDefinitionEksContainerEnvironmentVariableArrayOutput() JobDefinitionEksContainerEnvironmentVariableArrayOutput { +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { return o } -func (o JobDefinitionEksContainerEnvironmentVariableArrayOutput) ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerEnvironmentVariableArrayOutput { +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) ToJobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput { return o } -func (o JobDefinitionEksContainerEnvironmentVariableArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainerEnvironmentVariable] { - return pulumix.Output[[]JobDefinitionEksContainerEnvironmentVariable]{ +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesLogConfigurationProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesLogConfigurationProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerEnvironmentVariableArrayOutput) Index(i pulumi.IntInput) JobDefinitionEksContainerEnvironmentVariableOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEksContainerEnvironmentVariable { - return vs[0].([]JobDefinitionEksContainerEnvironmentVariable)[vs[1].(int)] - }).(JobDefinitionEksContainerEnvironmentVariableOutput) +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) Elem() JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLogConfigurationProperties) JobDefinitionContainerPropertiesLogConfigurationProperties { + if v != nil { + return *v + } + var ret JobDefinitionContainerPropertiesLogConfigurationProperties + return ret + }).(JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput) } -type JobDefinitionEksContainerResourceRequirements struct { - Limits interface{} `pulumi:"limits"` - Requests interface{} `pulumi:"requests"` +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) LogDriver() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLogConfigurationProperties) *string { + if v == nil { + return nil + } + return &v.LogDriver + }).(pulumi.StringPtrOutput) } -// JobDefinitionEksContainerResourceRequirementsInput is an input type that accepts JobDefinitionEksContainerResourceRequirementsArgs and JobDefinitionEksContainerResourceRequirementsOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerResourceRequirementsInput` via: +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) Options() pulumi.AnyOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLogConfigurationProperties) interface{} { + if v == nil { + return nil + } + return v.Options + }).(pulumi.AnyOutput) +} + +func (o JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput) SecretOptions() JobDefinitionSecretArrayOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesLogConfigurationProperties) []JobDefinitionSecret { + if v == nil { + return nil + } + return v.SecretOptions + }).(JobDefinitionSecretArrayOutput) +} + +type JobDefinitionContainerPropertiesNetworkConfigurationProperties struct { + AssignPublicIp *string `pulumi:"assignPublicIp"` +} + +// JobDefinitionContainerPropertiesNetworkConfigurationPropertiesInput is an input type that accepts JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs and JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesNetworkConfigurationPropertiesInput` via: // -// JobDefinitionEksContainerResourceRequirementsArgs{...} -type JobDefinitionEksContainerResourceRequirementsInput interface { +// JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs{...} +type JobDefinitionContainerPropertiesNetworkConfigurationPropertiesInput interface { pulumi.Input - ToJobDefinitionEksContainerResourceRequirementsOutput() JobDefinitionEksContainerResourceRequirementsOutput - ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(context.Context) JobDefinitionEksContainerResourceRequirementsOutput + ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput + ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutputWithContext(context.Context) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput } -type JobDefinitionEksContainerResourceRequirementsArgs struct { - Limits pulumi.Input `pulumi:"limits"` - Requests pulumi.Input `pulumi:"requests"` +type JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs struct { + AssignPublicIp pulumi.StringPtrInput `pulumi:"assignPublicIp"` } -func (JobDefinitionEksContainerResourceRequirementsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainerResourceRequirements)(nil)).Elem() +func (JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesNetworkConfigurationProperties)(nil)).Elem() } -func (i JobDefinitionEksContainerResourceRequirementsArgs) ToJobDefinitionEksContainerResourceRequirementsOutput() JobDefinitionEksContainerResourceRequirementsOutput { - return i.ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput { + return i.ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerResourceRequirementsArgs) ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerResourceRequirementsOutput) +func (i JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) } -func (i JobDefinitionEksContainerResourceRequirementsArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerResourceRequirements] { - return pulumix.Output[JobDefinitionEksContainerResourceRequirements]{ - OutputState: i.ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(ctx).OutputState, +func (i JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesNetworkConfigurationProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesNetworkConfigurationProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionEksContainerResourceRequirementsArgs) ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput { - return i.ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerResourceRequirementsArgs) ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerResourceRequirementsOutput).ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx) +func (i JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput).ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(ctx) } -// JobDefinitionEksContainerResourceRequirementsPtrInput is an input type that accepts JobDefinitionEksContainerResourceRequirementsArgs, JobDefinitionEksContainerResourceRequirementsPtr and JobDefinitionEksContainerResourceRequirementsPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerResourceRequirementsPtrInput` via: +// JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrInput is an input type that accepts JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs, JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtr and JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrInput` via: // -// JobDefinitionEksContainerResourceRequirementsArgs{...} +// JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs{...} // // or: // // nil -type JobDefinitionEksContainerResourceRequirementsPtrInput interface { +type JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput - ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput + ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput + ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(context.Context) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput } -type jobDefinitionEksContainerResourceRequirementsPtrType JobDefinitionEksContainerResourceRequirementsArgs +type jobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrType JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs -func JobDefinitionEksContainerResourceRequirementsPtr(v *JobDefinitionEksContainerResourceRequirementsArgs) JobDefinitionEksContainerResourceRequirementsPtrInput { - return (*jobDefinitionEksContainerResourceRequirementsPtrType)(v) +func JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtr(v *JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrInput { + return (*jobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrType)(v) } -func (*jobDefinitionEksContainerResourceRequirementsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksContainerResourceRequirements)(nil)).Elem() +func (*jobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesNetworkConfigurationProperties)(nil)).Elem() } -func (i *jobDefinitionEksContainerResourceRequirementsPtrType) ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput { - return i.ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(context.Background()) +func (i *jobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrType) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEksContainerResourceRequirementsPtrType) ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerResourceRequirementsPtrOutput) +func (i *jobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrType) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) } -func (i *jobDefinitionEksContainerResourceRequirementsPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksContainerResourceRequirements] { - return pulumix.Output[*JobDefinitionEksContainerResourceRequirements]{ - OutputState: i.ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesNetworkConfigurationProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesNetworkConfigurationProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksContainerResourceRequirementsOutput struct{ *pulumi.OutputState } +type JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksContainerResourceRequirementsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainerResourceRequirements)(nil)).Elem() +func (JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesNetworkConfigurationProperties)(nil)).Elem() } -func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksContainerResourceRequirementsOutput() JobDefinitionEksContainerResourceRequirementsOutput { +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput { return o } -func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsOutput { +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput { return o } -func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput { - return o.ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(context.Background()) +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { + return o.ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksContainerResourceRequirements) *JobDefinitionEksContainerResourceRequirements { +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionContainerPropertiesNetworkConfigurationProperties) *JobDefinitionContainerPropertiesNetworkConfigurationProperties { return &v - }).(JobDefinitionEksContainerResourceRequirementsPtrOutput) + }).(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) } -func (o JobDefinitionEksContainerResourceRequirementsOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerResourceRequirements] { - return pulumix.Output[JobDefinitionEksContainerResourceRequirements]{ +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesNetworkConfigurationProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesNetworkConfigurationProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerResourceRequirementsOutput) Limits() pulumi.AnyOutput { - return o.ApplyT(func(v JobDefinitionEksContainerResourceRequirements) interface{} { return v.Limits }).(pulumi.AnyOutput) -} - -func (o JobDefinitionEksContainerResourceRequirementsOutput) Requests() pulumi.AnyOutput { - return o.ApplyT(func(v JobDefinitionEksContainerResourceRequirements) interface{} { return v.Requests }).(pulumi.AnyOutput) +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) AssignPublicIp() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesNetworkConfigurationProperties) *string { + return v.AssignPublicIp + }).(pulumi.StringPtrOutput) } -type JobDefinitionEksContainerResourceRequirementsPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksContainerResourceRequirementsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksContainerResourceRequirements)(nil)).Elem() +func (JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesNetworkConfigurationProperties)(nil)).Elem() } -func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput { +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { return o } -func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput { +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) ToJobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput { return o } -func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksContainerResourceRequirements] { - return pulumix.Output[*JobDefinitionEksContainerResourceRequirements]{ +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesNetworkConfigurationProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesNetworkConfigurationProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Elem() JobDefinitionEksContainerResourceRequirementsOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) JobDefinitionEksContainerResourceRequirements { +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) Elem() JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesNetworkConfigurationProperties) JobDefinitionContainerPropertiesNetworkConfigurationProperties { if v != nil { return *v } - var ret JobDefinitionEksContainerResourceRequirements + var ret JobDefinitionContainerPropertiesNetworkConfigurationProperties return ret - }).(JobDefinitionEksContainerResourceRequirementsOutput) -} - -func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Limits() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) interface{} { - if v == nil { - return nil - } - return v.Limits - }).(pulumi.AnyOutput) + }).(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput) } -func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Requests() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) interface{} { +func (o JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput) AssignPublicIp() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesNetworkConfigurationProperties) *string { if v == nil { return nil } - return v.Requests - }).(pulumi.AnyOutput) + return v.AssignPublicIp + }).(pulumi.StringPtrOutput) } -type JobDefinitionEksContainerSecurityContext struct { - Privileged *bool `pulumi:"privileged"` - ReadOnlyRootFilesystem *bool `pulumi:"readOnlyRootFilesystem"` - RunAsGroup *int `pulumi:"runAsGroup"` - RunAsNonRoot *bool `pulumi:"runAsNonRoot"` - RunAsUser *int `pulumi:"runAsUser"` +type JobDefinitionContainerPropertiesRuntimePlatformProperties struct { + CpuArchitecture *string `pulumi:"cpuArchitecture"` + OperatingSystemFamily *string `pulumi:"operatingSystemFamily"` } -// JobDefinitionEksContainerSecurityContextInput is an input type that accepts JobDefinitionEksContainerSecurityContextArgs and JobDefinitionEksContainerSecurityContextOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerSecurityContextInput` via: +// JobDefinitionContainerPropertiesRuntimePlatformPropertiesInput is an input type that accepts JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs and JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesRuntimePlatformPropertiesInput` via: // -// JobDefinitionEksContainerSecurityContextArgs{...} -type JobDefinitionEksContainerSecurityContextInput interface { +// JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs{...} +type JobDefinitionContainerPropertiesRuntimePlatformPropertiesInput interface { pulumi.Input - ToJobDefinitionEksContainerSecurityContextOutput() JobDefinitionEksContainerSecurityContextOutput - ToJobDefinitionEksContainerSecurityContextOutputWithContext(context.Context) JobDefinitionEksContainerSecurityContextOutput + ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput() JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput + ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesOutputWithContext(context.Context) JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput } -type JobDefinitionEksContainerSecurityContextArgs struct { - Privileged pulumi.BoolPtrInput `pulumi:"privileged"` - ReadOnlyRootFilesystem pulumi.BoolPtrInput `pulumi:"readOnlyRootFilesystem"` - RunAsGroup pulumi.IntPtrInput `pulumi:"runAsGroup"` - RunAsNonRoot pulumi.BoolPtrInput `pulumi:"runAsNonRoot"` - RunAsUser pulumi.IntPtrInput `pulumi:"runAsUser"` +type JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs struct { + CpuArchitecture pulumi.StringPtrInput `pulumi:"cpuArchitecture"` + OperatingSystemFamily pulumi.StringPtrInput `pulumi:"operatingSystemFamily"` } -func (JobDefinitionEksContainerSecurityContextArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainerSecurityContext)(nil)).Elem() +func (JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesRuntimePlatformProperties)(nil)).Elem() } -func (i JobDefinitionEksContainerSecurityContextArgs) ToJobDefinitionEksContainerSecurityContextOutput() JobDefinitionEksContainerSecurityContextOutput { - return i.ToJobDefinitionEksContainerSecurityContextOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput() JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput { + return i.ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerSecurityContextArgs) ToJobDefinitionEksContainerSecurityContextOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerSecurityContextOutput) +func (i JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) } -func (i JobDefinitionEksContainerSecurityContextArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerSecurityContext] { - return pulumix.Output[JobDefinitionEksContainerSecurityContext]{ - OutputState: i.ToJobDefinitionEksContainerSecurityContextOutputWithContext(ctx).OutputState, +func (i JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesRuntimePlatformProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesRuntimePlatformProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionEksContainerSecurityContextArgs) ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput { - return i.ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(context.Background()) +func (i JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput() JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerSecurityContextArgs) ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerSecurityContextOutput).ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx) +func (i JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput).ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(ctx) } -// JobDefinitionEksContainerSecurityContextPtrInput is an input type that accepts JobDefinitionEksContainerSecurityContextArgs, JobDefinitionEksContainerSecurityContextPtr and JobDefinitionEksContainerSecurityContextPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerSecurityContextPtrInput` via: +// JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrInput is an input type that accepts JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs, JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtr and JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrInput` via: // -// JobDefinitionEksContainerSecurityContextArgs{...} +// JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs{...} // // or: // // nil -type JobDefinitionEksContainerSecurityContextPtrInput interface { +type JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput - ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(context.Context) JobDefinitionEksContainerSecurityContextPtrOutput + ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput() JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput + ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(context.Context) JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput } -type jobDefinitionEksContainerSecurityContextPtrType JobDefinitionEksContainerSecurityContextArgs +type jobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrType JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs -func JobDefinitionEksContainerSecurityContextPtr(v *JobDefinitionEksContainerSecurityContextArgs) JobDefinitionEksContainerSecurityContextPtrInput { - return (*jobDefinitionEksContainerSecurityContextPtrType)(v) +func JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtr(v *JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs) JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrInput { + return (*jobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrType)(v) } -func (*jobDefinitionEksContainerSecurityContextPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksContainerSecurityContext)(nil)).Elem() +func (*jobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesRuntimePlatformProperties)(nil)).Elem() } -func (i *jobDefinitionEksContainerSecurityContextPtrType) ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput { - return i.ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(context.Background()) +func (i *jobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrType) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput() JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return i.ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEksContainerSecurityContextPtrType) ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerSecurityContextPtrOutput) +func (i *jobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrType) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) } -func (i *jobDefinitionEksContainerSecurityContextPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksContainerSecurityContext] { - return pulumix.Output[*JobDefinitionEksContainerSecurityContext]{ - OutputState: i.ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesRuntimePlatformProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesRuntimePlatformProperties]{ + OutputState: i.ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksContainerSecurityContextOutput struct{ *pulumi.OutputState } +type JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksContainerSecurityContextOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainerSecurityContext)(nil)).Elem() +func (JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionContainerPropertiesRuntimePlatformProperties)(nil)).Elem() } -func (o JobDefinitionEksContainerSecurityContextOutput) ToJobDefinitionEksContainerSecurityContextOutput() JobDefinitionEksContainerSecurityContextOutput { +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput() JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput { return o } -func (o JobDefinitionEksContainerSecurityContextOutput) ToJobDefinitionEksContainerSecurityContextOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextOutput { +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput { return o } -func (o JobDefinitionEksContainerSecurityContextOutput) ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput { - return o.ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(context.Background()) +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput() JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return o.ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksContainerSecurityContextOutput) ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksContainerSecurityContext) *JobDefinitionEksContainerSecurityContext { +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionContainerPropertiesRuntimePlatformProperties) *JobDefinitionContainerPropertiesRuntimePlatformProperties { return &v - }).(JobDefinitionEksContainerSecurityContextPtrOutput) + }).(JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) } -func (o JobDefinitionEksContainerSecurityContextOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerSecurityContext] { - return pulumix.Output[JobDefinitionEksContainerSecurityContext]{ +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionContainerPropertiesRuntimePlatformProperties] { + return pulumix.Output[JobDefinitionContainerPropertiesRuntimePlatformProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerSecurityContextOutput) Privileged() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *bool { return v.Privileged }).(pulumi.BoolPtrOutput) +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) CpuArchitecture() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesRuntimePlatformProperties) *string { return v.CpuArchitecture }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksContainerSecurityContextOutput) ReadOnlyRootFilesystem() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *bool { return v.ReadOnlyRootFilesystem }).(pulumi.BoolPtrOutput) +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) OperatingSystemFamily() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionContainerPropertiesRuntimePlatformProperties) *string { + return v.OperatingSystemFamily + }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksContainerSecurityContextOutput) RunAsGroup() pulumi.IntPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *int { return v.RunAsGroup }).(pulumi.IntPtrOutput) -} +type JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput struct{ *pulumi.OutputState } -func (o JobDefinitionEksContainerSecurityContextOutput) RunAsNonRoot() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *bool { return v.RunAsNonRoot }).(pulumi.BoolPtrOutput) +func (JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionContainerPropertiesRuntimePlatformProperties)(nil)).Elem() } -func (o JobDefinitionEksContainerSecurityContextOutput) RunAsUser() pulumi.IntPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *int { return v.RunAsUser }).(pulumi.IntPtrOutput) +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput() JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { + return o } -type JobDefinitionEksContainerSecurityContextPtrOutput struct{ *pulumi.OutputState } - -func (JobDefinitionEksContainerSecurityContextPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksContainerSecurityContext)(nil)).Elem() -} - -func (o JobDefinitionEksContainerSecurityContextPtrOutput) ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput { - return o -} - -func (o JobDefinitionEksContainerSecurityContextPtrOutput) ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextPtrOutput { +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) ToJobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput { return o } -func (o JobDefinitionEksContainerSecurityContextPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksContainerSecurityContext] { - return pulumix.Output[*JobDefinitionEksContainerSecurityContext]{ +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionContainerPropertiesRuntimePlatformProperties] { + return pulumix.Output[*JobDefinitionContainerPropertiesRuntimePlatformProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerSecurityContextPtrOutput) Elem() JobDefinitionEksContainerSecurityContextOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) JobDefinitionEksContainerSecurityContext { +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) Elem() JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesRuntimePlatformProperties) JobDefinitionContainerPropertiesRuntimePlatformProperties { if v != nil { return *v } - var ret JobDefinitionEksContainerSecurityContext + var ret JobDefinitionContainerPropertiesRuntimePlatformProperties return ret - }).(JobDefinitionEksContainerSecurityContextOutput) -} - -func (o JobDefinitionEksContainerSecurityContextPtrOutput) Privileged() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *bool { - if v == nil { - return nil - } - return v.Privileged - }).(pulumi.BoolPtrOutput) -} - -func (o JobDefinitionEksContainerSecurityContextPtrOutput) ReadOnlyRootFilesystem() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *bool { - if v == nil { - return nil - } - return v.ReadOnlyRootFilesystem - }).(pulumi.BoolPtrOutput) -} - -func (o JobDefinitionEksContainerSecurityContextPtrOutput) RunAsGroup() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *int { - if v == nil { - return nil - } - return v.RunAsGroup - }).(pulumi.IntPtrOutput) + }).(JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput) } -func (o JobDefinitionEksContainerSecurityContextPtrOutput) RunAsNonRoot() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *bool { +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) CpuArchitecture() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesRuntimePlatformProperties) *string { if v == nil { return nil } - return v.RunAsNonRoot - }).(pulumi.BoolPtrOutput) + return v.CpuArchitecture + }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksContainerSecurityContextPtrOutput) RunAsUser() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *int { +func (o JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput) OperatingSystemFamily() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionContainerPropertiesRuntimePlatformProperties) *string { if v == nil { return nil } - return v.RunAsUser - }).(pulumi.IntPtrOutput) + return v.OperatingSystemFamily + }).(pulumi.StringPtrOutput) } -type JobDefinitionEksContainerVolumeMount struct { - MountPath *string `pulumi:"mountPath"` - Name *string `pulumi:"name"` - ReadOnly *bool `pulumi:"readOnly"` +type JobDefinitionDevice struct { + ContainerPath *string `pulumi:"containerPath"` + HostPath *string `pulumi:"hostPath"` + Permissions []string `pulumi:"permissions"` } -// JobDefinitionEksContainerVolumeMountInput is an input type that accepts JobDefinitionEksContainerVolumeMountArgs and JobDefinitionEksContainerVolumeMountOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerVolumeMountInput` via: +// JobDefinitionDeviceInput is an input type that accepts JobDefinitionDeviceArgs and JobDefinitionDeviceOutput values. +// You can construct a concrete instance of `JobDefinitionDeviceInput` via: // -// JobDefinitionEksContainerVolumeMountArgs{...} -type JobDefinitionEksContainerVolumeMountInput interface { +// JobDefinitionDeviceArgs{...} +type JobDefinitionDeviceInput interface { pulumi.Input - ToJobDefinitionEksContainerVolumeMountOutput() JobDefinitionEksContainerVolumeMountOutput - ToJobDefinitionEksContainerVolumeMountOutputWithContext(context.Context) JobDefinitionEksContainerVolumeMountOutput + ToJobDefinitionDeviceOutput() JobDefinitionDeviceOutput + ToJobDefinitionDeviceOutputWithContext(context.Context) JobDefinitionDeviceOutput } -type JobDefinitionEksContainerVolumeMountArgs struct { - MountPath pulumi.StringPtrInput `pulumi:"mountPath"` - Name pulumi.StringPtrInput `pulumi:"name"` - ReadOnly pulumi.BoolPtrInput `pulumi:"readOnly"` +type JobDefinitionDeviceArgs struct { + ContainerPath pulumi.StringPtrInput `pulumi:"containerPath"` + HostPath pulumi.StringPtrInput `pulumi:"hostPath"` + Permissions pulumi.StringArrayInput `pulumi:"permissions"` } -func (JobDefinitionEksContainerVolumeMountArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainerVolumeMount)(nil)).Elem() +func (JobDefinitionDeviceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionDevice)(nil)).Elem() } -func (i JobDefinitionEksContainerVolumeMountArgs) ToJobDefinitionEksContainerVolumeMountOutput() JobDefinitionEksContainerVolumeMountOutput { - return i.ToJobDefinitionEksContainerVolumeMountOutputWithContext(context.Background()) +func (i JobDefinitionDeviceArgs) ToJobDefinitionDeviceOutput() JobDefinitionDeviceOutput { + return i.ToJobDefinitionDeviceOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerVolumeMountArgs) ToJobDefinitionEksContainerVolumeMountOutputWithContext(ctx context.Context) JobDefinitionEksContainerVolumeMountOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerVolumeMountOutput) +func (i JobDefinitionDeviceArgs) ToJobDefinitionDeviceOutputWithContext(ctx context.Context) JobDefinitionDeviceOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionDeviceOutput) } -func (i JobDefinitionEksContainerVolumeMountArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerVolumeMount] { - return pulumix.Output[JobDefinitionEksContainerVolumeMount]{ - OutputState: i.ToJobDefinitionEksContainerVolumeMountOutputWithContext(ctx).OutputState, +func (i JobDefinitionDeviceArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionDevice] { + return pulumix.Output[JobDefinitionDevice]{ + OutputState: i.ToJobDefinitionDeviceOutputWithContext(ctx).OutputState, } } -// JobDefinitionEksContainerVolumeMountArrayInput is an input type that accepts JobDefinitionEksContainerVolumeMountArray and JobDefinitionEksContainerVolumeMountArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEksContainerVolumeMountArrayInput` via: +// JobDefinitionDeviceArrayInput is an input type that accepts JobDefinitionDeviceArray and JobDefinitionDeviceArrayOutput values. +// You can construct a concrete instance of `JobDefinitionDeviceArrayInput` via: // -// JobDefinitionEksContainerVolumeMountArray{ JobDefinitionEksContainerVolumeMountArgs{...} } -type JobDefinitionEksContainerVolumeMountArrayInput interface { +// JobDefinitionDeviceArray{ JobDefinitionDeviceArgs{...} } +type JobDefinitionDeviceArrayInput interface { pulumi.Input - ToJobDefinitionEksContainerVolumeMountArrayOutput() JobDefinitionEksContainerVolumeMountArrayOutput - ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(context.Context) JobDefinitionEksContainerVolumeMountArrayOutput + ToJobDefinitionDeviceArrayOutput() JobDefinitionDeviceArrayOutput + ToJobDefinitionDeviceArrayOutputWithContext(context.Context) JobDefinitionDeviceArrayOutput } -type JobDefinitionEksContainerVolumeMountArray []JobDefinitionEksContainerVolumeMountInput +type JobDefinitionDeviceArray []JobDefinitionDeviceInput -func (JobDefinitionEksContainerVolumeMountArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksContainerVolumeMount)(nil)).Elem() +func (JobDefinitionDeviceArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionDevice)(nil)).Elem() } -func (i JobDefinitionEksContainerVolumeMountArray) ToJobDefinitionEksContainerVolumeMountArrayOutput() JobDefinitionEksContainerVolumeMountArrayOutput { - return i.ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(context.Background()) +func (i JobDefinitionDeviceArray) ToJobDefinitionDeviceArrayOutput() JobDefinitionDeviceArrayOutput { + return i.ToJobDefinitionDeviceArrayOutputWithContext(context.Background()) } -func (i JobDefinitionEksContainerVolumeMountArray) ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerVolumeMountArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerVolumeMountArrayOutput) +func (i JobDefinitionDeviceArray) ToJobDefinitionDeviceArrayOutputWithContext(ctx context.Context) JobDefinitionDeviceArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionDeviceArrayOutput) } -func (i JobDefinitionEksContainerVolumeMountArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainerVolumeMount] { - return pulumix.Output[[]JobDefinitionEksContainerVolumeMount]{ - OutputState: i.ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(ctx).OutputState, +func (i JobDefinitionDeviceArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionDevice] { + return pulumix.Output[[]JobDefinitionDevice]{ + OutputState: i.ToJobDefinitionDeviceArrayOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksContainerVolumeMountOutput struct{ *pulumi.OutputState } +type JobDefinitionDeviceOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksContainerVolumeMountOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksContainerVolumeMount)(nil)).Elem() +func (JobDefinitionDeviceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionDevice)(nil)).Elem() } -func (o JobDefinitionEksContainerVolumeMountOutput) ToJobDefinitionEksContainerVolumeMountOutput() JobDefinitionEksContainerVolumeMountOutput { +func (o JobDefinitionDeviceOutput) ToJobDefinitionDeviceOutput() JobDefinitionDeviceOutput { return o } -func (o JobDefinitionEksContainerVolumeMountOutput) ToJobDefinitionEksContainerVolumeMountOutputWithContext(ctx context.Context) JobDefinitionEksContainerVolumeMountOutput { +func (o JobDefinitionDeviceOutput) ToJobDefinitionDeviceOutputWithContext(ctx context.Context) JobDefinitionDeviceOutput { return o } -func (o JobDefinitionEksContainerVolumeMountOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerVolumeMount] { - return pulumix.Output[JobDefinitionEksContainerVolumeMount]{ +func (o JobDefinitionDeviceOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionDevice] { + return pulumix.Output[JobDefinitionDevice]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerVolumeMountOutput) MountPath() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerVolumeMount) *string { return v.MountPath }).(pulumi.StringPtrOutput) +func (o JobDefinitionDeviceOutput) ContainerPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionDevice) *string { return v.ContainerPath }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksContainerVolumeMountOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerVolumeMount) *string { return v.Name }).(pulumi.StringPtrOutput) +func (o JobDefinitionDeviceOutput) HostPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionDevice) *string { return v.HostPath }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksContainerVolumeMountOutput) ReadOnly() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionEksContainerVolumeMount) *bool { return v.ReadOnly }).(pulumi.BoolPtrOutput) +func (o JobDefinitionDeviceOutput) Permissions() pulumi.StringArrayOutput { + return o.ApplyT(func(v JobDefinitionDevice) []string { return v.Permissions }).(pulumi.StringArrayOutput) } -type JobDefinitionEksContainerVolumeMountArrayOutput struct{ *pulumi.OutputState } +type JobDefinitionDeviceArrayOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksContainerVolumeMountArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksContainerVolumeMount)(nil)).Elem() +func (JobDefinitionDeviceArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionDevice)(nil)).Elem() } -func (o JobDefinitionEksContainerVolumeMountArrayOutput) ToJobDefinitionEksContainerVolumeMountArrayOutput() JobDefinitionEksContainerVolumeMountArrayOutput { +func (o JobDefinitionDeviceArrayOutput) ToJobDefinitionDeviceArrayOutput() JobDefinitionDeviceArrayOutput { return o } -func (o JobDefinitionEksContainerVolumeMountArrayOutput) ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerVolumeMountArrayOutput { +func (o JobDefinitionDeviceArrayOutput) ToJobDefinitionDeviceArrayOutputWithContext(ctx context.Context) JobDefinitionDeviceArrayOutput { return o } -func (o JobDefinitionEksContainerVolumeMountArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainerVolumeMount] { - return pulumix.Output[[]JobDefinitionEksContainerVolumeMount]{ +func (o JobDefinitionDeviceArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionDevice] { + return pulumix.Output[[]JobDefinitionDevice]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksContainerVolumeMountArrayOutput) Index(i pulumi.IntInput) JobDefinitionEksContainerVolumeMountOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEksContainerVolumeMount { - return vs[0].([]JobDefinitionEksContainerVolumeMount)[vs[1].(int)] - }).(JobDefinitionEksContainerVolumeMountOutput) +func (o JobDefinitionDeviceArrayOutput) Index(i pulumi.IntInput) JobDefinitionDeviceOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionDevice { + return vs[0].([]JobDefinitionDevice)[vs[1].(int)] + }).(JobDefinitionDeviceOutput) } -type JobDefinitionEksEmptyDir struct { - Medium *string `pulumi:"medium"` - SizeLimit *string `pulumi:"sizeLimit"` +type JobDefinitionEfsAuthorizationConfig struct { + AccessPointId *string `pulumi:"accessPointId"` + Iam *string `pulumi:"iam"` } -// JobDefinitionEksEmptyDirInput is an input type that accepts JobDefinitionEksEmptyDirArgs and JobDefinitionEksEmptyDirOutput values. -// You can construct a concrete instance of `JobDefinitionEksEmptyDirInput` via: +// JobDefinitionEfsAuthorizationConfigInput is an input type that accepts JobDefinitionEfsAuthorizationConfigArgs and JobDefinitionEfsAuthorizationConfigOutput values. +// You can construct a concrete instance of `JobDefinitionEfsAuthorizationConfigInput` via: // -// JobDefinitionEksEmptyDirArgs{...} -type JobDefinitionEksEmptyDirInput interface { +// JobDefinitionEfsAuthorizationConfigArgs{...} +type JobDefinitionEfsAuthorizationConfigInput interface { pulumi.Input - ToJobDefinitionEksEmptyDirOutput() JobDefinitionEksEmptyDirOutput - ToJobDefinitionEksEmptyDirOutputWithContext(context.Context) JobDefinitionEksEmptyDirOutput + ToJobDefinitionEfsAuthorizationConfigOutput() JobDefinitionEfsAuthorizationConfigOutput + ToJobDefinitionEfsAuthorizationConfigOutputWithContext(context.Context) JobDefinitionEfsAuthorizationConfigOutput } -type JobDefinitionEksEmptyDirArgs struct { - Medium pulumi.StringPtrInput `pulumi:"medium"` - SizeLimit pulumi.StringPtrInput `pulumi:"sizeLimit"` +type JobDefinitionEfsAuthorizationConfigArgs struct { + AccessPointId pulumi.StringPtrInput `pulumi:"accessPointId"` + Iam pulumi.StringPtrInput `pulumi:"iam"` } -func (JobDefinitionEksEmptyDirArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksEmptyDir)(nil)).Elem() +func (JobDefinitionEfsAuthorizationConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEfsAuthorizationConfig)(nil)).Elem() } -func (i JobDefinitionEksEmptyDirArgs) ToJobDefinitionEksEmptyDirOutput() JobDefinitionEksEmptyDirOutput { - return i.ToJobDefinitionEksEmptyDirOutputWithContext(context.Background()) +func (i JobDefinitionEfsAuthorizationConfigArgs) ToJobDefinitionEfsAuthorizationConfigOutput() JobDefinitionEfsAuthorizationConfigOutput { + return i.ToJobDefinitionEfsAuthorizationConfigOutputWithContext(context.Background()) } -func (i JobDefinitionEksEmptyDirArgs) ToJobDefinitionEksEmptyDirOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksEmptyDirOutput) +func (i JobDefinitionEfsAuthorizationConfigArgs) ToJobDefinitionEfsAuthorizationConfigOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsAuthorizationConfigOutput) } -func (i JobDefinitionEksEmptyDirArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksEmptyDir] { - return pulumix.Output[JobDefinitionEksEmptyDir]{ - OutputState: i.ToJobDefinitionEksEmptyDirOutputWithContext(ctx).OutputState, +func (i JobDefinitionEfsAuthorizationConfigArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEfsAuthorizationConfig] { + return pulumix.Output[JobDefinitionEfsAuthorizationConfig]{ + OutputState: i.ToJobDefinitionEfsAuthorizationConfigOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionEksEmptyDirArgs) ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput { - return i.ToJobDefinitionEksEmptyDirPtrOutputWithContext(context.Background()) +func (i JobDefinitionEfsAuthorizationConfigArgs) ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput { + return i.ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksEmptyDirArgs) ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksEmptyDirOutput).ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx) +func (i JobDefinitionEfsAuthorizationConfigArgs) ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsAuthorizationConfigOutput).ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx) } -// JobDefinitionEksEmptyDirPtrInput is an input type that accepts JobDefinitionEksEmptyDirArgs, JobDefinitionEksEmptyDirPtr and JobDefinitionEksEmptyDirPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEksEmptyDirPtrInput` via: +// JobDefinitionEfsAuthorizationConfigPtrInput is an input type that accepts JobDefinitionEfsAuthorizationConfigArgs, JobDefinitionEfsAuthorizationConfigPtr and JobDefinitionEfsAuthorizationConfigPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEfsAuthorizationConfigPtrInput` via: // -// JobDefinitionEksEmptyDirArgs{...} +// JobDefinitionEfsAuthorizationConfigArgs{...} // // or: // // nil -type JobDefinitionEksEmptyDirPtrInput interface { +type JobDefinitionEfsAuthorizationConfigPtrInput interface { pulumi.Input - ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput - ToJobDefinitionEksEmptyDirPtrOutputWithContext(context.Context) JobDefinitionEksEmptyDirPtrOutput + ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput + ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput } -type jobDefinitionEksEmptyDirPtrType JobDefinitionEksEmptyDirArgs +type jobDefinitionEfsAuthorizationConfigPtrType JobDefinitionEfsAuthorizationConfigArgs -func JobDefinitionEksEmptyDirPtr(v *JobDefinitionEksEmptyDirArgs) JobDefinitionEksEmptyDirPtrInput { - return (*jobDefinitionEksEmptyDirPtrType)(v) +func JobDefinitionEfsAuthorizationConfigPtr(v *JobDefinitionEfsAuthorizationConfigArgs) JobDefinitionEfsAuthorizationConfigPtrInput { + return (*jobDefinitionEfsAuthorizationConfigPtrType)(v) } -func (*jobDefinitionEksEmptyDirPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksEmptyDir)(nil)).Elem() +func (*jobDefinitionEfsAuthorizationConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEfsAuthorizationConfig)(nil)).Elem() } -func (i *jobDefinitionEksEmptyDirPtrType) ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput { - return i.ToJobDefinitionEksEmptyDirPtrOutputWithContext(context.Background()) +func (i *jobDefinitionEfsAuthorizationConfigPtrType) ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput { + return i.ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEksEmptyDirPtrType) ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksEmptyDirPtrOutput) +func (i *jobDefinitionEfsAuthorizationConfigPtrType) ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsAuthorizationConfigPtrOutput) } -func (i *jobDefinitionEksEmptyDirPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksEmptyDir] { - return pulumix.Output[*JobDefinitionEksEmptyDir]{ - OutputState: i.ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionEfsAuthorizationConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEfsAuthorizationConfig] { + return pulumix.Output[*JobDefinitionEfsAuthorizationConfig]{ + OutputState: i.ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksEmptyDirOutput struct{ *pulumi.OutputState } +type JobDefinitionEfsAuthorizationConfigOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksEmptyDirOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksEmptyDir)(nil)).Elem() +func (JobDefinitionEfsAuthorizationConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEfsAuthorizationConfig)(nil)).Elem() } -func (o JobDefinitionEksEmptyDirOutput) ToJobDefinitionEksEmptyDirOutput() JobDefinitionEksEmptyDirOutput { +func (o JobDefinitionEfsAuthorizationConfigOutput) ToJobDefinitionEfsAuthorizationConfigOutput() JobDefinitionEfsAuthorizationConfigOutput { return o } -func (o JobDefinitionEksEmptyDirOutput) ToJobDefinitionEksEmptyDirOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirOutput { +func (o JobDefinitionEfsAuthorizationConfigOutput) ToJobDefinitionEfsAuthorizationConfigOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigOutput { return o } -func (o JobDefinitionEksEmptyDirOutput) ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput { - return o.ToJobDefinitionEksEmptyDirPtrOutputWithContext(context.Background()) +func (o JobDefinitionEfsAuthorizationConfigOutput) ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput { + return o.ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksEmptyDirOutput) ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksEmptyDir) *JobDefinitionEksEmptyDir { +func (o JobDefinitionEfsAuthorizationConfigOutput) ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEfsAuthorizationConfig) *JobDefinitionEfsAuthorizationConfig { return &v - }).(JobDefinitionEksEmptyDirPtrOutput) + }).(JobDefinitionEfsAuthorizationConfigPtrOutput) } -func (o JobDefinitionEksEmptyDirOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksEmptyDir] { - return pulumix.Output[JobDefinitionEksEmptyDir]{ +func (o JobDefinitionEfsAuthorizationConfigOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEfsAuthorizationConfig] { + return pulumix.Output[JobDefinitionEfsAuthorizationConfig]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksEmptyDirOutput) Medium() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEksEmptyDir) *string { return v.Medium }).(pulumi.StringPtrOutput) +func (o JobDefinitionEfsAuthorizationConfigOutput) AccessPointId() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsAuthorizationConfig) *string { return v.AccessPointId }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksEmptyDirOutput) SizeLimit() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEksEmptyDir) *string { return v.SizeLimit }).(pulumi.StringPtrOutput) +func (o JobDefinitionEfsAuthorizationConfigOutput) Iam() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsAuthorizationConfig) *string { return v.Iam }).(pulumi.StringPtrOutput) } -type JobDefinitionEksEmptyDirPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionEfsAuthorizationConfigPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksEmptyDirPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksEmptyDir)(nil)).Elem() +func (JobDefinitionEfsAuthorizationConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEfsAuthorizationConfig)(nil)).Elem() } -func (o JobDefinitionEksEmptyDirPtrOutput) ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput { +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) ToJobDefinitionEfsAuthorizationConfigPtrOutput() JobDefinitionEfsAuthorizationConfigPtrOutput { return o } -func (o JobDefinitionEksEmptyDirPtrOutput) ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirPtrOutput { +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) ToJobDefinitionEfsAuthorizationConfigPtrOutputWithContext(ctx context.Context) JobDefinitionEfsAuthorizationConfigPtrOutput { return o } -func (o JobDefinitionEksEmptyDirPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksEmptyDir] { - return pulumix.Output[*JobDefinitionEksEmptyDir]{ +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEfsAuthorizationConfig] { + return pulumix.Output[*JobDefinitionEfsAuthorizationConfig]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksEmptyDirPtrOutput) Elem() JobDefinitionEksEmptyDirOutput { - return o.ApplyT(func(v *JobDefinitionEksEmptyDir) JobDefinitionEksEmptyDir { +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) Elem() JobDefinitionEfsAuthorizationConfigOutput { + return o.ApplyT(func(v *JobDefinitionEfsAuthorizationConfig) JobDefinitionEfsAuthorizationConfig { if v != nil { return *v } - var ret JobDefinitionEksEmptyDir + var ret JobDefinitionEfsAuthorizationConfig return ret - }).(JobDefinitionEksEmptyDirOutput) + }).(JobDefinitionEfsAuthorizationConfigOutput) } -func (o JobDefinitionEksEmptyDirPtrOutput) Medium() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksEmptyDir) *string { +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) AccessPointId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsAuthorizationConfig) *string { if v == nil { return nil } - return v.Medium + return v.AccessPointId }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksEmptyDirPtrOutput) SizeLimit() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksEmptyDir) *string { +func (o JobDefinitionEfsAuthorizationConfigPtrOutput) Iam() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsAuthorizationConfig) *string { if v == nil { return nil } - return v.SizeLimit + return v.Iam }).(pulumi.StringPtrOutput) } -type JobDefinitionEksHostPath struct { - Path *string `pulumi:"path"` +type JobDefinitionEfsVolumeConfiguration struct { + AuthorizationConfig *JobDefinitionEfsAuthorizationConfig `pulumi:"authorizationConfig"` + FileSystemId string `pulumi:"fileSystemId"` + RootDirectory *string `pulumi:"rootDirectory"` + TransitEncryption *string `pulumi:"transitEncryption"` + TransitEncryptionPort *int `pulumi:"transitEncryptionPort"` } -// JobDefinitionEksHostPathInput is an input type that accepts JobDefinitionEksHostPathArgs and JobDefinitionEksHostPathOutput values. -// You can construct a concrete instance of `JobDefinitionEksHostPathInput` via: +// JobDefinitionEfsVolumeConfigurationInput is an input type that accepts JobDefinitionEfsVolumeConfigurationArgs and JobDefinitionEfsVolumeConfigurationOutput values. +// You can construct a concrete instance of `JobDefinitionEfsVolumeConfigurationInput` via: // -// JobDefinitionEksHostPathArgs{...} -type JobDefinitionEksHostPathInput interface { +// JobDefinitionEfsVolumeConfigurationArgs{...} +type JobDefinitionEfsVolumeConfigurationInput interface { pulumi.Input - ToJobDefinitionEksHostPathOutput() JobDefinitionEksHostPathOutput - ToJobDefinitionEksHostPathOutputWithContext(context.Context) JobDefinitionEksHostPathOutput + ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput + ToJobDefinitionEfsVolumeConfigurationOutputWithContext(context.Context) JobDefinitionEfsVolumeConfigurationOutput } -type JobDefinitionEksHostPathArgs struct { - Path pulumi.StringPtrInput `pulumi:"path"` +type JobDefinitionEfsVolumeConfigurationArgs struct { + AuthorizationConfig JobDefinitionEfsAuthorizationConfigPtrInput `pulumi:"authorizationConfig"` + FileSystemId pulumi.StringInput `pulumi:"fileSystemId"` + RootDirectory pulumi.StringPtrInput `pulumi:"rootDirectory"` + TransitEncryption pulumi.StringPtrInput `pulumi:"transitEncryption"` + TransitEncryptionPort pulumi.IntPtrInput `pulumi:"transitEncryptionPort"` } -func (JobDefinitionEksHostPathArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksHostPath)(nil)).Elem() +func (JobDefinitionEfsVolumeConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEfsVolumeConfiguration)(nil)).Elem() } -func (i JobDefinitionEksHostPathArgs) ToJobDefinitionEksHostPathOutput() JobDefinitionEksHostPathOutput { - return i.ToJobDefinitionEksHostPathOutputWithContext(context.Background()) +func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput { + return i.ToJobDefinitionEfsVolumeConfigurationOutputWithContext(context.Background()) } -func (i JobDefinitionEksHostPathArgs) ToJobDefinitionEksHostPathOutputWithContext(ctx context.Context) JobDefinitionEksHostPathOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksHostPathOutput) +func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationOutput) } -func (i JobDefinitionEksHostPathArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksHostPath] { - return pulumix.Output[JobDefinitionEksHostPath]{ - OutputState: i.ToJobDefinitionEksHostPathOutputWithContext(ctx).OutputState, +func (i JobDefinitionEfsVolumeConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEfsVolumeConfiguration] { + return pulumix.Output[JobDefinitionEfsVolumeConfiguration]{ + OutputState: i.ToJobDefinitionEfsVolumeConfigurationOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionEksHostPathArgs) ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput { - return i.ToJobDefinitionEksHostPathPtrOutputWithContext(context.Background()) +func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { + return i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksHostPathArgs) ToJobDefinitionEksHostPathPtrOutputWithContext(ctx context.Context) JobDefinitionEksHostPathPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksHostPathOutput).ToJobDefinitionEksHostPathPtrOutputWithContext(ctx) +func (i JobDefinitionEfsVolumeConfigurationArgs) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationOutput).ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx) } -// JobDefinitionEksHostPathPtrInput is an input type that accepts JobDefinitionEksHostPathArgs, JobDefinitionEksHostPathPtr and JobDefinitionEksHostPathPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEksHostPathPtrInput` via: +// JobDefinitionEfsVolumeConfigurationPtrInput is an input type that accepts JobDefinitionEfsVolumeConfigurationArgs, JobDefinitionEfsVolumeConfigurationPtr and JobDefinitionEfsVolumeConfigurationPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEfsVolumeConfigurationPtrInput` via: // -// JobDefinitionEksHostPathArgs{...} +// JobDefinitionEfsVolumeConfigurationArgs{...} // // or: // // nil -type JobDefinitionEksHostPathPtrInput interface { +type JobDefinitionEfsVolumeConfigurationPtrInput interface { pulumi.Input - ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput - ToJobDefinitionEksHostPathPtrOutputWithContext(context.Context) JobDefinitionEksHostPathPtrOutput + ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput + ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput } -type jobDefinitionEksHostPathPtrType JobDefinitionEksHostPathArgs +type jobDefinitionEfsVolumeConfigurationPtrType JobDefinitionEfsVolumeConfigurationArgs -func JobDefinitionEksHostPathPtr(v *JobDefinitionEksHostPathArgs) JobDefinitionEksHostPathPtrInput { - return (*jobDefinitionEksHostPathPtrType)(v) +func JobDefinitionEfsVolumeConfigurationPtr(v *JobDefinitionEfsVolumeConfigurationArgs) JobDefinitionEfsVolumeConfigurationPtrInput { + return (*jobDefinitionEfsVolumeConfigurationPtrType)(v) } -func (*jobDefinitionEksHostPathPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksHostPath)(nil)).Elem() +func (*jobDefinitionEfsVolumeConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEfsVolumeConfiguration)(nil)).Elem() } -func (i *jobDefinitionEksHostPathPtrType) ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput { - return i.ToJobDefinitionEksHostPathPtrOutputWithContext(context.Background()) +func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { + return i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEksHostPathPtrType) ToJobDefinitionEksHostPathPtrOutputWithContext(ctx context.Context) JobDefinitionEksHostPathPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksHostPathPtrOutput) +func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEfsVolumeConfigurationPtrOutput) } -func (i *jobDefinitionEksHostPathPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksHostPath] { - return pulumix.Output[*JobDefinitionEksHostPath]{ - OutputState: i.ToJobDefinitionEksHostPathPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionEfsVolumeConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEfsVolumeConfiguration] { + return pulumix.Output[*JobDefinitionEfsVolumeConfiguration]{ + OutputState: i.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksHostPathOutput struct{ *pulumi.OutputState } +type JobDefinitionEfsVolumeConfigurationOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksHostPathOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksHostPath)(nil)).Elem() +func (JobDefinitionEfsVolumeConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEfsVolumeConfiguration)(nil)).Elem() } -func (o JobDefinitionEksHostPathOutput) ToJobDefinitionEksHostPathOutput() JobDefinitionEksHostPathOutput { +func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfigurationOutput() JobDefinitionEfsVolumeConfigurationOutput { return o } -func (o JobDefinitionEksHostPathOutput) ToJobDefinitionEksHostPathOutputWithContext(ctx context.Context) JobDefinitionEksHostPathOutput { +func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfigurationOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationOutput { return o } -func (o JobDefinitionEksHostPathOutput) ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput { - return o.ToJobDefinitionEksHostPathPtrOutputWithContext(context.Background()) +func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { + return o.ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksHostPathOutput) ToJobDefinitionEksHostPathPtrOutputWithContext(ctx context.Context) JobDefinitionEksHostPathPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksHostPath) *JobDefinitionEksHostPath { +func (o JobDefinitionEfsVolumeConfigurationOutput) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEfsVolumeConfiguration) *JobDefinitionEfsVolumeConfiguration { return &v - }).(JobDefinitionEksHostPathPtrOutput) + }).(JobDefinitionEfsVolumeConfigurationPtrOutput) } -func (o JobDefinitionEksHostPathOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksHostPath] { - return pulumix.Output[JobDefinitionEksHostPath]{ +func (o JobDefinitionEfsVolumeConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEfsVolumeConfiguration] { + return pulumix.Output[JobDefinitionEfsVolumeConfiguration]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksHostPathOutput) Path() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEksHostPath) *string { return v.Path }).(pulumi.StringPtrOutput) +func (o JobDefinitionEfsVolumeConfigurationOutput) AuthorizationConfig() JobDefinitionEfsAuthorizationConfigPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *JobDefinitionEfsAuthorizationConfig { + return v.AuthorizationConfig + }).(JobDefinitionEfsAuthorizationConfigPtrOutput) } -type JobDefinitionEksHostPathPtrOutput struct{ *pulumi.OutputState } +func (o JobDefinitionEfsVolumeConfigurationOutput) FileSystemId() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) string { return v.FileSystemId }).(pulumi.StringOutput) +} -func (JobDefinitionEksHostPathPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksHostPath)(nil)).Elem() +func (o JobDefinitionEfsVolumeConfigurationOutput) RootDirectory() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *string { return v.RootDirectory }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksHostPathPtrOutput) ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput { +func (o JobDefinitionEfsVolumeConfigurationOutput) TransitEncryption() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *string { return v.TransitEncryption }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionEfsVolumeConfigurationOutput) TransitEncryptionPort() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionEfsVolumeConfiguration) *int { return v.TransitEncryptionPort }).(pulumi.IntPtrOutput) +} + +type JobDefinitionEfsVolumeConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEfsVolumeConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEfsVolumeConfiguration)(nil)).Elem() +} + +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) ToJobDefinitionEfsVolumeConfigurationPtrOutput() JobDefinitionEfsVolumeConfigurationPtrOutput { return o } -func (o JobDefinitionEksHostPathPtrOutput) ToJobDefinitionEksHostPathPtrOutputWithContext(ctx context.Context) JobDefinitionEksHostPathPtrOutput { +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) ToJobDefinitionEfsVolumeConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionEfsVolumeConfigurationPtrOutput { return o } -func (o JobDefinitionEksHostPathPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksHostPath] { - return pulumix.Output[*JobDefinitionEksHostPath]{ +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEfsVolumeConfiguration] { + return pulumix.Output[*JobDefinitionEfsVolumeConfiguration]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksHostPathPtrOutput) Elem() JobDefinitionEksHostPathOutput { - return o.ApplyT(func(v *JobDefinitionEksHostPath) JobDefinitionEksHostPath { +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) Elem() JobDefinitionEfsVolumeConfigurationOutput { + return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) JobDefinitionEfsVolumeConfiguration { if v != nil { return *v } - var ret JobDefinitionEksHostPath + var ret JobDefinitionEfsVolumeConfiguration return ret - }).(JobDefinitionEksHostPathOutput) + }).(JobDefinitionEfsVolumeConfigurationOutput) } -func (o JobDefinitionEksHostPathPtrOutput) Path() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksHostPath) *string { +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) AuthorizationConfig() JobDefinitionEfsAuthorizationConfigPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *JobDefinitionEfsAuthorizationConfig { if v == nil { return nil } - return v.Path + return v.AuthorizationConfig + }).(JobDefinitionEfsAuthorizationConfigPtrOutput) +} + +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) FileSystemId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *string { + if v == nil { + return nil + } + return &v.FileSystemId }).(pulumi.StringPtrOutput) } -type JobDefinitionEksProperties struct { - PodProperties *JobDefinitionPodProperties `pulumi:"podProperties"` +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) RootDirectory() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *string { + if v == nil { + return nil + } + return v.RootDirectory + }).(pulumi.StringPtrOutput) } -// JobDefinitionEksPropertiesInput is an input type that accepts JobDefinitionEksPropertiesArgs and JobDefinitionEksPropertiesOutput values. -// You can construct a concrete instance of `JobDefinitionEksPropertiesInput` via: -// -// JobDefinitionEksPropertiesArgs{...} -type JobDefinitionEksPropertiesInput interface { - pulumi.Input +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) TransitEncryption() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *string { + if v == nil { + return nil + } + return v.TransitEncryption + }).(pulumi.StringPtrOutput) +} - ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput - ToJobDefinitionEksPropertiesOutputWithContext(context.Context) JobDefinitionEksPropertiesOutput +func (o JobDefinitionEfsVolumeConfigurationPtrOutput) TransitEncryptionPort() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionEfsVolumeConfiguration) *int { + if v == nil { + return nil + } + return v.TransitEncryptionPort + }).(pulumi.IntPtrOutput) } -type JobDefinitionEksPropertiesArgs struct { - PodProperties JobDefinitionPodPropertiesPtrInput `pulumi:"podProperties"` +type JobDefinitionEksContainer struct { + Args []string `pulumi:"args"` + Command []string `pulumi:"command"` + Env []JobDefinitionEksContainerEnvironmentVariable `pulumi:"env"` + Image string `pulumi:"image"` + ImagePullPolicy *string `pulumi:"imagePullPolicy"` + Name *string `pulumi:"name"` + Resources *JobDefinitionEksContainerResourceRequirements `pulumi:"resources"` + SecurityContext *JobDefinitionEksContainerSecurityContext `pulumi:"securityContext"` + VolumeMounts []JobDefinitionEksContainerVolumeMount `pulumi:"volumeMounts"` } -func (JobDefinitionEksPropertiesArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksProperties)(nil)).Elem() +// JobDefinitionEksContainerInput is an input type that accepts JobDefinitionEksContainerArgs and JobDefinitionEksContainerOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerInput` via: +// +// JobDefinitionEksContainerArgs{...} +type JobDefinitionEksContainerInput interface { + pulumi.Input + + ToJobDefinitionEksContainerOutput() JobDefinitionEksContainerOutput + ToJobDefinitionEksContainerOutputWithContext(context.Context) JobDefinitionEksContainerOutput } -func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput { - return i.ToJobDefinitionEksPropertiesOutputWithContext(context.Background()) +type JobDefinitionEksContainerArgs struct { + Args pulumi.StringArrayInput `pulumi:"args"` + Command pulumi.StringArrayInput `pulumi:"command"` + Env JobDefinitionEksContainerEnvironmentVariableArrayInput `pulumi:"env"` + Image pulumi.StringInput `pulumi:"image"` + ImagePullPolicy pulumi.StringPtrInput `pulumi:"imagePullPolicy"` + Name pulumi.StringPtrInput `pulumi:"name"` + Resources JobDefinitionEksContainerResourceRequirementsPtrInput `pulumi:"resources"` + SecurityContext JobDefinitionEksContainerSecurityContextPtrInput `pulumi:"securityContext"` + VolumeMounts JobDefinitionEksContainerVolumeMountArrayInput `pulumi:"volumeMounts"` } -func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesOutput) +func (JobDefinitionEksContainerArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainer)(nil)).Elem() } -func (i JobDefinitionEksPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksProperties] { - return pulumix.Output[JobDefinitionEksProperties]{ - OutputState: i.ToJobDefinitionEksPropertiesOutputWithContext(ctx).OutputState, - } +func (i JobDefinitionEksContainerArgs) ToJobDefinitionEksContainerOutput() JobDefinitionEksContainerOutput { + return i.ToJobDefinitionEksContainerOutputWithContext(context.Background()) } -func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { - return i.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) +func (i JobDefinitionEksContainerArgs) ToJobDefinitionEksContainerOutputWithContext(ctx context.Context) JobDefinitionEksContainerOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerOutput) } -func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesOutput).ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx) +func (i JobDefinitionEksContainerArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainer] { + return pulumix.Output[JobDefinitionEksContainer]{ + OutputState: i.ToJobDefinitionEksContainerOutputWithContext(ctx).OutputState, + } } -// JobDefinitionEksPropertiesPtrInput is an input type that accepts JobDefinitionEksPropertiesArgs, JobDefinitionEksPropertiesPtr and JobDefinitionEksPropertiesPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEksPropertiesPtrInput` via: -// -// JobDefinitionEksPropertiesArgs{...} +// JobDefinitionEksContainerArrayInput is an input type that accepts JobDefinitionEksContainerArray and JobDefinitionEksContainerArrayOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerArrayInput` via: // -// or: -// -// nil -type JobDefinitionEksPropertiesPtrInput interface { +// JobDefinitionEksContainerArray{ JobDefinitionEksContainerArgs{...} } +type JobDefinitionEksContainerArrayInput interface { pulumi.Input - ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput - ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Context) JobDefinitionEksPropertiesPtrOutput + ToJobDefinitionEksContainerArrayOutput() JobDefinitionEksContainerArrayOutput + ToJobDefinitionEksContainerArrayOutputWithContext(context.Context) JobDefinitionEksContainerArrayOutput } -type jobDefinitionEksPropertiesPtrType JobDefinitionEksPropertiesArgs +type JobDefinitionEksContainerArray []JobDefinitionEksContainerInput -func JobDefinitionEksPropertiesPtr(v *JobDefinitionEksPropertiesArgs) JobDefinitionEksPropertiesPtrInput { - return (*jobDefinitionEksPropertiesPtrType)(v) +func (JobDefinitionEksContainerArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksContainer)(nil)).Elem() } -func (*jobDefinitionEksPropertiesPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksProperties)(nil)).Elem() +func (i JobDefinitionEksContainerArray) ToJobDefinitionEksContainerArrayOutput() JobDefinitionEksContainerArrayOutput { + return i.ToJobDefinitionEksContainerArrayOutputWithContext(context.Background()) } -func (i *jobDefinitionEksPropertiesPtrType) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { - return i.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) +func (i JobDefinitionEksContainerArray) ToJobDefinitionEksContainerArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerArrayOutput) } -func (i *jobDefinitionEksPropertiesPtrType) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesPtrOutput) +func (i JobDefinitionEksContainerArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainer] { + return pulumix.Output[[]JobDefinitionEksContainer]{ + OutputState: i.ToJobDefinitionEksContainerArrayOutputWithContext(ctx).OutputState, + } } -func (i *jobDefinitionEksPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksProperties] { - return pulumix.Output[*JobDefinitionEksProperties]{ - OutputState: i.ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx).OutputState, +type JobDefinitionEksContainerOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainer)(nil)).Elem() +} + +func (o JobDefinitionEksContainerOutput) ToJobDefinitionEksContainerOutput() JobDefinitionEksContainerOutput { + return o +} + +func (o JobDefinitionEksContainerOutput) ToJobDefinitionEksContainerOutputWithContext(ctx context.Context) JobDefinitionEksContainerOutput { + return o +} + +func (o JobDefinitionEksContainerOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainer] { + return pulumix.Output[JobDefinitionEksContainer]{ + OutputState: o.OutputState, } } -type JobDefinitionEksPropertiesOutput struct{ *pulumi.OutputState } +func (o JobDefinitionEksContainerOutput) Args() pulumi.StringArrayOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) []string { return v.Args }).(pulumi.StringArrayOutput) +} -func (JobDefinitionEksPropertiesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksProperties)(nil)).Elem() +func (o JobDefinitionEksContainerOutput) Command() pulumi.StringArrayOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) []string { return v.Command }).(pulumi.StringArrayOutput) } -func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput { +func (o JobDefinitionEksContainerOutput) Env() JobDefinitionEksContainerEnvironmentVariableArrayOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) []JobDefinitionEksContainerEnvironmentVariable { return v.Env }).(JobDefinitionEksContainerEnvironmentVariableArrayOutput) +} + +func (o JobDefinitionEksContainerOutput) Image() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) string { return v.Image }).(pulumi.StringOutput) +} + +func (o JobDefinitionEksContainerOutput) ImagePullPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) *string { return v.ImagePullPolicy }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionEksContainerOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionEksContainerOutput) Resources() JobDefinitionEksContainerResourceRequirementsPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) *JobDefinitionEksContainerResourceRequirements { return v.Resources }).(JobDefinitionEksContainerResourceRequirementsPtrOutput) +} + +func (o JobDefinitionEksContainerOutput) SecurityContext() JobDefinitionEksContainerSecurityContextPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) *JobDefinitionEksContainerSecurityContext { return v.SecurityContext }).(JobDefinitionEksContainerSecurityContextPtrOutput) +} + +func (o JobDefinitionEksContainerOutput) VolumeMounts() JobDefinitionEksContainerVolumeMountArrayOutput { + return o.ApplyT(func(v JobDefinitionEksContainer) []JobDefinitionEksContainerVolumeMount { return v.VolumeMounts }).(JobDefinitionEksContainerVolumeMountArrayOutput) +} + +type JobDefinitionEksContainerArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksContainer)(nil)).Elem() +} + +func (o JobDefinitionEksContainerArrayOutput) ToJobDefinitionEksContainerArrayOutput() JobDefinitionEksContainerArrayOutput { return o } -func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesOutput { +func (o JobDefinitionEksContainerArrayOutput) ToJobDefinitionEksContainerArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerArrayOutput { return o } -func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { - return o.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) +func (o JobDefinitionEksContainerArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainer] { + return pulumix.Output[[]JobDefinitionEksContainer]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksProperties) *JobDefinitionEksProperties { - return &v - }).(JobDefinitionEksPropertiesPtrOutput) +func (o JobDefinitionEksContainerArrayOutput) Index(i pulumi.IntInput) JobDefinitionEksContainerOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEksContainer { + return vs[0].([]JobDefinitionEksContainer)[vs[1].(int)] + }).(JobDefinitionEksContainerOutput) } -func (o JobDefinitionEksPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksProperties] { - return pulumix.Output[JobDefinitionEksProperties]{ - OutputState: o.OutputState, +type JobDefinitionEksContainerEnvironmentVariable struct { + Name string `pulumi:"name"` + Value *string `pulumi:"value"` +} + +// JobDefinitionEksContainerEnvironmentVariableInput is an input type that accepts JobDefinitionEksContainerEnvironmentVariableArgs and JobDefinitionEksContainerEnvironmentVariableOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerEnvironmentVariableInput` via: +// +// JobDefinitionEksContainerEnvironmentVariableArgs{...} +type JobDefinitionEksContainerEnvironmentVariableInput interface { + pulumi.Input + + ToJobDefinitionEksContainerEnvironmentVariableOutput() JobDefinitionEksContainerEnvironmentVariableOutput + ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(context.Context) JobDefinitionEksContainerEnvironmentVariableOutput +} + +type JobDefinitionEksContainerEnvironmentVariableArgs struct { + Name pulumi.StringInput `pulumi:"name"` + Value pulumi.StringPtrInput `pulumi:"value"` +} + +func (JobDefinitionEksContainerEnvironmentVariableArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainerEnvironmentVariable)(nil)).Elem() +} + +func (i JobDefinitionEksContainerEnvironmentVariableArgs) ToJobDefinitionEksContainerEnvironmentVariableOutput() JobDefinitionEksContainerEnvironmentVariableOutput { + return i.ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksContainerEnvironmentVariableArgs) ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(ctx context.Context) JobDefinitionEksContainerEnvironmentVariableOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerEnvironmentVariableOutput) +} + +func (i JobDefinitionEksContainerEnvironmentVariableArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerEnvironmentVariable] { + return pulumix.Output[JobDefinitionEksContainerEnvironmentVariable]{ + OutputState: i.ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(ctx).OutputState, } } -func (o JobDefinitionEksPropertiesOutput) PodProperties() JobDefinitionPodPropertiesPtrOutput { - return o.ApplyT(func(v JobDefinitionEksProperties) *JobDefinitionPodProperties { return v.PodProperties }).(JobDefinitionPodPropertiesPtrOutput) +// JobDefinitionEksContainerEnvironmentVariableArrayInput is an input type that accepts JobDefinitionEksContainerEnvironmentVariableArray and JobDefinitionEksContainerEnvironmentVariableArrayOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerEnvironmentVariableArrayInput` via: +// +// JobDefinitionEksContainerEnvironmentVariableArray{ JobDefinitionEksContainerEnvironmentVariableArgs{...} } +type JobDefinitionEksContainerEnvironmentVariableArrayInput interface { + pulumi.Input + + ToJobDefinitionEksContainerEnvironmentVariableArrayOutput() JobDefinitionEksContainerEnvironmentVariableArrayOutput + ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(context.Context) JobDefinitionEksContainerEnvironmentVariableArrayOutput } -type JobDefinitionEksPropertiesPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionEksContainerEnvironmentVariableArray []JobDefinitionEksContainerEnvironmentVariableInput -func (JobDefinitionEksPropertiesPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksProperties)(nil)).Elem() +func (JobDefinitionEksContainerEnvironmentVariableArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksContainerEnvironmentVariable)(nil)).Elem() } -func (o JobDefinitionEksPropertiesPtrOutput) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { +func (i JobDefinitionEksContainerEnvironmentVariableArray) ToJobDefinitionEksContainerEnvironmentVariableArrayOutput() JobDefinitionEksContainerEnvironmentVariableArrayOutput { + return i.ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksContainerEnvironmentVariableArray) ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerEnvironmentVariableArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerEnvironmentVariableArrayOutput) +} + +func (i JobDefinitionEksContainerEnvironmentVariableArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainerEnvironmentVariable] { + return pulumix.Output[[]JobDefinitionEksContainerEnvironmentVariable]{ + OutputState: i.ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(ctx).OutputState, + } +} + +type JobDefinitionEksContainerEnvironmentVariableOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerEnvironmentVariableOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainerEnvironmentVariable)(nil)).Elem() +} + +func (o JobDefinitionEksContainerEnvironmentVariableOutput) ToJobDefinitionEksContainerEnvironmentVariableOutput() JobDefinitionEksContainerEnvironmentVariableOutput { return o } -func (o JobDefinitionEksPropertiesPtrOutput) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { +func (o JobDefinitionEksContainerEnvironmentVariableOutput) ToJobDefinitionEksContainerEnvironmentVariableOutputWithContext(ctx context.Context) JobDefinitionEksContainerEnvironmentVariableOutput { return o } -func (o JobDefinitionEksPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksProperties] { - return pulumix.Output[*JobDefinitionEksProperties]{ +func (o JobDefinitionEksContainerEnvironmentVariableOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerEnvironmentVariable] { + return pulumix.Output[JobDefinitionEksContainerEnvironmentVariable]{ OutputState: o.OutputState, } } -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 JobDefinitionEksContainerEnvironmentVariableOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEksContainerEnvironmentVariable) string { return v.Name }).(pulumi.StringOutput) } -func (o JobDefinitionEksPropertiesPtrOutput) PodProperties() JobDefinitionPodPropertiesPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksProperties) *JobDefinitionPodProperties { - if v == nil { - return nil - } - return v.PodProperties - }).(JobDefinitionPodPropertiesPtrOutput) +func (o JobDefinitionEksContainerEnvironmentVariableOutput) Value() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerEnvironmentVariable) *string { return v.Value }).(pulumi.StringPtrOutput) } -type JobDefinitionEksSecret struct { - Optional *bool `pulumi:"optional"` - SecretName string `pulumi:"secretName"` +type JobDefinitionEksContainerEnvironmentVariableArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerEnvironmentVariableArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksContainerEnvironmentVariable)(nil)).Elem() } -// JobDefinitionEksSecretInput is an input type that accepts JobDefinitionEksSecretArgs and JobDefinitionEksSecretOutput values. -// You can construct a concrete instance of `JobDefinitionEksSecretInput` via: +func (o JobDefinitionEksContainerEnvironmentVariableArrayOutput) ToJobDefinitionEksContainerEnvironmentVariableArrayOutput() JobDefinitionEksContainerEnvironmentVariableArrayOutput { + return o +} + +func (o JobDefinitionEksContainerEnvironmentVariableArrayOutput) ToJobDefinitionEksContainerEnvironmentVariableArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerEnvironmentVariableArrayOutput { + return o +} + +func (o JobDefinitionEksContainerEnvironmentVariableArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainerEnvironmentVariable] { + return pulumix.Output[[]JobDefinitionEksContainerEnvironmentVariable]{ + OutputState: o.OutputState, + } +} + +func (o JobDefinitionEksContainerEnvironmentVariableArrayOutput) Index(i pulumi.IntInput) JobDefinitionEksContainerEnvironmentVariableOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEksContainerEnvironmentVariable { + return vs[0].([]JobDefinitionEksContainerEnvironmentVariable)[vs[1].(int)] + }).(JobDefinitionEksContainerEnvironmentVariableOutput) +} + +type JobDefinitionEksContainerResourceRequirements struct { + Limits interface{} `pulumi:"limits"` + Requests interface{} `pulumi:"requests"` +} + +// JobDefinitionEksContainerResourceRequirementsInput is an input type that accepts JobDefinitionEksContainerResourceRequirementsArgs and JobDefinitionEksContainerResourceRequirementsOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerResourceRequirementsInput` via: // -// JobDefinitionEksSecretArgs{...} -type JobDefinitionEksSecretInput interface { +// JobDefinitionEksContainerResourceRequirementsArgs{...} +type JobDefinitionEksContainerResourceRequirementsInput interface { pulumi.Input - ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput - ToJobDefinitionEksSecretOutputWithContext(context.Context) JobDefinitionEksSecretOutput + ToJobDefinitionEksContainerResourceRequirementsOutput() JobDefinitionEksContainerResourceRequirementsOutput + ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(context.Context) JobDefinitionEksContainerResourceRequirementsOutput +} + +type JobDefinitionEksContainerResourceRequirementsArgs struct { + Limits pulumi.Input `pulumi:"limits"` + Requests pulumi.Input `pulumi:"requests"` +} + +func (JobDefinitionEksContainerResourceRequirementsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainerResourceRequirements)(nil)).Elem() +} + +func (i JobDefinitionEksContainerResourceRequirementsArgs) ToJobDefinitionEksContainerResourceRequirementsOutput() JobDefinitionEksContainerResourceRequirementsOutput { + return i.ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksContainerResourceRequirementsArgs) ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerResourceRequirementsOutput) +} + +func (i JobDefinitionEksContainerResourceRequirementsArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerResourceRequirements] { + return pulumix.Output[JobDefinitionEksContainerResourceRequirements]{ + OutputState: i.ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(ctx).OutputState, + } +} + +func (i JobDefinitionEksContainerResourceRequirementsArgs) ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput { + return i.ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksContainerResourceRequirementsArgs) ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerResourceRequirementsOutput).ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx) +} + +// JobDefinitionEksContainerResourceRequirementsPtrInput is an input type that accepts JobDefinitionEksContainerResourceRequirementsArgs, JobDefinitionEksContainerResourceRequirementsPtr and JobDefinitionEksContainerResourceRequirementsPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerResourceRequirementsPtrInput` via: +// +// JobDefinitionEksContainerResourceRequirementsArgs{...} +// +// or: +// +// nil +type JobDefinitionEksContainerResourceRequirementsPtrInput interface { + pulumi.Input + + ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput + ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput +} + +type jobDefinitionEksContainerResourceRequirementsPtrType JobDefinitionEksContainerResourceRequirementsArgs + +func JobDefinitionEksContainerResourceRequirementsPtr(v *JobDefinitionEksContainerResourceRequirementsArgs) JobDefinitionEksContainerResourceRequirementsPtrInput { + return (*jobDefinitionEksContainerResourceRequirementsPtrType)(v) +} + +func (*jobDefinitionEksContainerResourceRequirementsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksContainerResourceRequirements)(nil)).Elem() +} + +func (i *jobDefinitionEksContainerResourceRequirementsPtrType) ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput { + return i.ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionEksContainerResourceRequirementsPtrType) ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerResourceRequirementsPtrOutput) +} + +func (i *jobDefinitionEksContainerResourceRequirementsPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksContainerResourceRequirements] { + return pulumix.Output[*JobDefinitionEksContainerResourceRequirements]{ + OutputState: i.ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx).OutputState, + } +} + +type JobDefinitionEksContainerResourceRequirementsOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerResourceRequirementsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainerResourceRequirements)(nil)).Elem() +} + +func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksContainerResourceRequirementsOutput() JobDefinitionEksContainerResourceRequirementsOutput { + return o +} + +func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksContainerResourceRequirementsOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsOutput { + return o +} + +func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput { + return o.ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionEksContainerResourceRequirementsOutput) ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksContainerResourceRequirements) *JobDefinitionEksContainerResourceRequirements { + return &v + }).(JobDefinitionEksContainerResourceRequirementsPtrOutput) +} + +func (o JobDefinitionEksContainerResourceRequirementsOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerResourceRequirements] { + return pulumix.Output[JobDefinitionEksContainerResourceRequirements]{ + OutputState: o.OutputState, + } +} + +func (o JobDefinitionEksContainerResourceRequirementsOutput) Limits() pulumi.AnyOutput { + return o.ApplyT(func(v JobDefinitionEksContainerResourceRequirements) interface{} { return v.Limits }).(pulumi.AnyOutput) +} + +func (o JobDefinitionEksContainerResourceRequirementsOutput) Requests() pulumi.AnyOutput { + return o.ApplyT(func(v JobDefinitionEksContainerResourceRequirements) interface{} { return v.Requests }).(pulumi.AnyOutput) +} + +type JobDefinitionEksContainerResourceRequirementsPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerResourceRequirementsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksContainerResourceRequirements)(nil)).Elem() +} + +func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) ToJobDefinitionEksContainerResourceRequirementsPtrOutput() JobDefinitionEksContainerResourceRequirementsPtrOutput { + return o +} + +func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) ToJobDefinitionEksContainerResourceRequirementsPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerResourceRequirementsPtrOutput { + return o +} + +func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksContainerResourceRequirements] { + return pulumix.Output[*JobDefinitionEksContainerResourceRequirements]{ + OutputState: o.OutputState, + } +} + +func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Elem() JobDefinitionEksContainerResourceRequirementsOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) JobDefinitionEksContainerResourceRequirements { + if v != nil { + return *v + } + var ret JobDefinitionEksContainerResourceRequirements + return ret + }).(JobDefinitionEksContainerResourceRequirementsOutput) +} + +func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Limits() pulumi.AnyOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) interface{} { + if v == nil { + return nil + } + return v.Limits + }).(pulumi.AnyOutput) +} + +func (o JobDefinitionEksContainerResourceRequirementsPtrOutput) Requests() pulumi.AnyOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerResourceRequirements) interface{} { + if v == nil { + return nil + } + return v.Requests + }).(pulumi.AnyOutput) +} + +type JobDefinitionEksContainerSecurityContext struct { + Privileged *bool `pulumi:"privileged"` + ReadOnlyRootFilesystem *bool `pulumi:"readOnlyRootFilesystem"` + RunAsGroup *int `pulumi:"runAsGroup"` + RunAsNonRoot *bool `pulumi:"runAsNonRoot"` + RunAsUser *int `pulumi:"runAsUser"` +} + +// JobDefinitionEksContainerSecurityContextInput is an input type that accepts JobDefinitionEksContainerSecurityContextArgs and JobDefinitionEksContainerSecurityContextOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerSecurityContextInput` via: +// +// JobDefinitionEksContainerSecurityContextArgs{...} +type JobDefinitionEksContainerSecurityContextInput interface { + pulumi.Input + + ToJobDefinitionEksContainerSecurityContextOutput() JobDefinitionEksContainerSecurityContextOutput + ToJobDefinitionEksContainerSecurityContextOutputWithContext(context.Context) JobDefinitionEksContainerSecurityContextOutput +} + +type JobDefinitionEksContainerSecurityContextArgs struct { + Privileged pulumi.BoolPtrInput `pulumi:"privileged"` + ReadOnlyRootFilesystem pulumi.BoolPtrInput `pulumi:"readOnlyRootFilesystem"` + RunAsGroup pulumi.IntPtrInput `pulumi:"runAsGroup"` + RunAsNonRoot pulumi.BoolPtrInput `pulumi:"runAsNonRoot"` + RunAsUser pulumi.IntPtrInput `pulumi:"runAsUser"` +} + +func (JobDefinitionEksContainerSecurityContextArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainerSecurityContext)(nil)).Elem() +} + +func (i JobDefinitionEksContainerSecurityContextArgs) ToJobDefinitionEksContainerSecurityContextOutput() JobDefinitionEksContainerSecurityContextOutput { + return i.ToJobDefinitionEksContainerSecurityContextOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksContainerSecurityContextArgs) ToJobDefinitionEksContainerSecurityContextOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerSecurityContextOutput) +} + +func (i JobDefinitionEksContainerSecurityContextArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerSecurityContext] { + return pulumix.Output[JobDefinitionEksContainerSecurityContext]{ + OutputState: i.ToJobDefinitionEksContainerSecurityContextOutputWithContext(ctx).OutputState, + } +} + +func (i JobDefinitionEksContainerSecurityContextArgs) ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput { + return i.ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksContainerSecurityContextArgs) ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerSecurityContextOutput).ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx) +} + +// JobDefinitionEksContainerSecurityContextPtrInput is an input type that accepts JobDefinitionEksContainerSecurityContextArgs, JobDefinitionEksContainerSecurityContextPtr and JobDefinitionEksContainerSecurityContextPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerSecurityContextPtrInput` via: +// +// JobDefinitionEksContainerSecurityContextArgs{...} +// +// or: +// +// nil +type JobDefinitionEksContainerSecurityContextPtrInput interface { + pulumi.Input + + ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput + ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(context.Context) JobDefinitionEksContainerSecurityContextPtrOutput +} + +type jobDefinitionEksContainerSecurityContextPtrType JobDefinitionEksContainerSecurityContextArgs + +func JobDefinitionEksContainerSecurityContextPtr(v *JobDefinitionEksContainerSecurityContextArgs) JobDefinitionEksContainerSecurityContextPtrInput { + return (*jobDefinitionEksContainerSecurityContextPtrType)(v) +} + +func (*jobDefinitionEksContainerSecurityContextPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksContainerSecurityContext)(nil)).Elem() +} + +func (i *jobDefinitionEksContainerSecurityContextPtrType) ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput { + return i.ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(context.Background()) +} + +func (i *jobDefinitionEksContainerSecurityContextPtrType) ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerSecurityContextPtrOutput) +} + +func (i *jobDefinitionEksContainerSecurityContextPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksContainerSecurityContext] { + return pulumix.Output[*JobDefinitionEksContainerSecurityContext]{ + OutputState: i.ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx).OutputState, + } +} + +type JobDefinitionEksContainerSecurityContextOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerSecurityContextOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainerSecurityContext)(nil)).Elem() +} + +func (o JobDefinitionEksContainerSecurityContextOutput) ToJobDefinitionEksContainerSecurityContextOutput() JobDefinitionEksContainerSecurityContextOutput { + return o +} + +func (o JobDefinitionEksContainerSecurityContextOutput) ToJobDefinitionEksContainerSecurityContextOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextOutput { + return o +} + +func (o JobDefinitionEksContainerSecurityContextOutput) ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput { + return o.ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(context.Background()) +} + +func (o JobDefinitionEksContainerSecurityContextOutput) ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksContainerSecurityContext) *JobDefinitionEksContainerSecurityContext { + return &v + }).(JobDefinitionEksContainerSecurityContextPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerSecurityContext] { + return pulumix.Output[JobDefinitionEksContainerSecurityContext]{ + OutputState: o.OutputState, + } +} + +func (o JobDefinitionEksContainerSecurityContextOutput) Privileged() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *bool { return v.Privileged }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextOutput) ReadOnlyRootFilesystem() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *bool { return v.ReadOnlyRootFilesystem }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextOutput) RunAsGroup() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *int { return v.RunAsGroup }).(pulumi.IntPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextOutput) RunAsNonRoot() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *bool { return v.RunAsNonRoot }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextOutput) RunAsUser() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerSecurityContext) *int { return v.RunAsUser }).(pulumi.IntPtrOutput) +} + +type JobDefinitionEksContainerSecurityContextPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerSecurityContextPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksContainerSecurityContext)(nil)).Elem() +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) ToJobDefinitionEksContainerSecurityContextPtrOutput() JobDefinitionEksContainerSecurityContextPtrOutput { + return o +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) ToJobDefinitionEksContainerSecurityContextPtrOutputWithContext(ctx context.Context) JobDefinitionEksContainerSecurityContextPtrOutput { + return o +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksContainerSecurityContext] { + return pulumix.Output[*JobDefinitionEksContainerSecurityContext]{ + OutputState: o.OutputState, + } +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) Elem() JobDefinitionEksContainerSecurityContextOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) JobDefinitionEksContainerSecurityContext { + if v != nil { + return *v + } + var ret JobDefinitionEksContainerSecurityContext + return ret + }).(JobDefinitionEksContainerSecurityContextOutput) +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) Privileged() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *bool { + if v == nil { + return nil + } + return v.Privileged + }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) ReadOnlyRootFilesystem() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *bool { + if v == nil { + return nil + } + return v.ReadOnlyRootFilesystem + }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) RunAsGroup() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *int { + if v == nil { + return nil + } + return v.RunAsGroup + }).(pulumi.IntPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) RunAsNonRoot() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *bool { + if v == nil { + return nil + } + return v.RunAsNonRoot + }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksContainerSecurityContextPtrOutput) RunAsUser() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksContainerSecurityContext) *int { + if v == nil { + return nil + } + return v.RunAsUser + }).(pulumi.IntPtrOutput) +} + +type JobDefinitionEksContainerVolumeMount struct { + MountPath *string `pulumi:"mountPath"` + Name *string `pulumi:"name"` + ReadOnly *bool `pulumi:"readOnly"` +} + +// JobDefinitionEksContainerVolumeMountInput is an input type that accepts JobDefinitionEksContainerVolumeMountArgs and JobDefinitionEksContainerVolumeMountOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerVolumeMountInput` via: +// +// JobDefinitionEksContainerVolumeMountArgs{...} +type JobDefinitionEksContainerVolumeMountInput interface { + pulumi.Input + + ToJobDefinitionEksContainerVolumeMountOutput() JobDefinitionEksContainerVolumeMountOutput + ToJobDefinitionEksContainerVolumeMountOutputWithContext(context.Context) JobDefinitionEksContainerVolumeMountOutput +} + +type JobDefinitionEksContainerVolumeMountArgs struct { + MountPath pulumi.StringPtrInput `pulumi:"mountPath"` + Name pulumi.StringPtrInput `pulumi:"name"` + ReadOnly pulumi.BoolPtrInput `pulumi:"readOnly"` +} + +func (JobDefinitionEksContainerVolumeMountArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainerVolumeMount)(nil)).Elem() +} + +func (i JobDefinitionEksContainerVolumeMountArgs) ToJobDefinitionEksContainerVolumeMountOutput() JobDefinitionEksContainerVolumeMountOutput { + return i.ToJobDefinitionEksContainerVolumeMountOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksContainerVolumeMountArgs) ToJobDefinitionEksContainerVolumeMountOutputWithContext(ctx context.Context) JobDefinitionEksContainerVolumeMountOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerVolumeMountOutput) +} + +func (i JobDefinitionEksContainerVolumeMountArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerVolumeMount] { + return pulumix.Output[JobDefinitionEksContainerVolumeMount]{ + OutputState: i.ToJobDefinitionEksContainerVolumeMountOutputWithContext(ctx).OutputState, + } +} + +// JobDefinitionEksContainerVolumeMountArrayInput is an input type that accepts JobDefinitionEksContainerVolumeMountArray and JobDefinitionEksContainerVolumeMountArrayOutput values. +// You can construct a concrete instance of `JobDefinitionEksContainerVolumeMountArrayInput` via: +// +// JobDefinitionEksContainerVolumeMountArray{ JobDefinitionEksContainerVolumeMountArgs{...} } +type JobDefinitionEksContainerVolumeMountArrayInput interface { + pulumi.Input + + ToJobDefinitionEksContainerVolumeMountArrayOutput() JobDefinitionEksContainerVolumeMountArrayOutput + ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(context.Context) JobDefinitionEksContainerVolumeMountArrayOutput +} + +type JobDefinitionEksContainerVolumeMountArray []JobDefinitionEksContainerVolumeMountInput + +func (JobDefinitionEksContainerVolumeMountArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksContainerVolumeMount)(nil)).Elem() +} + +func (i JobDefinitionEksContainerVolumeMountArray) ToJobDefinitionEksContainerVolumeMountArrayOutput() JobDefinitionEksContainerVolumeMountArrayOutput { + return i.ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksContainerVolumeMountArray) ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerVolumeMountArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksContainerVolumeMountArrayOutput) +} + +func (i JobDefinitionEksContainerVolumeMountArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainerVolumeMount] { + return pulumix.Output[[]JobDefinitionEksContainerVolumeMount]{ + OutputState: i.ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(ctx).OutputState, + } +} + +type JobDefinitionEksContainerVolumeMountOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerVolumeMountOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksContainerVolumeMount)(nil)).Elem() +} + +func (o JobDefinitionEksContainerVolumeMountOutput) ToJobDefinitionEksContainerVolumeMountOutput() JobDefinitionEksContainerVolumeMountOutput { + return o +} + +func (o JobDefinitionEksContainerVolumeMountOutput) ToJobDefinitionEksContainerVolumeMountOutputWithContext(ctx context.Context) JobDefinitionEksContainerVolumeMountOutput { + return o +} + +func (o JobDefinitionEksContainerVolumeMountOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksContainerVolumeMount] { + return pulumix.Output[JobDefinitionEksContainerVolumeMount]{ + OutputState: o.OutputState, + } +} + +func (o JobDefinitionEksContainerVolumeMountOutput) MountPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerVolumeMount) *string { return v.MountPath }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionEksContainerVolumeMountOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerVolumeMount) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionEksContainerVolumeMountOutput) ReadOnly() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksContainerVolumeMount) *bool { return v.ReadOnly }).(pulumi.BoolPtrOutput) +} + +type JobDefinitionEksContainerVolumeMountArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksContainerVolumeMountArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksContainerVolumeMount)(nil)).Elem() +} + +func (o JobDefinitionEksContainerVolumeMountArrayOutput) ToJobDefinitionEksContainerVolumeMountArrayOutput() JobDefinitionEksContainerVolumeMountArrayOutput { + return o +} + +func (o JobDefinitionEksContainerVolumeMountArrayOutput) ToJobDefinitionEksContainerVolumeMountArrayOutputWithContext(ctx context.Context) JobDefinitionEksContainerVolumeMountArrayOutput { + return o +} + +func (o JobDefinitionEksContainerVolumeMountArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksContainerVolumeMount] { + return pulumix.Output[[]JobDefinitionEksContainerVolumeMount]{ + OutputState: o.OutputState, + } +} + +func (o JobDefinitionEksContainerVolumeMountArrayOutput) Index(i pulumi.IntInput) JobDefinitionEksContainerVolumeMountOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) JobDefinitionEksContainerVolumeMount { + return vs[0].([]JobDefinitionEksContainerVolumeMount)[vs[1].(int)] + }).(JobDefinitionEksContainerVolumeMountOutput) +} + +type JobDefinitionEksEmptyDir struct { + Medium *string `pulumi:"medium"` + SizeLimit *string `pulumi:"sizeLimit"` +} + +// JobDefinitionEksEmptyDirInput is an input type that accepts JobDefinitionEksEmptyDirArgs and JobDefinitionEksEmptyDirOutput values. +// You can construct a concrete instance of `JobDefinitionEksEmptyDirInput` via: +// +// JobDefinitionEksEmptyDirArgs{...} +type JobDefinitionEksEmptyDirInput interface { + pulumi.Input + + ToJobDefinitionEksEmptyDirOutput() JobDefinitionEksEmptyDirOutput + ToJobDefinitionEksEmptyDirOutputWithContext(context.Context) JobDefinitionEksEmptyDirOutput } -type JobDefinitionEksSecretArgs struct { - Optional pulumi.BoolPtrInput `pulumi:"optional"` - SecretName pulumi.StringInput `pulumi:"secretName"` +type JobDefinitionEksEmptyDirArgs struct { + Medium pulumi.StringPtrInput `pulumi:"medium"` + SizeLimit pulumi.StringPtrInput `pulumi:"sizeLimit"` } -func (JobDefinitionEksSecretArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksSecret)(nil)).Elem() +func (JobDefinitionEksEmptyDirArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksEmptyDir)(nil)).Elem() } -func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput { - return i.ToJobDefinitionEksSecretOutputWithContext(context.Background()) +func (i JobDefinitionEksEmptyDirArgs) ToJobDefinitionEksEmptyDirOutput() JobDefinitionEksEmptyDirOutput { + return i.ToJobDefinitionEksEmptyDirOutputWithContext(context.Background()) } -func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretOutputWithContext(ctx context.Context) JobDefinitionEksSecretOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretOutput) +func (i JobDefinitionEksEmptyDirArgs) ToJobDefinitionEksEmptyDirOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksEmptyDirOutput) } -func (i JobDefinitionEksSecretArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksSecret] { - return pulumix.Output[JobDefinitionEksSecret]{ - OutputState: i.ToJobDefinitionEksSecretOutputWithContext(ctx).OutputState, +func (i JobDefinitionEksEmptyDirArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksEmptyDir] { + return pulumix.Output[JobDefinitionEksEmptyDir]{ + OutputState: i.ToJobDefinitionEksEmptyDirOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { - return i.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) +func (i JobDefinitionEksEmptyDirArgs) ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput { + return i.ToJobDefinitionEksEmptyDirPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretOutput).ToJobDefinitionEksSecretPtrOutputWithContext(ctx) +func (i JobDefinitionEksEmptyDirArgs) ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksEmptyDirOutput).ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx) } -// JobDefinitionEksSecretPtrInput is an input type that accepts JobDefinitionEksSecretArgs, JobDefinitionEksSecretPtr and JobDefinitionEksSecretPtrOutput values. -// You can construct a concrete instance of `JobDefinitionEksSecretPtrInput` via: +// JobDefinitionEksEmptyDirPtrInput is an input type that accepts JobDefinitionEksEmptyDirArgs, JobDefinitionEksEmptyDirPtr and JobDefinitionEksEmptyDirPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksEmptyDirPtrInput` via: // -// JobDefinitionEksSecretArgs{...} +// JobDefinitionEksEmptyDirArgs{...} // // or: // // nil -type JobDefinitionEksSecretPtrInput interface { +type JobDefinitionEksEmptyDirPtrInput interface { pulumi.Input - ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput - ToJobDefinitionEksSecretPtrOutputWithContext(context.Context) JobDefinitionEksSecretPtrOutput + ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput + ToJobDefinitionEksEmptyDirPtrOutputWithContext(context.Context) JobDefinitionEksEmptyDirPtrOutput } -type jobDefinitionEksSecretPtrType JobDefinitionEksSecretArgs +type jobDefinitionEksEmptyDirPtrType JobDefinitionEksEmptyDirArgs -func JobDefinitionEksSecretPtr(v *JobDefinitionEksSecretArgs) JobDefinitionEksSecretPtrInput { - return (*jobDefinitionEksSecretPtrType)(v) +func JobDefinitionEksEmptyDirPtr(v *JobDefinitionEksEmptyDirArgs) JobDefinitionEksEmptyDirPtrInput { + return (*jobDefinitionEksEmptyDirPtrType)(v) } -func (*jobDefinitionEksSecretPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksSecret)(nil)).Elem() +func (*jobDefinitionEksEmptyDirPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksEmptyDir)(nil)).Elem() } -func (i *jobDefinitionEksSecretPtrType) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { - return i.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) +func (i *jobDefinitionEksEmptyDirPtrType) ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput { + return i.ToJobDefinitionEksEmptyDirPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEksSecretPtrType) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretPtrOutput) +func (i *jobDefinitionEksEmptyDirPtrType) ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksEmptyDirPtrOutput) } -func (i *jobDefinitionEksSecretPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksSecret] { - return pulumix.Output[*JobDefinitionEksSecret]{ - OutputState: i.ToJobDefinitionEksSecretPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionEksEmptyDirPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksEmptyDir] { + return pulumix.Output[*JobDefinitionEksEmptyDir]{ + OutputState: i.ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksSecretOutput struct{ *pulumi.OutputState } +type JobDefinitionEksEmptyDirOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksSecretOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksSecret)(nil)).Elem() +func (JobDefinitionEksEmptyDirOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksEmptyDir)(nil)).Elem() } -func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput { +func (o JobDefinitionEksEmptyDirOutput) ToJobDefinitionEksEmptyDirOutput() JobDefinitionEksEmptyDirOutput { return o } -func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretOutputWithContext(ctx context.Context) JobDefinitionEksSecretOutput { +func (o JobDefinitionEksEmptyDirOutput) ToJobDefinitionEksEmptyDirOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirOutput { return o } -func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { - return o.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) +func (o JobDefinitionEksEmptyDirOutput) ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput { + return o.ToJobDefinitionEksEmptyDirPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksSecret) *JobDefinitionEksSecret { +func (o JobDefinitionEksEmptyDirOutput) ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksEmptyDir) *JobDefinitionEksEmptyDir { return &v - }).(JobDefinitionEksSecretPtrOutput) + }).(JobDefinitionEksEmptyDirPtrOutput) } -func (o JobDefinitionEksSecretOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksSecret] { - return pulumix.Output[JobDefinitionEksSecret]{ +func (o JobDefinitionEksEmptyDirOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksEmptyDir] { + return pulumix.Output[JobDefinitionEksEmptyDir]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksSecretOutput) Optional() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionEksSecret) *bool { return v.Optional }).(pulumi.BoolPtrOutput) +func (o JobDefinitionEksEmptyDirOutput) Medium() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksEmptyDir) *string { return v.Medium }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksSecretOutput) SecretName() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEksSecret) string { return v.SecretName }).(pulumi.StringOutput) +func (o JobDefinitionEksEmptyDirOutput) SizeLimit() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksEmptyDir) *string { return v.SizeLimit }).(pulumi.StringPtrOutput) } -type JobDefinitionEksSecretPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionEksEmptyDirPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksSecretPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEksSecret)(nil)).Elem() +func (JobDefinitionEksEmptyDirPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksEmptyDir)(nil)).Elem() } -func (o JobDefinitionEksSecretPtrOutput) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { +func (o JobDefinitionEksEmptyDirPtrOutput) ToJobDefinitionEksEmptyDirPtrOutput() JobDefinitionEksEmptyDirPtrOutput { return o } -func (o JobDefinitionEksSecretPtrOutput) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { +func (o JobDefinitionEksEmptyDirPtrOutput) ToJobDefinitionEksEmptyDirPtrOutputWithContext(ctx context.Context) JobDefinitionEksEmptyDirPtrOutput { return o } -func (o JobDefinitionEksSecretPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksSecret] { - return pulumix.Output[*JobDefinitionEksSecret]{ +func (o JobDefinitionEksEmptyDirPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksEmptyDir] { + return pulumix.Output[*JobDefinitionEksEmptyDir]{ OutputState: o.OutputState, } } -func (o JobDefinitionEksSecretPtrOutput) Elem() JobDefinitionEksSecretOutput { - return o.ApplyT(func(v *JobDefinitionEksSecret) JobDefinitionEksSecret { +func (o JobDefinitionEksEmptyDirPtrOutput) Elem() JobDefinitionEksEmptyDirOutput { + return o.ApplyT(func(v *JobDefinitionEksEmptyDir) JobDefinitionEksEmptyDir { if v != nil { return *v } - var ret JobDefinitionEksSecret + var ret JobDefinitionEksEmptyDir return ret - }).(JobDefinitionEksSecretOutput) + }).(JobDefinitionEksEmptyDirOutput) } -func (o JobDefinitionEksSecretPtrOutput) Optional() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksSecret) *bool { +func (o JobDefinitionEksEmptyDirPtrOutput) Medium() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksEmptyDir) *string { if v == nil { return nil } - return v.Optional - }).(pulumi.BoolPtrOutput) + return v.Medium + }).(pulumi.StringPtrOutput) } -func (o JobDefinitionEksSecretPtrOutput) SecretName() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionEksSecret) *string { +func (o JobDefinitionEksEmptyDirPtrOutput) SizeLimit() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksEmptyDir) *string { if v == nil { return nil } - return &v.SecretName + return v.SizeLimit }).(pulumi.StringPtrOutput) } -type JobDefinitionEksVolume struct { - EmptyDir *JobDefinitionEksEmptyDir `pulumi:"emptyDir"` - HostPath *JobDefinitionEksHostPath `pulumi:"hostPath"` - Name string `pulumi:"name"` - Secret *JobDefinitionEksSecret `pulumi:"secret"` +type JobDefinitionEksHostPath struct { + Path *string `pulumi:"path"` } -// JobDefinitionEksVolumeInput is an input type that accepts JobDefinitionEksVolumeArgs and JobDefinitionEksVolumeOutput values. -// You can construct a concrete instance of `JobDefinitionEksVolumeInput` via: +// JobDefinitionEksHostPathInput is an input type that accepts JobDefinitionEksHostPathArgs and JobDefinitionEksHostPathOutput values. +// You can construct a concrete instance of `JobDefinitionEksHostPathInput` via: // -// JobDefinitionEksVolumeArgs{...} -type JobDefinitionEksVolumeInput interface { +// JobDefinitionEksHostPathArgs{...} +type JobDefinitionEksHostPathInput interface { pulumi.Input - ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput - ToJobDefinitionEksVolumeOutputWithContext(context.Context) JobDefinitionEksVolumeOutput + ToJobDefinitionEksHostPathOutput() JobDefinitionEksHostPathOutput + ToJobDefinitionEksHostPathOutputWithContext(context.Context) JobDefinitionEksHostPathOutput } -type JobDefinitionEksVolumeArgs struct { - EmptyDir JobDefinitionEksEmptyDirPtrInput `pulumi:"emptyDir"` - HostPath JobDefinitionEksHostPathPtrInput `pulumi:"hostPath"` - Name pulumi.StringInput `pulumi:"name"` - Secret JobDefinitionEksSecretPtrInput `pulumi:"secret"` +type JobDefinitionEksHostPathArgs struct { + Path pulumi.StringPtrInput `pulumi:"path"` } -func (JobDefinitionEksVolumeArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksVolume)(nil)).Elem() +func (JobDefinitionEksHostPathArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksHostPath)(nil)).Elem() } -func (i JobDefinitionEksVolumeArgs) ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput { - return i.ToJobDefinitionEksVolumeOutputWithContext(context.Background()) +func (i JobDefinitionEksHostPathArgs) ToJobDefinitionEksHostPathOutput() JobDefinitionEksHostPathOutput { + return i.ToJobDefinitionEksHostPathOutputWithContext(context.Background()) } -func (i JobDefinitionEksVolumeArgs) ToJobDefinitionEksVolumeOutputWithContext(ctx context.Context) JobDefinitionEksVolumeOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksVolumeOutput) +func (i JobDefinitionEksHostPathArgs) ToJobDefinitionEksHostPathOutputWithContext(ctx context.Context) JobDefinitionEksHostPathOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksHostPathOutput) } -func (i JobDefinitionEksVolumeArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksVolume] { - return pulumix.Output[JobDefinitionEksVolume]{ - OutputState: i.ToJobDefinitionEksVolumeOutputWithContext(ctx).OutputState, +func (i JobDefinitionEksHostPathArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksHostPath] { + return pulumix.Output[JobDefinitionEksHostPath]{ + OutputState: i.ToJobDefinitionEksHostPathOutputWithContext(ctx).OutputState, } } -// JobDefinitionEksVolumeArrayInput is an input type that accepts JobDefinitionEksVolumeArray and JobDefinitionEksVolumeArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEksVolumeArrayInput` via: +func (i JobDefinitionEksHostPathArgs) ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput { + return i.ToJobDefinitionEksHostPathPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksHostPathArgs) ToJobDefinitionEksHostPathPtrOutputWithContext(ctx context.Context) JobDefinitionEksHostPathPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksHostPathOutput).ToJobDefinitionEksHostPathPtrOutputWithContext(ctx) +} + +// JobDefinitionEksHostPathPtrInput is an input type that accepts JobDefinitionEksHostPathArgs, JobDefinitionEksHostPathPtr and JobDefinitionEksHostPathPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksHostPathPtrInput` via: // -// JobDefinitionEksVolumeArray{ JobDefinitionEksVolumeArgs{...} } -type JobDefinitionEksVolumeArrayInput interface { +// JobDefinitionEksHostPathArgs{...} +// +// or: +// +// nil +type JobDefinitionEksHostPathPtrInput interface { pulumi.Input - ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput - ToJobDefinitionEksVolumeArrayOutputWithContext(context.Context) JobDefinitionEksVolumeArrayOutput + ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput + ToJobDefinitionEksHostPathPtrOutputWithContext(context.Context) JobDefinitionEksHostPathPtrOutput } -type JobDefinitionEksVolumeArray []JobDefinitionEksVolumeInput +type jobDefinitionEksHostPathPtrType JobDefinitionEksHostPathArgs -func (JobDefinitionEksVolumeArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksVolume)(nil)).Elem() +func JobDefinitionEksHostPathPtr(v *JobDefinitionEksHostPathArgs) JobDefinitionEksHostPathPtrInput { + return (*jobDefinitionEksHostPathPtrType)(v) } -func (i JobDefinitionEksVolumeArray) ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput { - return i.ToJobDefinitionEksVolumeArrayOutputWithContext(context.Background()) +func (*jobDefinitionEksHostPathPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksHostPath)(nil)).Elem() } -func (i JobDefinitionEksVolumeArray) ToJobDefinitionEksVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionEksVolumeArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksVolumeArrayOutput) +func (i *jobDefinitionEksHostPathPtrType) ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput { + return i.ToJobDefinitionEksHostPathPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEksVolumeArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksVolume] { - return pulumix.Output[[]JobDefinitionEksVolume]{ - OutputState: i.ToJobDefinitionEksVolumeArrayOutputWithContext(ctx).OutputState, +func (i *jobDefinitionEksHostPathPtrType) ToJobDefinitionEksHostPathPtrOutputWithContext(ctx context.Context) JobDefinitionEksHostPathPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksHostPathPtrOutput) +} + +func (i *jobDefinitionEksHostPathPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksHostPath] { + return pulumix.Output[*JobDefinitionEksHostPath]{ + OutputState: i.ToJobDefinitionEksHostPathPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEksVolumeOutput struct{ *pulumi.OutputState } +type JobDefinitionEksHostPathOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksVolumeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEksVolume)(nil)).Elem() +func (JobDefinitionEksHostPathOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksHostPath)(nil)).Elem() } -func (o JobDefinitionEksVolumeOutput) ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput { +func (o JobDefinitionEksHostPathOutput) ToJobDefinitionEksHostPathOutput() JobDefinitionEksHostPathOutput { return o } -func (o JobDefinitionEksVolumeOutput) ToJobDefinitionEksVolumeOutputWithContext(ctx context.Context) JobDefinitionEksVolumeOutput { +func (o JobDefinitionEksHostPathOutput) ToJobDefinitionEksHostPathOutputWithContext(ctx context.Context) JobDefinitionEksHostPathOutput { return o } -func (o JobDefinitionEksVolumeOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksVolume] { - return pulumix.Output[JobDefinitionEksVolume]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionEksVolumeOutput) EmptyDir() JobDefinitionEksEmptyDirPtrOutput { - return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksEmptyDir { return v.EmptyDir }).(JobDefinitionEksEmptyDirPtrOutput) +func (o JobDefinitionEksHostPathOutput) ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput { + return o.ToJobDefinitionEksHostPathPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEksVolumeOutput) HostPath() JobDefinitionEksHostPathPtrOutput { - return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksHostPath { return v.HostPath }).(JobDefinitionEksHostPathPtrOutput) +func (o JobDefinitionEksHostPathOutput) ToJobDefinitionEksHostPathPtrOutputWithContext(ctx context.Context) JobDefinitionEksHostPathPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksHostPath) *JobDefinitionEksHostPath { + return &v + }).(JobDefinitionEksHostPathPtrOutput) } -func (o JobDefinitionEksVolumeOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEksVolume) string { return v.Name }).(pulumi.StringOutput) +func (o JobDefinitionEksHostPathOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksHostPath] { + return pulumix.Output[JobDefinitionEksHostPath]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionEksVolumeOutput) Secret() JobDefinitionEksSecretPtrOutput { - return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksSecret { return v.Secret }).(JobDefinitionEksSecretPtrOutput) +func (o JobDefinitionEksHostPathOutput) Path() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksHostPath) *string { return v.Path }).(pulumi.StringPtrOutput) } -type JobDefinitionEksVolumeArrayOutput struct{ *pulumi.OutputState } +type JobDefinitionEksHostPathPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionEksVolumeArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEksVolume)(nil)).Elem() +func (JobDefinitionEksHostPathPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksHostPath)(nil)).Elem() } -func (o JobDefinitionEksVolumeArrayOutput) ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput { +func (o JobDefinitionEksHostPathPtrOutput) ToJobDefinitionEksHostPathPtrOutput() JobDefinitionEksHostPathPtrOutput { return o } -func (o JobDefinitionEksVolumeArrayOutput) ToJobDefinitionEksVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionEksVolumeArrayOutput { +func (o JobDefinitionEksHostPathPtrOutput) ToJobDefinitionEksHostPathPtrOutputWithContext(ctx context.Context) JobDefinitionEksHostPathPtrOutput { return o } -func (o JobDefinitionEksVolumeArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksVolume] { - return pulumix.Output[[]JobDefinitionEksVolume]{ +func (o JobDefinitionEksHostPathPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksHostPath] { + return pulumix.Output[*JobDefinitionEksHostPath]{ OutputState: o.OutputState, } } -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 (o JobDefinitionEksHostPathPtrOutput) Elem() JobDefinitionEksHostPathOutput { + return o.ApplyT(func(v *JobDefinitionEksHostPath) JobDefinitionEksHostPath { + if v != nil { + return *v + } + var ret JobDefinitionEksHostPath + return ret + }).(JobDefinitionEksHostPathOutput) } -type JobDefinitionEnvironment struct { - Name *string `pulumi:"name"` - Value *string `pulumi:"value"` +func (o JobDefinitionEksHostPathPtrOutput) Path() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksHostPath) *string { + if v == nil { + return nil + } + return v.Path + }).(pulumi.StringPtrOutput) } -// JobDefinitionEnvironmentInput is an input type that accepts JobDefinitionEnvironmentArgs and JobDefinitionEnvironmentOutput values. -// You can construct a concrete instance of `JobDefinitionEnvironmentInput` via: +type JobDefinitionEksMetadata struct { + Labels interface{} `pulumi:"labels"` +} + +// JobDefinitionEksMetadataInput is an input type that accepts JobDefinitionEksMetadataArgs and JobDefinitionEksMetadataOutput values. +// You can construct a concrete instance of `JobDefinitionEksMetadataInput` via: // -// JobDefinitionEnvironmentArgs{...} -type JobDefinitionEnvironmentInput interface { +// JobDefinitionEksMetadataArgs{...} +type JobDefinitionEksMetadataInput interface { pulumi.Input - ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput - ToJobDefinitionEnvironmentOutputWithContext(context.Context) JobDefinitionEnvironmentOutput + ToJobDefinitionEksMetadataOutput() JobDefinitionEksMetadataOutput + ToJobDefinitionEksMetadataOutputWithContext(context.Context) JobDefinitionEksMetadataOutput } -type JobDefinitionEnvironmentArgs struct { - Name pulumi.StringPtrInput `pulumi:"name"` - Value pulumi.StringPtrInput `pulumi:"value"` +type JobDefinitionEksMetadataArgs struct { + Labels pulumi.Input `pulumi:"labels"` } -func (JobDefinitionEnvironmentArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEnvironment)(nil)).Elem() +func (JobDefinitionEksMetadataArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksMetadata)(nil)).Elem() } -func (i JobDefinitionEnvironmentArgs) ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput { - return i.ToJobDefinitionEnvironmentOutputWithContext(context.Background()) +func (i JobDefinitionEksMetadataArgs) ToJobDefinitionEksMetadataOutput() JobDefinitionEksMetadataOutput { + return i.ToJobDefinitionEksMetadataOutputWithContext(context.Background()) } -func (i JobDefinitionEnvironmentArgs) ToJobDefinitionEnvironmentOutputWithContext(ctx context.Context) JobDefinitionEnvironmentOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEnvironmentOutput) +func (i JobDefinitionEksMetadataArgs) ToJobDefinitionEksMetadataOutputWithContext(ctx context.Context) JobDefinitionEksMetadataOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksMetadataOutput) } -func (i JobDefinitionEnvironmentArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEnvironment] { - return pulumix.Output[JobDefinitionEnvironment]{ - OutputState: i.ToJobDefinitionEnvironmentOutputWithContext(ctx).OutputState, +func (i JobDefinitionEksMetadataArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksMetadata] { + return pulumix.Output[JobDefinitionEksMetadata]{ + OutputState: i.ToJobDefinitionEksMetadataOutputWithContext(ctx).OutputState, } } -// JobDefinitionEnvironmentArrayInput is an input type that accepts JobDefinitionEnvironmentArray and JobDefinitionEnvironmentArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEnvironmentArrayInput` via: +func (i JobDefinitionEksMetadataArgs) ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput { + return i.ToJobDefinitionEksMetadataPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksMetadataArgs) ToJobDefinitionEksMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionEksMetadataPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksMetadataOutput).ToJobDefinitionEksMetadataPtrOutputWithContext(ctx) +} + +// JobDefinitionEksMetadataPtrInput is an input type that accepts JobDefinitionEksMetadataArgs, JobDefinitionEksMetadataPtr and JobDefinitionEksMetadataPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksMetadataPtrInput` via: // -// JobDefinitionEnvironmentArray{ JobDefinitionEnvironmentArgs{...} } -type JobDefinitionEnvironmentArrayInput interface { +// JobDefinitionEksMetadataArgs{...} +// +// or: +// +// nil +type JobDefinitionEksMetadataPtrInput interface { pulumi.Input - ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput - ToJobDefinitionEnvironmentArrayOutputWithContext(context.Context) JobDefinitionEnvironmentArrayOutput + ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput + ToJobDefinitionEksMetadataPtrOutputWithContext(context.Context) JobDefinitionEksMetadataPtrOutput } -type JobDefinitionEnvironmentArray []JobDefinitionEnvironmentInput +type jobDefinitionEksMetadataPtrType JobDefinitionEksMetadataArgs -func (JobDefinitionEnvironmentArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEnvironment)(nil)).Elem() +func JobDefinitionEksMetadataPtr(v *JobDefinitionEksMetadataArgs) JobDefinitionEksMetadataPtrInput { + return (*jobDefinitionEksMetadataPtrType)(v) } -func (i JobDefinitionEnvironmentArray) ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput { - return i.ToJobDefinitionEnvironmentArrayOutputWithContext(context.Background()) +func (*jobDefinitionEksMetadataPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksMetadata)(nil)).Elem() } -func (i JobDefinitionEnvironmentArray) ToJobDefinitionEnvironmentArrayOutputWithContext(ctx context.Context) JobDefinitionEnvironmentArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEnvironmentArrayOutput) +func (i *jobDefinitionEksMetadataPtrType) ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput { + return i.ToJobDefinitionEksMetadataPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEnvironmentArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEnvironment] { - return pulumix.Output[[]JobDefinitionEnvironment]{ - OutputState: i.ToJobDefinitionEnvironmentArrayOutputWithContext(ctx).OutputState, +func (i *jobDefinitionEksMetadataPtrType) ToJobDefinitionEksMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionEksMetadataPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksMetadataPtrOutput) +} + +func (i *jobDefinitionEksMetadataPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksMetadata] { + return pulumix.Output[*JobDefinitionEksMetadata]{ + OutputState: i.ToJobDefinitionEksMetadataPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEnvironmentOutput struct{ *pulumi.OutputState } +type JobDefinitionEksMetadataOutput struct{ *pulumi.OutputState } -func (JobDefinitionEnvironmentOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEnvironment)(nil)).Elem() +func (JobDefinitionEksMetadataOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksMetadata)(nil)).Elem() } -func (o JobDefinitionEnvironmentOutput) ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput { +func (o JobDefinitionEksMetadataOutput) ToJobDefinitionEksMetadataOutput() JobDefinitionEksMetadataOutput { return o } -func (o JobDefinitionEnvironmentOutput) ToJobDefinitionEnvironmentOutputWithContext(ctx context.Context) JobDefinitionEnvironmentOutput { +func (o JobDefinitionEksMetadataOutput) ToJobDefinitionEksMetadataOutputWithContext(ctx context.Context) JobDefinitionEksMetadataOutput { return o } -func (o JobDefinitionEnvironmentOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEnvironment] { - return pulumix.Output[JobDefinitionEnvironment]{ - OutputState: o.OutputState, - } +func (o JobDefinitionEksMetadataOutput) ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput { + return o.ToJobDefinitionEksMetadataPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEnvironmentOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEnvironment) *string { return v.Name }).(pulumi.StringPtrOutput) +func (o JobDefinitionEksMetadataOutput) ToJobDefinitionEksMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionEksMetadataPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksMetadata) *JobDefinitionEksMetadata { + return &v + }).(JobDefinitionEksMetadataPtrOutput) } -func (o JobDefinitionEnvironmentOutput) Value() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEnvironment) *string { return v.Value }).(pulumi.StringPtrOutput) +func (o JobDefinitionEksMetadataOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksMetadata] { + return pulumix.Output[JobDefinitionEksMetadata]{ + OutputState: o.OutputState, + } } -type JobDefinitionEnvironmentArrayOutput struct{ *pulumi.OutputState } +func (o JobDefinitionEksMetadataOutput) Labels() pulumi.AnyOutput { + return o.ApplyT(func(v JobDefinitionEksMetadata) interface{} { return v.Labels }).(pulumi.AnyOutput) +} -func (JobDefinitionEnvironmentArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEnvironment)(nil)).Elem() +type JobDefinitionEksMetadataPtrOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksMetadataPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksMetadata)(nil)).Elem() } -func (o JobDefinitionEnvironmentArrayOutput) ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput { +func (o JobDefinitionEksMetadataPtrOutput) ToJobDefinitionEksMetadataPtrOutput() JobDefinitionEksMetadataPtrOutput { return o } -func (o JobDefinitionEnvironmentArrayOutput) ToJobDefinitionEnvironmentArrayOutputWithContext(ctx context.Context) JobDefinitionEnvironmentArrayOutput { +func (o JobDefinitionEksMetadataPtrOutput) ToJobDefinitionEksMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionEksMetadataPtrOutput { return o } -func (o JobDefinitionEnvironmentArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEnvironment] { - return pulumix.Output[[]JobDefinitionEnvironment]{ +func (o JobDefinitionEksMetadataPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksMetadata] { + return pulumix.Output[*JobDefinitionEksMetadata]{ OutputState: o.OutputState, } } -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) +func (o JobDefinitionEksMetadataPtrOutput) Elem() JobDefinitionEksMetadataOutput { + return o.ApplyT(func(v *JobDefinitionEksMetadata) JobDefinitionEksMetadata { + if v != nil { + return *v + } + var ret JobDefinitionEksMetadata + return ret + }).(JobDefinitionEksMetadataOutput) } -type JobDefinitionEphemeralStorage struct { - SizeInGiB int `pulumi:"sizeInGiB"` +func (o JobDefinitionEksMetadataPtrOutput) Labels() pulumi.AnyOutput { + return o.ApplyT(func(v *JobDefinitionEksMetadata) interface{} { + if v == nil { + return nil + } + return v.Labels + }).(pulumi.AnyOutput) +} + +type JobDefinitionEksPodProperties struct { + Containers []JobDefinitionEksContainer `pulumi:"containers"` + DnsPolicy *string `pulumi:"dnsPolicy"` + HostNetwork *bool `pulumi:"hostNetwork"` + Metadata *JobDefinitionEksMetadata `pulumi:"metadata"` + ServiceAccountName *string `pulumi:"serviceAccountName"` + Volumes []JobDefinitionEksVolume `pulumi:"volumes"` } -// JobDefinitionEphemeralStorageInput is an input type that accepts JobDefinitionEphemeralStorageArgs and JobDefinitionEphemeralStorageOutput values. -// You can construct a concrete instance of `JobDefinitionEphemeralStorageInput` via: +// JobDefinitionEksPodPropertiesInput is an input type that accepts JobDefinitionEksPodPropertiesArgs and JobDefinitionEksPodPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionEksPodPropertiesInput` via: // -// JobDefinitionEphemeralStorageArgs{...} -type JobDefinitionEphemeralStorageInput interface { +// JobDefinitionEksPodPropertiesArgs{...} +type JobDefinitionEksPodPropertiesInput interface { pulumi.Input - ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput - ToJobDefinitionEphemeralStorageOutputWithContext(context.Context) JobDefinitionEphemeralStorageOutput + ToJobDefinitionEksPodPropertiesOutput() JobDefinitionEksPodPropertiesOutput + ToJobDefinitionEksPodPropertiesOutputWithContext(context.Context) JobDefinitionEksPodPropertiesOutput } -type JobDefinitionEphemeralStorageArgs struct { - SizeInGiB pulumi.IntInput `pulumi:"sizeInGiB"` +type JobDefinitionEksPodPropertiesArgs struct { + Containers JobDefinitionEksContainerArrayInput `pulumi:"containers"` + DnsPolicy pulumi.StringPtrInput `pulumi:"dnsPolicy"` + HostNetwork pulumi.BoolPtrInput `pulumi:"hostNetwork"` + Metadata JobDefinitionEksMetadataPtrInput `pulumi:"metadata"` + ServiceAccountName pulumi.StringPtrInput `pulumi:"serviceAccountName"` + Volumes JobDefinitionEksVolumeArrayInput `pulumi:"volumes"` } -func (JobDefinitionEphemeralStorageArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEphemeralStorage)(nil)).Elem() +func (JobDefinitionEksPodPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksPodProperties)(nil)).Elem() } -func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput { - return i.ToJobDefinitionEphemeralStorageOutputWithContext(context.Background()) +func (i JobDefinitionEksPodPropertiesArgs) ToJobDefinitionEksPodPropertiesOutput() JobDefinitionEksPodPropertiesOutput { + return i.ToJobDefinitionEksPodPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStorageOutputWithContext(ctx context.Context) JobDefinitionEphemeralStorageOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStorageOutput) +func (i JobDefinitionEksPodPropertiesArgs) ToJobDefinitionEksPodPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPodPropertiesOutput) } -func (i JobDefinitionEphemeralStorageArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEphemeralStorage] { - return pulumix.Output[JobDefinitionEphemeralStorage]{ - OutputState: i.ToJobDefinitionEphemeralStorageOutputWithContext(ctx).OutputState, +func (i JobDefinitionEksPodPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksPodProperties] { + return pulumix.Output[JobDefinitionEksPodProperties]{ + OutputState: i.ToJobDefinitionEksPodPropertiesOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { - return i.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +func (i JobDefinitionEksPodPropertiesArgs) ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput { + return i.ToJobDefinitionEksPodPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEphemeralStorageArgs) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStorageOutput).ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx) +func (i JobDefinitionEksPodPropertiesArgs) ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPodPropertiesOutput).ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx) } -// JobDefinitionEphemeralStoragePtrInput is an input type that accepts JobDefinitionEphemeralStorageArgs, JobDefinitionEphemeralStoragePtr and JobDefinitionEphemeralStoragePtrOutput values. -// You can construct a concrete instance of `JobDefinitionEphemeralStoragePtrInput` via: +// JobDefinitionEksPodPropertiesPtrInput is an input type that accepts JobDefinitionEksPodPropertiesArgs, JobDefinitionEksPodPropertiesPtr and JobDefinitionEksPodPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksPodPropertiesPtrInput` via: // -// JobDefinitionEphemeralStorageArgs{...} +// JobDefinitionEksPodPropertiesArgs{...} // // or: // // nil -type JobDefinitionEphemeralStoragePtrInput interface { +type JobDefinitionEksPodPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput - ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Context) JobDefinitionEphemeralStoragePtrOutput + ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput + ToJobDefinitionEksPodPropertiesPtrOutputWithContext(context.Context) JobDefinitionEksPodPropertiesPtrOutput } -type jobDefinitionEphemeralStoragePtrType JobDefinitionEphemeralStorageArgs +type jobDefinitionEksPodPropertiesPtrType JobDefinitionEksPodPropertiesArgs -func JobDefinitionEphemeralStoragePtr(v *JobDefinitionEphemeralStorageArgs) JobDefinitionEphemeralStoragePtrInput { - return (*jobDefinitionEphemeralStoragePtrType)(v) +func JobDefinitionEksPodPropertiesPtr(v *JobDefinitionEksPodPropertiesArgs) JobDefinitionEksPodPropertiesPtrInput { + return (*jobDefinitionEksPodPropertiesPtrType)(v) } -func (*jobDefinitionEphemeralStoragePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEphemeralStorage)(nil)).Elem() +func (*jobDefinitionEksPodPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksPodProperties)(nil)).Elem() } -func (i *jobDefinitionEphemeralStoragePtrType) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { - return i.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +func (i *jobDefinitionEksPodPropertiesPtrType) ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput { + return i.ToJobDefinitionEksPodPropertiesPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionEphemeralStoragePtrType) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEphemeralStoragePtrOutput) +func (i *jobDefinitionEksPodPropertiesPtrType) ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPodPropertiesPtrOutput) } -func (i *jobDefinitionEphemeralStoragePtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEphemeralStorage] { - return pulumix.Output[*JobDefinitionEphemeralStorage]{ - OutputState: i.ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionEksPodPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksPodProperties] { + return pulumix.Output[*JobDefinitionEksPodProperties]{ + OutputState: i.ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEphemeralStorageOutput struct{ *pulumi.OutputState } +type JobDefinitionEksPodPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionEphemeralStorageOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEphemeralStorage)(nil)).Elem() +func (JobDefinitionEksPodPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksPodProperties)(nil)).Elem() } -func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStorageOutput() JobDefinitionEphemeralStorageOutput { +func (o JobDefinitionEksPodPropertiesOutput) ToJobDefinitionEksPodPropertiesOutput() JobDefinitionEksPodPropertiesOutput { return o } -func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStorageOutputWithContext(ctx context.Context) JobDefinitionEphemeralStorageOutput { +func (o JobDefinitionEksPodPropertiesOutput) ToJobDefinitionEksPodPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesOutput { return o } -func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { - return o.ToJobDefinitionEphemeralStoragePtrOutputWithContext(context.Background()) +func (o JobDefinitionEksPodPropertiesOutput) ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput { + return o.ToJobDefinitionEksPodPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEphemeralStorageOutput) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEphemeralStorage) *JobDefinitionEphemeralStorage { +func (o JobDefinitionEksPodPropertiesOutput) ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksPodProperties) *JobDefinitionEksPodProperties { return &v - }).(JobDefinitionEphemeralStoragePtrOutput) + }).(JobDefinitionEksPodPropertiesPtrOutput) } -func (o JobDefinitionEphemeralStorageOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEphemeralStorage] { - return pulumix.Output[JobDefinitionEphemeralStorage]{ +func (o JobDefinitionEksPodPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksPodProperties] { + return pulumix.Output[JobDefinitionEksPodProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEphemeralStorageOutput) SizeInGiB() pulumi.IntOutput { - return o.ApplyT(func(v JobDefinitionEphemeralStorage) int { return v.SizeInGiB }).(pulumi.IntOutput) +func (o JobDefinitionEksPodPropertiesOutput) Containers() JobDefinitionEksContainerArrayOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) []JobDefinitionEksContainer { return v.Containers }).(JobDefinitionEksContainerArrayOutput) +} + +func (o JobDefinitionEksPodPropertiesOutput) DnsPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *string { return v.DnsPolicy }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionEksPodPropertiesOutput) HostNetwork() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *bool { return v.HostNetwork }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksPodPropertiesOutput) Metadata() JobDefinitionEksMetadataPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *JobDefinitionEksMetadata { return v.Metadata }).(JobDefinitionEksMetadataPtrOutput) +} + +func (o JobDefinitionEksPodPropertiesOutput) ServiceAccountName() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) *string { return v.ServiceAccountName }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionEksPodPropertiesOutput) Volumes() JobDefinitionEksVolumeArrayOutput { + return o.ApplyT(func(v JobDefinitionEksPodProperties) []JobDefinitionEksVolume { return v.Volumes }).(JobDefinitionEksVolumeArrayOutput) } -type JobDefinitionEphemeralStoragePtrOutput struct{ *pulumi.OutputState } +type JobDefinitionEksPodPropertiesPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionEphemeralStoragePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionEphemeralStorage)(nil)).Elem() +func (JobDefinitionEksPodPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksPodProperties)(nil)).Elem() } -func (o JobDefinitionEphemeralStoragePtrOutput) ToJobDefinitionEphemeralStoragePtrOutput() JobDefinitionEphemeralStoragePtrOutput { +func (o JobDefinitionEksPodPropertiesPtrOutput) ToJobDefinitionEksPodPropertiesPtrOutput() JobDefinitionEksPodPropertiesPtrOutput { return o } -func (o JobDefinitionEphemeralStoragePtrOutput) ToJobDefinitionEphemeralStoragePtrOutputWithContext(ctx context.Context) JobDefinitionEphemeralStoragePtrOutput { +func (o JobDefinitionEksPodPropertiesPtrOutput) ToJobDefinitionEksPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPodPropertiesPtrOutput { return o } -func (o JobDefinitionEphemeralStoragePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEphemeralStorage] { - return pulumix.Output[*JobDefinitionEphemeralStorage]{ +func (o JobDefinitionEksPodPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksPodProperties] { + return pulumix.Output[*JobDefinitionEksPodProperties]{ OutputState: o.OutputState, } } -func (o JobDefinitionEphemeralStoragePtrOutput) Elem() JobDefinitionEphemeralStorageOutput { - return o.ApplyT(func(v *JobDefinitionEphemeralStorage) JobDefinitionEphemeralStorage { +func (o JobDefinitionEksPodPropertiesPtrOutput) Elem() JobDefinitionEksPodPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) JobDefinitionEksPodProperties { if v != nil { return *v } - var ret JobDefinitionEphemeralStorage + var ret JobDefinitionEksPodProperties return ret - }).(JobDefinitionEphemeralStorageOutput) + }).(JobDefinitionEksPodPropertiesOutput) } -func (o JobDefinitionEphemeralStoragePtrOutput) SizeInGiB() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionEphemeralStorage) *int { +func (o JobDefinitionEksPodPropertiesPtrOutput) Containers() JobDefinitionEksContainerArrayOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) []JobDefinitionEksContainer { if v == nil { return nil } - return &v.SizeInGiB - }).(pulumi.IntPtrOutput) + return v.Containers + }).(JobDefinitionEksContainerArrayOutput) } -type JobDefinitionEvaluateOnExit struct { - Action string `pulumi:"action"` - OnExitCode *string `pulumi:"onExitCode"` - OnReason *string `pulumi:"onReason"` - OnStatusReason *string `pulumi:"onStatusReason"` +func (o JobDefinitionEksPodPropertiesPtrOutput) DnsPolicy() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *string { + if v == nil { + return nil + } + return v.DnsPolicy + }).(pulumi.StringPtrOutput) } -// JobDefinitionEvaluateOnExitInput is an input type that accepts JobDefinitionEvaluateOnExitArgs and JobDefinitionEvaluateOnExitOutput values. -// You can construct a concrete instance of `JobDefinitionEvaluateOnExitInput` via: +func (o JobDefinitionEksPodPropertiesPtrOutput) HostNetwork() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *bool { + if v == nil { + return nil + } + return v.HostNetwork + }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksPodPropertiesPtrOutput) Metadata() JobDefinitionEksMetadataPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *JobDefinitionEksMetadata { + if v == nil { + return nil + } + return v.Metadata + }).(JobDefinitionEksMetadataPtrOutput) +} + +func (o JobDefinitionEksPodPropertiesPtrOutput) ServiceAccountName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) *string { + if v == nil { + return nil + } + return v.ServiceAccountName + }).(pulumi.StringPtrOutput) +} + +func (o JobDefinitionEksPodPropertiesPtrOutput) Volumes() JobDefinitionEksVolumeArrayOutput { + return o.ApplyT(func(v *JobDefinitionEksPodProperties) []JobDefinitionEksVolume { + if v == nil { + return nil + } + return v.Volumes + }).(JobDefinitionEksVolumeArrayOutput) +} + +type JobDefinitionEksProperties struct { + PodProperties *JobDefinitionEksPodProperties `pulumi:"podProperties"` +} + +// JobDefinitionEksPropertiesInput is an input type that accepts JobDefinitionEksPropertiesArgs and JobDefinitionEksPropertiesOutput values. +// You can construct a concrete instance of `JobDefinitionEksPropertiesInput` via: // -// JobDefinitionEvaluateOnExitArgs{...} -type JobDefinitionEvaluateOnExitInput interface { +// JobDefinitionEksPropertiesArgs{...} +type JobDefinitionEksPropertiesInput interface { pulumi.Input - ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput - ToJobDefinitionEvaluateOnExitOutputWithContext(context.Context) JobDefinitionEvaluateOnExitOutput + ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput + ToJobDefinitionEksPropertiesOutputWithContext(context.Context) JobDefinitionEksPropertiesOutput } -type JobDefinitionEvaluateOnExitArgs struct { - Action pulumi.StringInput `pulumi:"action"` - OnExitCode pulumi.StringPtrInput `pulumi:"onExitCode"` - OnReason pulumi.StringPtrInput `pulumi:"onReason"` - OnStatusReason pulumi.StringPtrInput `pulumi:"onStatusReason"` +type JobDefinitionEksPropertiesArgs struct { + PodProperties JobDefinitionEksPodPropertiesPtrInput `pulumi:"podProperties"` } -func (JobDefinitionEvaluateOnExitArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEvaluateOnExit)(nil)).Elem() +func (JobDefinitionEksPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksProperties)(nil)).Elem() } -func (i JobDefinitionEvaluateOnExitArgs) ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput { - return i.ToJobDefinitionEvaluateOnExitOutputWithContext(context.Background()) +func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput { + return i.ToJobDefinitionEksPropertiesOutputWithContext(context.Background()) } -func (i JobDefinitionEvaluateOnExitArgs) ToJobDefinitionEvaluateOnExitOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEvaluateOnExitOutput) +func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesOutput) } -func (i JobDefinitionEvaluateOnExitArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEvaluateOnExit] { - return pulumix.Output[JobDefinitionEvaluateOnExit]{ - OutputState: i.ToJobDefinitionEvaluateOnExitOutputWithContext(ctx).OutputState, +func (i JobDefinitionEksPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksProperties] { + return pulumix.Output[JobDefinitionEksProperties]{ + OutputState: i.ToJobDefinitionEksPropertiesOutputWithContext(ctx).OutputState, } } -// JobDefinitionEvaluateOnExitArrayInput is an input type that accepts JobDefinitionEvaluateOnExitArray and JobDefinitionEvaluateOnExitArrayOutput values. -// You can construct a concrete instance of `JobDefinitionEvaluateOnExitArrayInput` via: +func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { + return i.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksPropertiesArgs) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesOutput).ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx) +} + +// JobDefinitionEksPropertiesPtrInput is an input type that accepts JobDefinitionEksPropertiesArgs, JobDefinitionEksPropertiesPtr and JobDefinitionEksPropertiesPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksPropertiesPtrInput` via: // -// JobDefinitionEvaluateOnExitArray{ JobDefinitionEvaluateOnExitArgs{...} } -type JobDefinitionEvaluateOnExitArrayInput interface { +// JobDefinitionEksPropertiesArgs{...} +// +// or: +// +// nil +type JobDefinitionEksPropertiesPtrInput interface { pulumi.Input - ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput - ToJobDefinitionEvaluateOnExitArrayOutputWithContext(context.Context) JobDefinitionEvaluateOnExitArrayOutput + ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput + ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Context) JobDefinitionEksPropertiesPtrOutput } -type JobDefinitionEvaluateOnExitArray []JobDefinitionEvaluateOnExitInput +type jobDefinitionEksPropertiesPtrType JobDefinitionEksPropertiesArgs -func (JobDefinitionEvaluateOnExitArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEvaluateOnExit)(nil)).Elem() +func JobDefinitionEksPropertiesPtr(v *JobDefinitionEksPropertiesArgs) JobDefinitionEksPropertiesPtrInput { + return (*jobDefinitionEksPropertiesPtrType)(v) } -func (i JobDefinitionEvaluateOnExitArray) ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput { - return i.ToJobDefinitionEvaluateOnExitArrayOutputWithContext(context.Background()) +func (*jobDefinitionEksPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksProperties)(nil)).Elem() } -func (i JobDefinitionEvaluateOnExitArray) ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEvaluateOnExitArrayOutput) +func (i *jobDefinitionEksPropertiesPtrType) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { + return i.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) } -func (i JobDefinitionEvaluateOnExitArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEvaluateOnExit] { - return pulumix.Output[[]JobDefinitionEvaluateOnExit]{ - OutputState: i.ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx).OutputState, +func (i *jobDefinitionEksPropertiesPtrType) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksPropertiesPtrOutput) +} + +func (i *jobDefinitionEksPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksProperties] { + return pulumix.Output[*JobDefinitionEksProperties]{ + OutputState: i.ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionEvaluateOnExitOutput struct{ *pulumi.OutputState } +type JobDefinitionEksPropertiesOutput struct{ *pulumi.OutputState } -func (JobDefinitionEvaluateOnExitOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionEvaluateOnExit)(nil)).Elem() +func (JobDefinitionEksPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksProperties)(nil)).Elem() } -func (o JobDefinitionEvaluateOnExitOutput) ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput { +func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesOutput() JobDefinitionEksPropertiesOutput { return o } -func (o JobDefinitionEvaluateOnExitOutput) ToJobDefinitionEvaluateOnExitOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitOutput { +func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesOutput { return o } -func (o JobDefinitionEvaluateOnExitOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEvaluateOnExit] { - return pulumix.Output[JobDefinitionEvaluateOnExit]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionEvaluateOnExitOutput) Action() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionEvaluateOnExit) string { return v.Action }).(pulumi.StringOutput) +func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { + return o.ToJobDefinitionEksPropertiesPtrOutputWithContext(context.Background()) } -func (o JobDefinitionEvaluateOnExitOutput) OnExitCode() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnExitCode }).(pulumi.StringPtrOutput) +func (o JobDefinitionEksPropertiesOutput) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksProperties) *JobDefinitionEksProperties { + return &v + }).(JobDefinitionEksPropertiesPtrOutput) } -func (o JobDefinitionEvaluateOnExitOutput) OnReason() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnReason }).(pulumi.StringPtrOutput) +func (o JobDefinitionEksPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksProperties] { + return pulumix.Output[JobDefinitionEksProperties]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionEvaluateOnExitOutput) OnStatusReason() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnStatusReason }).(pulumi.StringPtrOutput) +func (o JobDefinitionEksPropertiesOutput) PodProperties() JobDefinitionEksPodPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionEksProperties) *JobDefinitionEksPodProperties { return v.PodProperties }).(JobDefinitionEksPodPropertiesPtrOutput) } -type JobDefinitionEvaluateOnExitArrayOutput struct{ *pulumi.OutputState } +type JobDefinitionEksPropertiesPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionEvaluateOnExitArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionEvaluateOnExit)(nil)).Elem() +func (JobDefinitionEksPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksProperties)(nil)).Elem() } -func (o JobDefinitionEvaluateOnExitArrayOutput) ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput { +func (o JobDefinitionEksPropertiesPtrOutput) ToJobDefinitionEksPropertiesPtrOutput() JobDefinitionEksPropertiesPtrOutput { return o } -func (o JobDefinitionEvaluateOnExitArrayOutput) ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitArrayOutput { +func (o JobDefinitionEksPropertiesPtrOutput) ToJobDefinitionEksPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionEksPropertiesPtrOutput { return o } -func (o JobDefinitionEvaluateOnExitArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEvaluateOnExit] { - return pulumix.Output[[]JobDefinitionEvaluateOnExit]{ +func (o JobDefinitionEksPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksProperties] { + return pulumix.Output[*JobDefinitionEksProperties]{ OutputState: o.OutputState, } } -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 JobDefinitionEksPropertiesPtrOutput) Elem() JobDefinitionEksPropertiesOutput { + return o.ApplyT(func(v *JobDefinitionEksProperties) JobDefinitionEksProperties { + if v != nil { + return *v + } + var ret JobDefinitionEksProperties + return ret + }).(JobDefinitionEksPropertiesOutput) } -type JobDefinitionFargatePlatformConfiguration struct { - PlatformVersion *string `pulumi:"platformVersion"` +func (o JobDefinitionEksPropertiesPtrOutput) PodProperties() JobDefinitionEksPodPropertiesPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksProperties) *JobDefinitionEksPodProperties { + if v == nil { + return nil + } + return v.PodProperties + }).(JobDefinitionEksPodPropertiesPtrOutput) +} + +type JobDefinitionEksSecret struct { + Optional *bool `pulumi:"optional"` + SecretName string `pulumi:"secretName"` } -// JobDefinitionFargatePlatformConfigurationInput is an input type that accepts JobDefinitionFargatePlatformConfigurationArgs and JobDefinitionFargatePlatformConfigurationOutput values. -// You can construct a concrete instance of `JobDefinitionFargatePlatformConfigurationInput` via: +// JobDefinitionEksSecretInput is an input type that accepts JobDefinitionEksSecretArgs and JobDefinitionEksSecretOutput values. +// You can construct a concrete instance of `JobDefinitionEksSecretInput` via: // -// JobDefinitionFargatePlatformConfigurationArgs{...} -type JobDefinitionFargatePlatformConfigurationInput interface { +// JobDefinitionEksSecretArgs{...} +type JobDefinitionEksSecretInput interface { pulumi.Input - ToJobDefinitionFargatePlatformConfigurationOutput() JobDefinitionFargatePlatformConfigurationOutput - ToJobDefinitionFargatePlatformConfigurationOutputWithContext(context.Context) JobDefinitionFargatePlatformConfigurationOutput + ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput + ToJobDefinitionEksSecretOutputWithContext(context.Context) JobDefinitionEksSecretOutput } -type JobDefinitionFargatePlatformConfigurationArgs struct { - PlatformVersion pulumi.StringPtrInput `pulumi:"platformVersion"` +type JobDefinitionEksSecretArgs struct { + Optional pulumi.BoolPtrInput `pulumi:"optional"` + SecretName pulumi.StringInput `pulumi:"secretName"` } -func (JobDefinitionFargatePlatformConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionFargatePlatformConfiguration)(nil)).Elem() +func (JobDefinitionEksSecretArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksSecret)(nil)).Elem() } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToJobDefinitionFargatePlatformConfigurationOutput() JobDefinitionFargatePlatformConfigurationOutput { - return i.ToJobDefinitionFargatePlatformConfigurationOutputWithContext(context.Background()) +func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput { + return i.ToJobDefinitionEksSecretOutputWithContext(context.Background()) } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToJobDefinitionFargatePlatformConfigurationOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionFargatePlatformConfigurationOutput) +func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretOutputWithContext(ctx context.Context) JobDefinitionEksSecretOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretOutput) } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionFargatePlatformConfiguration] { - return pulumix.Output[JobDefinitionFargatePlatformConfiguration]{ - OutputState: i.ToJobDefinitionFargatePlatformConfigurationOutputWithContext(ctx).OutputState, +func (i JobDefinitionEksSecretArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksSecret] { + return pulumix.Output[JobDefinitionEksSecret]{ + OutputState: i.ToJobDefinitionEksSecretOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput { - return i.ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(context.Background()) +func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { + return i.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) } -func (i JobDefinitionFargatePlatformConfigurationArgs) ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionFargatePlatformConfigurationOutput).ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx) +func (i JobDefinitionEksSecretArgs) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretOutput).ToJobDefinitionEksSecretPtrOutputWithContext(ctx) } -// JobDefinitionFargatePlatformConfigurationPtrInput is an input type that accepts JobDefinitionFargatePlatformConfigurationArgs, JobDefinitionFargatePlatformConfigurationPtr and JobDefinitionFargatePlatformConfigurationPtrOutput values. -// You can construct a concrete instance of `JobDefinitionFargatePlatformConfigurationPtrInput` via: +// JobDefinitionEksSecretPtrInput is an input type that accepts JobDefinitionEksSecretArgs, JobDefinitionEksSecretPtr and JobDefinitionEksSecretPtrOutput values. +// You can construct a concrete instance of `JobDefinitionEksSecretPtrInput` via: // -// JobDefinitionFargatePlatformConfigurationArgs{...} +// JobDefinitionEksSecretArgs{...} // // or: // // nil -type JobDefinitionFargatePlatformConfigurationPtrInput interface { +type JobDefinitionEksSecretPtrInput interface { pulumi.Input - ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput - ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput + ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput + ToJobDefinitionEksSecretPtrOutputWithContext(context.Context) JobDefinitionEksSecretPtrOutput } -type jobDefinitionFargatePlatformConfigurationPtrType JobDefinitionFargatePlatformConfigurationArgs +type jobDefinitionEksSecretPtrType JobDefinitionEksSecretArgs -func JobDefinitionFargatePlatformConfigurationPtr(v *JobDefinitionFargatePlatformConfigurationArgs) JobDefinitionFargatePlatformConfigurationPtrInput { - return (*jobDefinitionFargatePlatformConfigurationPtrType)(v) +func JobDefinitionEksSecretPtr(v *JobDefinitionEksSecretArgs) JobDefinitionEksSecretPtrInput { + return (*jobDefinitionEksSecretPtrType)(v) } -func (*jobDefinitionFargatePlatformConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionFargatePlatformConfiguration)(nil)).Elem() +func (*jobDefinitionEksSecretPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksSecret)(nil)).Elem() } -func (i *jobDefinitionFargatePlatformConfigurationPtrType) ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput { - return i.ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(context.Background()) +func (i *jobDefinitionEksSecretPtrType) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { + return i.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionFargatePlatformConfigurationPtrType) ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionFargatePlatformConfigurationPtrOutput) +func (i *jobDefinitionEksSecretPtrType) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksSecretPtrOutput) } -func (i *jobDefinitionFargatePlatformConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionFargatePlatformConfiguration] { - return pulumix.Output[*JobDefinitionFargatePlatformConfiguration]{ - OutputState: i.ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionEksSecretPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksSecret] { + return pulumix.Output[*JobDefinitionEksSecret]{ + OutputState: i.ToJobDefinitionEksSecretPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionFargatePlatformConfigurationOutput struct{ *pulumi.OutputState } +type JobDefinitionEksSecretOutput struct{ *pulumi.OutputState } -func (JobDefinitionFargatePlatformConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionFargatePlatformConfiguration)(nil)).Elem() +func (JobDefinitionEksSecretOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksSecret)(nil)).Elem() } -func (o JobDefinitionFargatePlatformConfigurationOutput) ToJobDefinitionFargatePlatformConfigurationOutput() JobDefinitionFargatePlatformConfigurationOutput { +func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretOutput() JobDefinitionEksSecretOutput { return o } -func (o JobDefinitionFargatePlatformConfigurationOutput) ToJobDefinitionFargatePlatformConfigurationOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationOutput { +func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretOutputWithContext(ctx context.Context) JobDefinitionEksSecretOutput { return o } -func (o JobDefinitionFargatePlatformConfigurationOutput) ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput { - return o.ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(context.Background()) +func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { + return o.ToJobDefinitionEksSecretPtrOutputWithContext(context.Background()) } -func (o JobDefinitionFargatePlatformConfigurationOutput) ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionFargatePlatformConfiguration) *JobDefinitionFargatePlatformConfiguration { +func (o JobDefinitionEksSecretOutput) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionEksSecret) *JobDefinitionEksSecret { return &v - }).(JobDefinitionFargatePlatformConfigurationPtrOutput) + }).(JobDefinitionEksSecretPtrOutput) } -func (o JobDefinitionFargatePlatformConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionFargatePlatformConfiguration] { - return pulumix.Output[JobDefinitionFargatePlatformConfiguration]{ +func (o JobDefinitionEksSecretOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksSecret] { + return pulumix.Output[JobDefinitionEksSecret]{ OutputState: o.OutputState, } } -func (o JobDefinitionFargatePlatformConfigurationOutput) PlatformVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionFargatePlatformConfiguration) *string { return v.PlatformVersion }).(pulumi.StringPtrOutput) +func (o JobDefinitionEksSecretOutput) Optional() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionEksSecret) *bool { return v.Optional }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksSecretOutput) SecretName() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEksSecret) string { return v.SecretName }).(pulumi.StringOutput) } -type JobDefinitionFargatePlatformConfigurationPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionEksSecretPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionFargatePlatformConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionFargatePlatformConfiguration)(nil)).Elem() +func (JobDefinitionEksSecretPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionEksSecret)(nil)).Elem() } -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) ToJobDefinitionFargatePlatformConfigurationPtrOutput() JobDefinitionFargatePlatformConfigurationPtrOutput { +func (o JobDefinitionEksSecretPtrOutput) ToJobDefinitionEksSecretPtrOutput() JobDefinitionEksSecretPtrOutput { return o } -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) ToJobDefinitionFargatePlatformConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionFargatePlatformConfigurationPtrOutput { +func (o JobDefinitionEksSecretPtrOutput) ToJobDefinitionEksSecretPtrOutputWithContext(ctx context.Context) JobDefinitionEksSecretPtrOutput { return o } -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionFargatePlatformConfiguration] { - return pulumix.Output[*JobDefinitionFargatePlatformConfiguration]{ +func (o JobDefinitionEksSecretPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionEksSecret] { + return pulumix.Output[*JobDefinitionEksSecret]{ OutputState: o.OutputState, } } -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) Elem() JobDefinitionFargatePlatformConfigurationOutput { - return o.ApplyT(func(v *JobDefinitionFargatePlatformConfiguration) JobDefinitionFargatePlatformConfiguration { +func (o JobDefinitionEksSecretPtrOutput) Elem() JobDefinitionEksSecretOutput { + return o.ApplyT(func(v *JobDefinitionEksSecret) JobDefinitionEksSecret { if v != nil { return *v } - var ret JobDefinitionFargatePlatformConfiguration + var ret JobDefinitionEksSecret return ret - }).(JobDefinitionFargatePlatformConfigurationOutput) + }).(JobDefinitionEksSecretOutput) } -func (o JobDefinitionFargatePlatformConfigurationPtrOutput) PlatformVersion() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionFargatePlatformConfiguration) *string { +func (o JobDefinitionEksSecretPtrOutput) Optional() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksSecret) *bool { if v == nil { return nil } - return v.PlatformVersion + return v.Optional + }).(pulumi.BoolPtrOutput) +} + +func (o JobDefinitionEksSecretPtrOutput) SecretName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionEksSecret) *string { + if v == nil { + return nil + } + return &v.SecretName }).(pulumi.StringPtrOutput) } -type JobDefinitionLinuxParameters struct { - Devices []JobDefinitionDevice `pulumi:"devices"` - InitProcessEnabled *bool `pulumi:"initProcessEnabled"` - MaxSwap *int `pulumi:"maxSwap"` - SharedMemorySize *int `pulumi:"sharedMemorySize"` - Swappiness *int `pulumi:"swappiness"` - Tmpfs []JobDefinitionTmpfs `pulumi:"tmpfs"` +type JobDefinitionEksVolume struct { + EmptyDir *JobDefinitionEksEmptyDir `pulumi:"emptyDir"` + HostPath *JobDefinitionEksHostPath `pulumi:"hostPath"` + Name string `pulumi:"name"` + Secret *JobDefinitionEksSecret `pulumi:"secret"` } -// JobDefinitionLinuxParametersInput is an input type that accepts JobDefinitionLinuxParametersArgs and JobDefinitionLinuxParametersOutput values. -// You can construct a concrete instance of `JobDefinitionLinuxParametersInput` via: +// JobDefinitionEksVolumeInput is an input type that accepts JobDefinitionEksVolumeArgs and JobDefinitionEksVolumeOutput values. +// You can construct a concrete instance of `JobDefinitionEksVolumeInput` via: // -// JobDefinitionLinuxParametersArgs{...} -type JobDefinitionLinuxParametersInput interface { +// JobDefinitionEksVolumeArgs{...} +type JobDefinitionEksVolumeInput interface { pulumi.Input - ToJobDefinitionLinuxParametersOutput() JobDefinitionLinuxParametersOutput - ToJobDefinitionLinuxParametersOutputWithContext(context.Context) JobDefinitionLinuxParametersOutput + ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput + ToJobDefinitionEksVolumeOutputWithContext(context.Context) JobDefinitionEksVolumeOutput } -type JobDefinitionLinuxParametersArgs struct { - Devices JobDefinitionDeviceArrayInput `pulumi:"devices"` - InitProcessEnabled pulumi.BoolPtrInput `pulumi:"initProcessEnabled"` - MaxSwap pulumi.IntPtrInput `pulumi:"maxSwap"` - SharedMemorySize pulumi.IntPtrInput `pulumi:"sharedMemorySize"` - Swappiness pulumi.IntPtrInput `pulumi:"swappiness"` - Tmpfs JobDefinitionTmpfsArrayInput `pulumi:"tmpfs"` +type JobDefinitionEksVolumeArgs struct { + EmptyDir JobDefinitionEksEmptyDirPtrInput `pulumi:"emptyDir"` + HostPath JobDefinitionEksHostPathPtrInput `pulumi:"hostPath"` + Name pulumi.StringInput `pulumi:"name"` + Secret JobDefinitionEksSecretPtrInput `pulumi:"secret"` +} + +func (JobDefinitionEksVolumeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksVolume)(nil)).Elem() +} + +func (i JobDefinitionEksVolumeArgs) ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput { + return i.ToJobDefinitionEksVolumeOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksVolumeArgs) ToJobDefinitionEksVolumeOutputWithContext(ctx context.Context) JobDefinitionEksVolumeOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksVolumeOutput) +} + +func (i JobDefinitionEksVolumeArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksVolume] { + return pulumix.Output[JobDefinitionEksVolume]{ + OutputState: i.ToJobDefinitionEksVolumeOutputWithContext(ctx).OutputState, + } +} + +// JobDefinitionEksVolumeArrayInput is an input type that accepts JobDefinitionEksVolumeArray and JobDefinitionEksVolumeArrayOutput values. +// You can construct a concrete instance of `JobDefinitionEksVolumeArrayInput` via: +// +// JobDefinitionEksVolumeArray{ JobDefinitionEksVolumeArgs{...} } +type JobDefinitionEksVolumeArrayInput interface { + pulumi.Input + + ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput + ToJobDefinitionEksVolumeArrayOutputWithContext(context.Context) JobDefinitionEksVolumeArrayOutput +} + +type JobDefinitionEksVolumeArray []JobDefinitionEksVolumeInput + +func (JobDefinitionEksVolumeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksVolume)(nil)).Elem() +} + +func (i JobDefinitionEksVolumeArray) ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput { + return i.ToJobDefinitionEksVolumeArrayOutputWithContext(context.Background()) +} + +func (i JobDefinitionEksVolumeArray) ToJobDefinitionEksVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionEksVolumeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEksVolumeArrayOutput) +} + +func (i JobDefinitionEksVolumeArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksVolume] { + return pulumix.Output[[]JobDefinitionEksVolume]{ + OutputState: i.ToJobDefinitionEksVolumeArrayOutputWithContext(ctx).OutputState, + } } -func (JobDefinitionLinuxParametersArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionLinuxParameters)(nil)).Elem() +type JobDefinitionEksVolumeOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksVolumeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEksVolume)(nil)).Elem() } -func (i JobDefinitionLinuxParametersArgs) ToJobDefinitionLinuxParametersOutput() JobDefinitionLinuxParametersOutput { - return i.ToJobDefinitionLinuxParametersOutputWithContext(context.Background()) +func (o JobDefinitionEksVolumeOutput) ToJobDefinitionEksVolumeOutput() JobDefinitionEksVolumeOutput { + return o } -func (i JobDefinitionLinuxParametersArgs) ToJobDefinitionLinuxParametersOutputWithContext(ctx context.Context) JobDefinitionLinuxParametersOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLinuxParametersOutput) +func (o JobDefinitionEksVolumeOutput) ToJobDefinitionEksVolumeOutputWithContext(ctx context.Context) JobDefinitionEksVolumeOutput { + return o } -func (i JobDefinitionLinuxParametersArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionLinuxParameters] { - return pulumix.Output[JobDefinitionLinuxParameters]{ - OutputState: i.ToJobDefinitionLinuxParametersOutputWithContext(ctx).OutputState, +func (o JobDefinitionEksVolumeOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEksVolume] { + return pulumix.Output[JobDefinitionEksVolume]{ + OutputState: o.OutputState, } } -func (i JobDefinitionLinuxParametersArgs) ToJobDefinitionLinuxParametersPtrOutput() JobDefinitionLinuxParametersPtrOutput { - return i.ToJobDefinitionLinuxParametersPtrOutputWithContext(context.Background()) +func (o JobDefinitionEksVolumeOutput) EmptyDir() JobDefinitionEksEmptyDirPtrOutput { + return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksEmptyDir { return v.EmptyDir }).(JobDefinitionEksEmptyDirPtrOutput) } -func (i JobDefinitionLinuxParametersArgs) ToJobDefinitionLinuxParametersPtrOutputWithContext(ctx context.Context) JobDefinitionLinuxParametersPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLinuxParametersOutput).ToJobDefinitionLinuxParametersPtrOutputWithContext(ctx) +func (o JobDefinitionEksVolumeOutput) HostPath() JobDefinitionEksHostPathPtrOutput { + return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksHostPath { return v.HostPath }).(JobDefinitionEksHostPathPtrOutput) } -// JobDefinitionLinuxParametersPtrInput is an input type that accepts JobDefinitionLinuxParametersArgs, JobDefinitionLinuxParametersPtr and JobDefinitionLinuxParametersPtrOutput values. -// You can construct a concrete instance of `JobDefinitionLinuxParametersPtrInput` via: -// -// JobDefinitionLinuxParametersArgs{...} -// -// or: -// -// nil -type JobDefinitionLinuxParametersPtrInput interface { - pulumi.Input +func (o JobDefinitionEksVolumeOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEksVolume) string { return v.Name }).(pulumi.StringOutput) +} - ToJobDefinitionLinuxParametersPtrOutput() JobDefinitionLinuxParametersPtrOutput - ToJobDefinitionLinuxParametersPtrOutputWithContext(context.Context) JobDefinitionLinuxParametersPtrOutput +func (o JobDefinitionEksVolumeOutput) Secret() JobDefinitionEksSecretPtrOutput { + return o.ApplyT(func(v JobDefinitionEksVolume) *JobDefinitionEksSecret { return v.Secret }).(JobDefinitionEksSecretPtrOutput) } -type jobDefinitionLinuxParametersPtrType JobDefinitionLinuxParametersArgs +type JobDefinitionEksVolumeArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEksVolumeArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEksVolume)(nil)).Elem() +} -func JobDefinitionLinuxParametersPtr(v *JobDefinitionLinuxParametersArgs) JobDefinitionLinuxParametersPtrInput { - return (*jobDefinitionLinuxParametersPtrType)(v) +func (o JobDefinitionEksVolumeArrayOutput) ToJobDefinitionEksVolumeArrayOutput() JobDefinitionEksVolumeArrayOutput { + return o } -func (*jobDefinitionLinuxParametersPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionLinuxParameters)(nil)).Elem() +func (o JobDefinitionEksVolumeArrayOutput) ToJobDefinitionEksVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionEksVolumeArrayOutput { + return o } -func (i *jobDefinitionLinuxParametersPtrType) ToJobDefinitionLinuxParametersPtrOutput() JobDefinitionLinuxParametersPtrOutput { - return i.ToJobDefinitionLinuxParametersPtrOutputWithContext(context.Background()) +func (o JobDefinitionEksVolumeArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEksVolume] { + return pulumix.Output[[]JobDefinitionEksVolume]{ + OutputState: o.OutputState, + } } -func (i *jobDefinitionLinuxParametersPtrType) ToJobDefinitionLinuxParametersPtrOutputWithContext(ctx context.Context) JobDefinitionLinuxParametersPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLinuxParametersPtrOutput) +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 (i *jobDefinitionLinuxParametersPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionLinuxParameters] { - return pulumix.Output[*JobDefinitionLinuxParameters]{ - OutputState: i.ToJobDefinitionLinuxParametersPtrOutputWithContext(ctx).OutputState, - } +type JobDefinitionEnvironment struct { + Name *string `pulumi:"name"` + Value *string `pulumi:"value"` } -type JobDefinitionLinuxParametersOutput struct{ *pulumi.OutputState } +// 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 -func (JobDefinitionLinuxParametersOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionLinuxParameters)(nil)).Elem() + ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput + ToJobDefinitionEnvironmentOutputWithContext(context.Context) JobDefinitionEnvironmentOutput } -func (o JobDefinitionLinuxParametersOutput) ToJobDefinitionLinuxParametersOutput() JobDefinitionLinuxParametersOutput { - return o +type JobDefinitionEnvironmentArgs struct { + Name pulumi.StringPtrInput `pulumi:"name"` + Value pulumi.StringPtrInput `pulumi:"value"` } -func (o JobDefinitionLinuxParametersOutput) ToJobDefinitionLinuxParametersOutputWithContext(ctx context.Context) JobDefinitionLinuxParametersOutput { - return o +func (JobDefinitionEnvironmentArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEnvironment)(nil)).Elem() } -func (o JobDefinitionLinuxParametersOutput) ToJobDefinitionLinuxParametersPtrOutput() JobDefinitionLinuxParametersPtrOutput { - return o.ToJobDefinitionLinuxParametersPtrOutputWithContext(context.Background()) +func (i JobDefinitionEnvironmentArgs) ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput { + return i.ToJobDefinitionEnvironmentOutputWithContext(context.Background()) } -func (o JobDefinitionLinuxParametersOutput) ToJobDefinitionLinuxParametersPtrOutputWithContext(ctx context.Context) JobDefinitionLinuxParametersPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionLinuxParameters) *JobDefinitionLinuxParameters { - return &v - }).(JobDefinitionLinuxParametersPtrOutput) +func (i JobDefinitionEnvironmentArgs) ToJobDefinitionEnvironmentOutputWithContext(ctx context.Context) JobDefinitionEnvironmentOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEnvironmentOutput) } -func (o JobDefinitionLinuxParametersOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionLinuxParameters] { - return pulumix.Output[JobDefinitionLinuxParameters]{ - OutputState: o.OutputState, +func (i JobDefinitionEnvironmentArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEnvironment] { + return pulumix.Output[JobDefinitionEnvironment]{ + OutputState: i.ToJobDefinitionEnvironmentOutputWithContext(ctx).OutputState, } } -func (o JobDefinitionLinuxParametersOutput) Devices() JobDefinitionDeviceArrayOutput { - return o.ApplyT(func(v JobDefinitionLinuxParameters) []JobDefinitionDevice { return v.Devices }).(JobDefinitionDeviceArrayOutput) -} +// 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 -func (o JobDefinitionLinuxParametersOutput) InitProcessEnabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionLinuxParameters) *bool { return v.InitProcessEnabled }).(pulumi.BoolPtrOutput) + ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput + ToJobDefinitionEnvironmentArrayOutputWithContext(context.Context) JobDefinitionEnvironmentArrayOutput } -func (o JobDefinitionLinuxParametersOutput) MaxSwap() pulumi.IntPtrOutput { - return o.ApplyT(func(v JobDefinitionLinuxParameters) *int { return v.MaxSwap }).(pulumi.IntPtrOutput) +type JobDefinitionEnvironmentArray []JobDefinitionEnvironmentInput + +func (JobDefinitionEnvironmentArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEnvironment)(nil)).Elem() } -func (o JobDefinitionLinuxParametersOutput) SharedMemorySize() pulumi.IntPtrOutput { - return o.ApplyT(func(v JobDefinitionLinuxParameters) *int { return v.SharedMemorySize }).(pulumi.IntPtrOutput) +func (i JobDefinitionEnvironmentArray) ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput { + return i.ToJobDefinitionEnvironmentArrayOutputWithContext(context.Background()) } -func (o JobDefinitionLinuxParametersOutput) Swappiness() pulumi.IntPtrOutput { - return o.ApplyT(func(v JobDefinitionLinuxParameters) *int { return v.Swappiness }).(pulumi.IntPtrOutput) +func (i JobDefinitionEnvironmentArray) ToJobDefinitionEnvironmentArrayOutputWithContext(ctx context.Context) JobDefinitionEnvironmentArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEnvironmentArrayOutput) } -func (o JobDefinitionLinuxParametersOutput) Tmpfs() JobDefinitionTmpfsArrayOutput { - return o.ApplyT(func(v JobDefinitionLinuxParameters) []JobDefinitionTmpfs { return v.Tmpfs }).(JobDefinitionTmpfsArrayOutput) +func (i JobDefinitionEnvironmentArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEnvironment] { + return pulumix.Output[[]JobDefinitionEnvironment]{ + OutputState: i.ToJobDefinitionEnvironmentArrayOutputWithContext(ctx).OutputState, + } } -type JobDefinitionLinuxParametersPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionEnvironmentOutput struct{ *pulumi.OutputState } -func (JobDefinitionLinuxParametersPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionLinuxParameters)(nil)).Elem() +func (JobDefinitionEnvironmentOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEnvironment)(nil)).Elem() } -func (o JobDefinitionLinuxParametersPtrOutput) ToJobDefinitionLinuxParametersPtrOutput() JobDefinitionLinuxParametersPtrOutput { +func (o JobDefinitionEnvironmentOutput) ToJobDefinitionEnvironmentOutput() JobDefinitionEnvironmentOutput { return o } -func (o JobDefinitionLinuxParametersPtrOutput) ToJobDefinitionLinuxParametersPtrOutputWithContext(ctx context.Context) JobDefinitionLinuxParametersPtrOutput { +func (o JobDefinitionEnvironmentOutput) ToJobDefinitionEnvironmentOutputWithContext(ctx context.Context) JobDefinitionEnvironmentOutput { return o } -func (o JobDefinitionLinuxParametersPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionLinuxParameters] { - return pulumix.Output[*JobDefinitionLinuxParameters]{ +func (o JobDefinitionEnvironmentOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEnvironment] { + return pulumix.Output[JobDefinitionEnvironment]{ OutputState: o.OutputState, } } -func (o JobDefinitionLinuxParametersPtrOutput) Elem() JobDefinitionLinuxParametersOutput { - return o.ApplyT(func(v *JobDefinitionLinuxParameters) JobDefinitionLinuxParameters { - if v != nil { - return *v - } - var ret JobDefinitionLinuxParameters - return ret - }).(JobDefinitionLinuxParametersOutput) +func (o JobDefinitionEnvironmentOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEnvironment) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o JobDefinitionLinuxParametersPtrOutput) Devices() JobDefinitionDeviceArrayOutput { - return o.ApplyT(func(v *JobDefinitionLinuxParameters) []JobDefinitionDevice { - if v == nil { - return nil - } - return v.Devices - }).(JobDefinitionDeviceArrayOutput) +func (o JobDefinitionEnvironmentOutput) Value() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEnvironment) *string { return v.Value }).(pulumi.StringPtrOutput) } -func (o JobDefinitionLinuxParametersPtrOutput) InitProcessEnabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionLinuxParameters) *bool { - if v == nil { - return nil - } - return v.InitProcessEnabled - }).(pulumi.BoolPtrOutput) +type JobDefinitionEnvironmentArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionEnvironmentArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEnvironment)(nil)).Elem() } -func (o JobDefinitionLinuxParametersPtrOutput) MaxSwap() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionLinuxParameters) *int { - if v == nil { - return nil - } - return v.MaxSwap - }).(pulumi.IntPtrOutput) +func (o JobDefinitionEnvironmentArrayOutput) ToJobDefinitionEnvironmentArrayOutput() JobDefinitionEnvironmentArrayOutput { + return o } -func (o JobDefinitionLinuxParametersPtrOutput) SharedMemorySize() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionLinuxParameters) *int { - if v == nil { - return nil - } - return v.SharedMemorySize - }).(pulumi.IntPtrOutput) +func (o JobDefinitionEnvironmentArrayOutput) ToJobDefinitionEnvironmentArrayOutputWithContext(ctx context.Context) JobDefinitionEnvironmentArrayOutput { + return o } -func (o JobDefinitionLinuxParametersPtrOutput) Swappiness() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionLinuxParameters) *int { - if v == nil { - return nil - } - return v.Swappiness - }).(pulumi.IntPtrOutput) +func (o JobDefinitionEnvironmentArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEnvironment] { + return pulumix.Output[[]JobDefinitionEnvironment]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionLinuxParametersPtrOutput) Tmpfs() JobDefinitionTmpfsArrayOutput { - return o.ApplyT(func(v *JobDefinitionLinuxParameters) []JobDefinitionTmpfs { - if v == nil { - return nil - } - return v.Tmpfs - }).(JobDefinitionTmpfsArrayOutput) +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) } -type JobDefinitionLogConfiguration struct { - LogDriver string `pulumi:"logDriver"` - Options interface{} `pulumi:"options"` - SecretOptions []JobDefinitionSecret `pulumi:"secretOptions"` +type JobDefinitionEvaluateOnExit struct { + Action string `pulumi:"action"` + OnExitCode *string `pulumi:"onExitCode"` + OnReason *string `pulumi:"onReason"` + OnStatusReason *string `pulumi:"onStatusReason"` } -// JobDefinitionLogConfigurationInput is an input type that accepts JobDefinitionLogConfigurationArgs and JobDefinitionLogConfigurationOutput values. -// You can construct a concrete instance of `JobDefinitionLogConfigurationInput` via: +// JobDefinitionEvaluateOnExitInput is an input type that accepts JobDefinitionEvaluateOnExitArgs and JobDefinitionEvaluateOnExitOutput values. +// You can construct a concrete instance of `JobDefinitionEvaluateOnExitInput` via: // -// JobDefinitionLogConfigurationArgs{...} -type JobDefinitionLogConfigurationInput interface { +// JobDefinitionEvaluateOnExitArgs{...} +type JobDefinitionEvaluateOnExitInput interface { pulumi.Input - ToJobDefinitionLogConfigurationOutput() JobDefinitionLogConfigurationOutput - ToJobDefinitionLogConfigurationOutputWithContext(context.Context) JobDefinitionLogConfigurationOutput + ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput + ToJobDefinitionEvaluateOnExitOutputWithContext(context.Context) JobDefinitionEvaluateOnExitOutput } -type JobDefinitionLogConfigurationArgs struct { - LogDriver pulumi.StringInput `pulumi:"logDriver"` - Options pulumi.Input `pulumi:"options"` - SecretOptions JobDefinitionSecretArrayInput `pulumi:"secretOptions"` +type JobDefinitionEvaluateOnExitArgs struct { + Action pulumi.StringInput `pulumi:"action"` + OnExitCode pulumi.StringPtrInput `pulumi:"onExitCode"` + OnReason pulumi.StringPtrInput `pulumi:"onReason"` + OnStatusReason pulumi.StringPtrInput `pulumi:"onStatusReason"` } -func (JobDefinitionLogConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionLogConfiguration)(nil)).Elem() +func (JobDefinitionEvaluateOnExitArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEvaluateOnExit)(nil)).Elem() } -func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationOutput() JobDefinitionLogConfigurationOutput { - return i.ToJobDefinitionLogConfigurationOutputWithContext(context.Background()) +func (i JobDefinitionEvaluateOnExitArgs) ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput { + return i.ToJobDefinitionEvaluateOnExitOutputWithContext(context.Background()) } -func (i JobDefinitionLogConfigurationArgs) ToJobDefinitionLogConfigurationOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLogConfigurationOutput) +func (i JobDefinitionEvaluateOnExitArgs) ToJobDefinitionEvaluateOnExitOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEvaluateOnExitOutput) } -func (i JobDefinitionLogConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionLogConfiguration] { - return pulumix.Output[JobDefinitionLogConfiguration]{ - OutputState: i.ToJobDefinitionLogConfigurationOutputWithContext(ctx).OutputState, +func (i JobDefinitionEvaluateOnExitArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEvaluateOnExit] { + return pulumix.Output[JobDefinitionEvaluateOnExit]{ + OutputState: i.ToJobDefinitionEvaluateOnExitOutputWithContext(ctx).OutputState, } } -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: +// JobDefinitionEvaluateOnExitArrayInput is an input type that accepts JobDefinitionEvaluateOnExitArray and JobDefinitionEvaluateOnExitArrayOutput values. +// You can construct a concrete instance of `JobDefinitionEvaluateOnExitArrayInput` via: // -// nil -type JobDefinitionLogConfigurationPtrInput interface { +// JobDefinitionEvaluateOnExitArray{ JobDefinitionEvaluateOnExitArgs{...} } +type JobDefinitionEvaluateOnExitArrayInput interface { pulumi.Input - ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput - ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Context) JobDefinitionLogConfigurationPtrOutput + ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput + ToJobDefinitionEvaluateOnExitArrayOutputWithContext(context.Context) JobDefinitionEvaluateOnExitArrayOutput } -type jobDefinitionLogConfigurationPtrType JobDefinitionLogConfigurationArgs - -func JobDefinitionLogConfigurationPtr(v *JobDefinitionLogConfigurationArgs) JobDefinitionLogConfigurationPtrInput { - return (*jobDefinitionLogConfigurationPtrType)(v) -} +type JobDefinitionEvaluateOnExitArray []JobDefinitionEvaluateOnExitInput -func (*jobDefinitionLogConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionLogConfiguration)(nil)).Elem() +func (JobDefinitionEvaluateOnExitArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEvaluateOnExit)(nil)).Elem() } -func (i *jobDefinitionLogConfigurationPtrType) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { - return i.ToJobDefinitionLogConfigurationPtrOutputWithContext(context.Background()) +func (i JobDefinitionEvaluateOnExitArray) ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput { + return i.ToJobDefinitionEvaluateOnExitArrayOutputWithContext(context.Background()) } -func (i *jobDefinitionLogConfigurationPtrType) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionLogConfigurationPtrOutput) +func (i JobDefinitionEvaluateOnExitArray) ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionEvaluateOnExitArrayOutput) } -func (i *jobDefinitionLogConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionLogConfiguration] { - return pulumix.Output[*JobDefinitionLogConfiguration]{ - OutputState: i.ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx).OutputState, +func (i JobDefinitionEvaluateOnExitArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEvaluateOnExit] { + return pulumix.Output[[]JobDefinitionEvaluateOnExit]{ + OutputState: i.ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx).OutputState, } } -type JobDefinitionLogConfigurationOutput struct{ *pulumi.OutputState } +type JobDefinitionEvaluateOnExitOutput struct{ *pulumi.OutputState } -func (JobDefinitionLogConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionLogConfiguration)(nil)).Elem() +func (JobDefinitionEvaluateOnExitOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionEvaluateOnExit)(nil)).Elem() } -func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationOutput() JobDefinitionLogConfigurationOutput { +func (o JobDefinitionEvaluateOnExitOutput) ToJobDefinitionEvaluateOnExitOutput() JobDefinitionEvaluateOnExitOutput { return o } -func (o JobDefinitionLogConfigurationOutput) ToJobDefinitionLogConfigurationOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationOutput { +func (o JobDefinitionEvaluateOnExitOutput) ToJobDefinitionEvaluateOnExitOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitOutput { 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) -} - -func (o JobDefinitionLogConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionLogConfiguration] { - return pulumix.Output[JobDefinitionLogConfiguration]{ +func (o JobDefinitionEvaluateOnExitOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionEvaluateOnExit] { + return pulumix.Output[JobDefinitionEvaluateOnExit]{ OutputState: o.OutputState, } } -func (o JobDefinitionLogConfigurationOutput) LogDriver() pulumi.StringOutput { - return o.ApplyT(func(v JobDefinitionLogConfiguration) string { return v.LogDriver }).(pulumi.StringOutput) -} - -func (o JobDefinitionLogConfigurationOutput) Options() pulumi.AnyOutput { - return o.ApplyT(func(v JobDefinitionLogConfiguration) interface{} { return v.Options }).(pulumi.AnyOutput) +func (o JobDefinitionEvaluateOnExitOutput) Action() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionEvaluateOnExit) string { return v.Action }).(pulumi.StringOutput) } -func (o JobDefinitionLogConfigurationOutput) SecretOptions() JobDefinitionSecretArrayOutput { - return o.ApplyT(func(v JobDefinitionLogConfiguration) []JobDefinitionSecret { return v.SecretOptions }).(JobDefinitionSecretArrayOutput) +func (o JobDefinitionEvaluateOnExitOutput) OnExitCode() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnExitCode }).(pulumi.StringPtrOutput) } -type JobDefinitionLogConfigurationPtrOutput struct{ *pulumi.OutputState } - -func (JobDefinitionLogConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionLogConfiguration)(nil)).Elem() +func (o JobDefinitionEvaluateOnExitOutput) OnReason() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnReason }).(pulumi.StringPtrOutput) } -func (o JobDefinitionLogConfigurationPtrOutput) ToJobDefinitionLogConfigurationPtrOutput() JobDefinitionLogConfigurationPtrOutput { - return o +func (o JobDefinitionEvaluateOnExitOutput) OnStatusReason() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionEvaluateOnExit) *string { return v.OnStatusReason }).(pulumi.StringPtrOutput) } -func (o JobDefinitionLogConfigurationPtrOutput) ToJobDefinitionLogConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionLogConfigurationPtrOutput { - return o -} +type JobDefinitionEvaluateOnExitArrayOutput struct{ *pulumi.OutputState } -func (o JobDefinitionLogConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionLogConfiguration] { - return pulumix.Output[*JobDefinitionLogConfiguration]{ - OutputState: o.OutputState, - } +func (JobDefinitionEvaluateOnExitArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionEvaluateOnExit)(nil)).Elem() } -func (o JobDefinitionLogConfigurationPtrOutput) Elem() JobDefinitionLogConfigurationOutput { - return o.ApplyT(func(v *JobDefinitionLogConfiguration) JobDefinitionLogConfiguration { - if v != nil { - return *v - } - var ret JobDefinitionLogConfiguration - return ret - }).(JobDefinitionLogConfigurationOutput) +func (o JobDefinitionEvaluateOnExitArrayOutput) ToJobDefinitionEvaluateOnExitArrayOutput() JobDefinitionEvaluateOnExitArrayOutput { + return o } - -func (o JobDefinitionLogConfigurationPtrOutput) LogDriver() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionLogConfiguration) *string { - if v == nil { - return nil - } - return &v.LogDriver - }).(pulumi.StringPtrOutput) + +func (o JobDefinitionEvaluateOnExitArrayOutput) ToJobDefinitionEvaluateOnExitArrayOutputWithContext(ctx context.Context) JobDefinitionEvaluateOnExitArrayOutput { + return o } -func (o JobDefinitionLogConfigurationPtrOutput) Options() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinitionLogConfiguration) interface{} { - if v == nil { - return nil - } - return v.Options - }).(pulumi.AnyOutput) +func (o JobDefinitionEvaluateOnExitArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionEvaluateOnExit] { + return pulumix.Output[[]JobDefinitionEvaluateOnExit]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionLogConfigurationPtrOutput) SecretOptions() JobDefinitionSecretArrayOutput { - return o.ApplyT(func(v *JobDefinitionLogConfiguration) []JobDefinitionSecret { - if v == nil { - return nil - } - return v.SecretOptions - }).(JobDefinitionSecretArrayOutput) +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 JobDefinitionMetadata struct { - Labels interface{} `pulumi:"labels"` +type JobDefinitionHost struct { + SourcePath *string `pulumi:"sourcePath"` } -// JobDefinitionMetadataInput is an input type that accepts JobDefinitionMetadataArgs and JobDefinitionMetadataOutput values. -// You can construct a concrete instance of `JobDefinitionMetadataInput` via: +// JobDefinitionHostInput is an input type that accepts JobDefinitionHostArgs and JobDefinitionHostOutput values. +// You can construct a concrete instance of `JobDefinitionHostInput` via: // -// JobDefinitionMetadataArgs{...} -type JobDefinitionMetadataInput interface { +// JobDefinitionHostArgs{...} +type JobDefinitionHostInput interface { pulumi.Input - ToJobDefinitionMetadataOutput() JobDefinitionMetadataOutput - ToJobDefinitionMetadataOutputWithContext(context.Context) JobDefinitionMetadataOutput + ToJobDefinitionHostOutput() JobDefinitionHostOutput + ToJobDefinitionHostOutputWithContext(context.Context) JobDefinitionHostOutput } -type JobDefinitionMetadataArgs struct { - Labels pulumi.Input `pulumi:"labels"` +type JobDefinitionHostArgs struct { + SourcePath pulumi.StringPtrInput `pulumi:"sourcePath"` } -func (JobDefinitionMetadataArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionMetadata)(nil)).Elem() +func (JobDefinitionHostArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionHost)(nil)).Elem() } -func (i JobDefinitionMetadataArgs) ToJobDefinitionMetadataOutput() JobDefinitionMetadataOutput { - return i.ToJobDefinitionMetadataOutputWithContext(context.Background()) +func (i JobDefinitionHostArgs) ToJobDefinitionHostOutput() JobDefinitionHostOutput { + return i.ToJobDefinitionHostOutputWithContext(context.Background()) } -func (i JobDefinitionMetadataArgs) ToJobDefinitionMetadataOutputWithContext(ctx context.Context) JobDefinitionMetadataOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMetadataOutput) +func (i JobDefinitionHostArgs) ToJobDefinitionHostOutputWithContext(ctx context.Context) JobDefinitionHostOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionHostOutput) } -func (i JobDefinitionMetadataArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionMetadata] { - return pulumix.Output[JobDefinitionMetadata]{ - OutputState: i.ToJobDefinitionMetadataOutputWithContext(ctx).OutputState, +func (i JobDefinitionHostArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionHost] { + return pulumix.Output[JobDefinitionHost]{ + OutputState: i.ToJobDefinitionHostOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionMetadataArgs) ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput { - return i.ToJobDefinitionMetadataPtrOutputWithContext(context.Background()) +func (i JobDefinitionHostArgs) ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput { + return i.ToJobDefinitionHostPtrOutputWithContext(context.Background()) } -func (i JobDefinitionMetadataArgs) ToJobDefinitionMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionMetadataPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMetadataOutput).ToJobDefinitionMetadataPtrOutputWithContext(ctx) +func (i JobDefinitionHostArgs) ToJobDefinitionHostPtrOutputWithContext(ctx context.Context) JobDefinitionHostPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionHostOutput).ToJobDefinitionHostPtrOutputWithContext(ctx) } -// JobDefinitionMetadataPtrInput is an input type that accepts JobDefinitionMetadataArgs, JobDefinitionMetadataPtr and JobDefinitionMetadataPtrOutput values. -// You can construct a concrete instance of `JobDefinitionMetadataPtrInput` via: +// JobDefinitionHostPtrInput is an input type that accepts JobDefinitionHostArgs, JobDefinitionHostPtr and JobDefinitionHostPtrOutput values. +// You can construct a concrete instance of `JobDefinitionHostPtrInput` via: // -// JobDefinitionMetadataArgs{...} +// JobDefinitionHostArgs{...} // // or: // // nil -type JobDefinitionMetadataPtrInput interface { +type JobDefinitionHostPtrInput interface { pulumi.Input - ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput - ToJobDefinitionMetadataPtrOutputWithContext(context.Context) JobDefinitionMetadataPtrOutput + ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput + ToJobDefinitionHostPtrOutputWithContext(context.Context) JobDefinitionHostPtrOutput } -type jobDefinitionMetadataPtrType JobDefinitionMetadataArgs +type jobDefinitionHostPtrType JobDefinitionHostArgs -func JobDefinitionMetadataPtr(v *JobDefinitionMetadataArgs) JobDefinitionMetadataPtrInput { - return (*jobDefinitionMetadataPtrType)(v) +func JobDefinitionHostPtr(v *JobDefinitionHostArgs) JobDefinitionHostPtrInput { + return (*jobDefinitionHostPtrType)(v) } -func (*jobDefinitionMetadataPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionMetadata)(nil)).Elem() +func (*jobDefinitionHostPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionHost)(nil)).Elem() } -func (i *jobDefinitionMetadataPtrType) ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput { - return i.ToJobDefinitionMetadataPtrOutputWithContext(context.Background()) +func (i *jobDefinitionHostPtrType) ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput { + return i.ToJobDefinitionHostPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionMetadataPtrType) ToJobDefinitionMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionMetadataPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMetadataPtrOutput) +func (i *jobDefinitionHostPtrType) ToJobDefinitionHostPtrOutputWithContext(ctx context.Context) JobDefinitionHostPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionHostPtrOutput) } -func (i *jobDefinitionMetadataPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionMetadata] { - return pulumix.Output[*JobDefinitionMetadata]{ - OutputState: i.ToJobDefinitionMetadataPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionHostPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionHost] { + return pulumix.Output[*JobDefinitionHost]{ + OutputState: i.ToJobDefinitionHostPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionMetadataOutput struct{ *pulumi.OutputState } +type JobDefinitionHostOutput struct{ *pulumi.OutputState } -func (JobDefinitionMetadataOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionMetadata)(nil)).Elem() +func (JobDefinitionHostOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionHost)(nil)).Elem() } -func (o JobDefinitionMetadataOutput) ToJobDefinitionMetadataOutput() JobDefinitionMetadataOutput { +func (o JobDefinitionHostOutput) ToJobDefinitionHostOutput() JobDefinitionHostOutput { return o } -func (o JobDefinitionMetadataOutput) ToJobDefinitionMetadataOutputWithContext(ctx context.Context) JobDefinitionMetadataOutput { +func (o JobDefinitionHostOutput) ToJobDefinitionHostOutputWithContext(ctx context.Context) JobDefinitionHostOutput { return o } -func (o JobDefinitionMetadataOutput) ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput { - return o.ToJobDefinitionMetadataPtrOutputWithContext(context.Background()) +func (o JobDefinitionHostOutput) ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput { + return o.ToJobDefinitionHostPtrOutputWithContext(context.Background()) } -func (o JobDefinitionMetadataOutput) ToJobDefinitionMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionMetadataPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionMetadata) *JobDefinitionMetadata { +func (o JobDefinitionHostOutput) ToJobDefinitionHostPtrOutputWithContext(ctx context.Context) JobDefinitionHostPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionHost) *JobDefinitionHost { return &v - }).(JobDefinitionMetadataPtrOutput) + }).(JobDefinitionHostPtrOutput) } -func (o JobDefinitionMetadataOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionMetadata] { - return pulumix.Output[JobDefinitionMetadata]{ +func (o JobDefinitionHostOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionHost] { + return pulumix.Output[JobDefinitionHost]{ OutputState: o.OutputState, } } -func (o JobDefinitionMetadataOutput) Labels() pulumi.AnyOutput { - return o.ApplyT(func(v JobDefinitionMetadata) interface{} { return v.Labels }).(pulumi.AnyOutput) +func (o JobDefinitionHostOutput) SourcePath() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionHost) *string { return v.SourcePath }).(pulumi.StringPtrOutput) } -type JobDefinitionMetadataPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionHostPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionMetadataPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionMetadata)(nil)).Elem() +func (JobDefinitionHostPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionHost)(nil)).Elem() } -func (o JobDefinitionMetadataPtrOutput) ToJobDefinitionMetadataPtrOutput() JobDefinitionMetadataPtrOutput { +func (o JobDefinitionHostPtrOutput) ToJobDefinitionHostPtrOutput() JobDefinitionHostPtrOutput { return o } -func (o JobDefinitionMetadataPtrOutput) ToJobDefinitionMetadataPtrOutputWithContext(ctx context.Context) JobDefinitionMetadataPtrOutput { +func (o JobDefinitionHostPtrOutput) ToJobDefinitionHostPtrOutputWithContext(ctx context.Context) JobDefinitionHostPtrOutput { return o } -func (o JobDefinitionMetadataPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionMetadata] { - return pulumix.Output[*JobDefinitionMetadata]{ +func (o JobDefinitionHostPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionHost] { + return pulumix.Output[*JobDefinitionHost]{ OutputState: o.OutputState, } } -func (o JobDefinitionMetadataPtrOutput) Elem() JobDefinitionMetadataOutput { - return o.ApplyT(func(v *JobDefinitionMetadata) JobDefinitionMetadata { +func (o JobDefinitionHostPtrOutput) Elem() JobDefinitionHostOutput { + return o.ApplyT(func(v *JobDefinitionHost) JobDefinitionHost { if v != nil { return *v } - var ret JobDefinitionMetadata + var ret JobDefinitionHost return ret - }).(JobDefinitionMetadataOutput) + }).(JobDefinitionHostOutput) } -func (o JobDefinitionMetadataPtrOutput) Labels() pulumi.AnyOutput { - return o.ApplyT(func(v *JobDefinitionMetadata) interface{} { +func (o JobDefinitionHostPtrOutput) SourcePath() pulumi.StringPtrOutput { + return o.ApplyT(func(v *JobDefinitionHost) *string { if v == nil { return nil } - return v.Labels - }).(pulumi.AnyOutput) + return v.SourcePath + }).(pulumi.StringPtrOutput) } -type JobDefinitionMountPoints struct { - ContainerPath *string `pulumi:"containerPath"` - ReadOnly *bool `pulumi:"readOnly"` - SourceVolume *string `pulumi:"sourceVolume"` +type JobDefinitionJobTimeout struct { + AttemptDurationSeconds *int `pulumi:"attemptDurationSeconds"` } -// JobDefinitionMountPointsInput is an input type that accepts JobDefinitionMountPointsArgs and JobDefinitionMountPointsOutput values. -// You can construct a concrete instance of `JobDefinitionMountPointsInput` via: +// JobDefinitionJobTimeoutInput is an input type that accepts JobDefinitionJobTimeoutArgs and JobDefinitionJobTimeoutOutput values. +// You can construct a concrete instance of `JobDefinitionJobTimeoutInput` via: // -// JobDefinitionMountPointsArgs{...} -type JobDefinitionMountPointsInput interface { +// JobDefinitionJobTimeoutArgs{...} +type JobDefinitionJobTimeoutInput interface { pulumi.Input - ToJobDefinitionMountPointsOutput() JobDefinitionMountPointsOutput - ToJobDefinitionMountPointsOutputWithContext(context.Context) JobDefinitionMountPointsOutput + ToJobDefinitionJobTimeoutOutput() JobDefinitionJobTimeoutOutput + ToJobDefinitionJobTimeoutOutputWithContext(context.Context) JobDefinitionJobTimeoutOutput } -type JobDefinitionMountPointsArgs struct { - ContainerPath pulumi.StringPtrInput `pulumi:"containerPath"` - ReadOnly pulumi.BoolPtrInput `pulumi:"readOnly"` - SourceVolume pulumi.StringPtrInput `pulumi:"sourceVolume"` +type JobDefinitionJobTimeoutArgs struct { + AttemptDurationSeconds pulumi.IntPtrInput `pulumi:"attemptDurationSeconds"` } -func (JobDefinitionMountPointsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionMountPoints)(nil)).Elem() +func (JobDefinitionJobTimeoutArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionJobTimeout)(nil)).Elem() } -func (i JobDefinitionMountPointsArgs) ToJobDefinitionMountPointsOutput() JobDefinitionMountPointsOutput { - return i.ToJobDefinitionMountPointsOutputWithContext(context.Background()) +func (i JobDefinitionJobTimeoutArgs) ToJobDefinitionJobTimeoutOutput() JobDefinitionJobTimeoutOutput { + return i.ToJobDefinitionJobTimeoutOutputWithContext(context.Background()) } -func (i JobDefinitionMountPointsArgs) ToJobDefinitionMountPointsOutputWithContext(ctx context.Context) JobDefinitionMountPointsOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMountPointsOutput) +func (i JobDefinitionJobTimeoutArgs) ToJobDefinitionJobTimeoutOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionJobTimeoutOutput) } -func (i JobDefinitionMountPointsArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionMountPoints] { - return pulumix.Output[JobDefinitionMountPoints]{ - OutputState: i.ToJobDefinitionMountPointsOutputWithContext(ctx).OutputState, +func (i JobDefinitionJobTimeoutArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionJobTimeout] { + return pulumix.Output[JobDefinitionJobTimeout]{ + OutputState: i.ToJobDefinitionJobTimeoutOutputWithContext(ctx).OutputState, } } -// JobDefinitionMountPointsArrayInput is an input type that accepts JobDefinitionMountPointsArray and JobDefinitionMountPointsArrayOutput values. -// You can construct a concrete instance of `JobDefinitionMountPointsArrayInput` via: +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: // -// JobDefinitionMountPointsArray{ JobDefinitionMountPointsArgs{...} } -type JobDefinitionMountPointsArrayInput interface { +// nil +type JobDefinitionJobTimeoutPtrInput interface { pulumi.Input - ToJobDefinitionMountPointsArrayOutput() JobDefinitionMountPointsArrayOutput - ToJobDefinitionMountPointsArrayOutputWithContext(context.Context) JobDefinitionMountPointsArrayOutput + ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput + ToJobDefinitionJobTimeoutPtrOutputWithContext(context.Context) JobDefinitionJobTimeoutPtrOutput } -type JobDefinitionMountPointsArray []JobDefinitionMountPointsInput +type jobDefinitionJobTimeoutPtrType JobDefinitionJobTimeoutArgs + +func JobDefinitionJobTimeoutPtr(v *JobDefinitionJobTimeoutArgs) JobDefinitionJobTimeoutPtrInput { + return (*jobDefinitionJobTimeoutPtrType)(v) +} -func (JobDefinitionMountPointsArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionMountPoints)(nil)).Elem() +func (*jobDefinitionJobTimeoutPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionJobTimeout)(nil)).Elem() } -func (i JobDefinitionMountPointsArray) ToJobDefinitionMountPointsArrayOutput() JobDefinitionMountPointsArrayOutput { - return i.ToJobDefinitionMountPointsArrayOutputWithContext(context.Background()) +func (i *jobDefinitionJobTimeoutPtrType) ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput { + return i.ToJobDefinitionJobTimeoutPtrOutputWithContext(context.Background()) } -func (i JobDefinitionMountPointsArray) ToJobDefinitionMountPointsArrayOutputWithContext(ctx context.Context) JobDefinitionMountPointsArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMountPointsArrayOutput) +func (i *jobDefinitionJobTimeoutPtrType) ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionJobTimeoutPtrOutput) } -func (i JobDefinitionMountPointsArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionMountPoints] { - return pulumix.Output[[]JobDefinitionMountPoints]{ - OutputState: i.ToJobDefinitionMountPointsArrayOutputWithContext(ctx).OutputState, +func (i *jobDefinitionJobTimeoutPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionJobTimeout] { + return pulumix.Output[*JobDefinitionJobTimeout]{ + OutputState: i.ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionMountPointsOutput struct{ *pulumi.OutputState } +type JobDefinitionJobTimeoutOutput struct{ *pulumi.OutputState } -func (JobDefinitionMountPointsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionMountPoints)(nil)).Elem() +func (JobDefinitionJobTimeoutOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionJobTimeout)(nil)).Elem() } -func (o JobDefinitionMountPointsOutput) ToJobDefinitionMountPointsOutput() JobDefinitionMountPointsOutput { +func (o JobDefinitionJobTimeoutOutput) ToJobDefinitionJobTimeoutOutput() JobDefinitionJobTimeoutOutput { return o } -func (o JobDefinitionMountPointsOutput) ToJobDefinitionMountPointsOutputWithContext(ctx context.Context) JobDefinitionMountPointsOutput { +func (o JobDefinitionJobTimeoutOutput) ToJobDefinitionJobTimeoutOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutOutput { return o } -func (o JobDefinitionMountPointsOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionMountPoints] { - return pulumix.Output[JobDefinitionMountPoints]{ - OutputState: o.OutputState, - } +func (o JobDefinitionJobTimeoutOutput) ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput { + return o.ToJobDefinitionJobTimeoutPtrOutputWithContext(context.Background()) } -func (o JobDefinitionMountPointsOutput) ContainerPath() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionMountPoints) *string { return v.ContainerPath }).(pulumi.StringPtrOutput) +func (o JobDefinitionJobTimeoutOutput) ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionJobTimeout) *JobDefinitionJobTimeout { + return &v + }).(JobDefinitionJobTimeoutPtrOutput) } -func (o JobDefinitionMountPointsOutput) ReadOnly() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionMountPoints) *bool { return v.ReadOnly }).(pulumi.BoolPtrOutput) +func (o JobDefinitionJobTimeoutOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionJobTimeout] { + return pulumix.Output[JobDefinitionJobTimeout]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionMountPointsOutput) SourceVolume() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionMountPoints) *string { return v.SourceVolume }).(pulumi.StringPtrOutput) +func (o JobDefinitionJobTimeoutOutput) AttemptDurationSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionJobTimeout) *int { return v.AttemptDurationSeconds }).(pulumi.IntPtrOutput) } -type JobDefinitionMountPointsArrayOutput struct{ *pulumi.OutputState } +type JobDefinitionJobTimeoutPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionMountPointsArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionMountPoints)(nil)).Elem() +func (JobDefinitionJobTimeoutPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionJobTimeout)(nil)).Elem() } -func (o JobDefinitionMountPointsArrayOutput) ToJobDefinitionMountPointsArrayOutput() JobDefinitionMountPointsArrayOutput { +func (o JobDefinitionJobTimeoutPtrOutput) ToJobDefinitionJobTimeoutPtrOutput() JobDefinitionJobTimeoutPtrOutput { return o } -func (o JobDefinitionMountPointsArrayOutput) ToJobDefinitionMountPointsArrayOutputWithContext(ctx context.Context) JobDefinitionMountPointsArrayOutput { +func (o JobDefinitionJobTimeoutPtrOutput) ToJobDefinitionJobTimeoutPtrOutputWithContext(ctx context.Context) JobDefinitionJobTimeoutPtrOutput { return o } -func (o JobDefinitionMountPointsArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionMountPoints] { - return pulumix.Output[[]JobDefinitionMountPoints]{ +func (o JobDefinitionJobTimeoutPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionJobTimeout] { + return pulumix.Output[*JobDefinitionJobTimeout]{ OutputState: o.OutputState, } } -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 JobDefinitionJobTimeoutPtrOutput) Elem() JobDefinitionJobTimeoutOutput { + return o.ApplyT(func(v *JobDefinitionJobTimeout) JobDefinitionJobTimeout { + if v != nil { + return *v + } + var ret JobDefinitionJobTimeout + return ret + }).(JobDefinitionJobTimeoutOutput) +} + +func (o JobDefinitionJobTimeoutPtrOutput) AttemptDurationSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionJobTimeout) *int { + if v == nil { + return nil + } + return v.AttemptDurationSeconds + }).(pulumi.IntPtrOutput) } -type JobDefinitionNetworkConfiguration struct { - AssignPublicIp *string `pulumi:"assignPublicIp"` +type JobDefinitionMountPoint struct { + ContainerPath *string `pulumi:"containerPath"` + ReadOnly *bool `pulumi:"readOnly"` + SourceVolume *string `pulumi:"sourceVolume"` } -// JobDefinitionNetworkConfigurationInput is an input type that accepts JobDefinitionNetworkConfigurationArgs and JobDefinitionNetworkConfigurationOutput values. -// You can construct a concrete instance of `JobDefinitionNetworkConfigurationInput` via: +// JobDefinitionMountPointInput is an input type that accepts JobDefinitionMountPointArgs and JobDefinitionMountPointOutput values. +// You can construct a concrete instance of `JobDefinitionMountPointInput` via: // -// JobDefinitionNetworkConfigurationArgs{...} -type JobDefinitionNetworkConfigurationInput interface { +// JobDefinitionMountPointArgs{...} +type JobDefinitionMountPointInput interface { pulumi.Input - ToJobDefinitionNetworkConfigurationOutput() JobDefinitionNetworkConfigurationOutput - ToJobDefinitionNetworkConfigurationOutputWithContext(context.Context) JobDefinitionNetworkConfigurationOutput + ToJobDefinitionMountPointOutput() JobDefinitionMountPointOutput + ToJobDefinitionMountPointOutputWithContext(context.Context) JobDefinitionMountPointOutput } -type JobDefinitionNetworkConfigurationArgs struct { - AssignPublicIp pulumi.StringPtrInput `pulumi:"assignPublicIp"` +type JobDefinitionMountPointArgs struct { + ContainerPath pulumi.StringPtrInput `pulumi:"containerPath"` + ReadOnly pulumi.BoolPtrInput `pulumi:"readOnly"` + SourceVolume pulumi.StringPtrInput `pulumi:"sourceVolume"` } -func (JobDefinitionNetworkConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionNetworkConfiguration)(nil)).Elem() +func (JobDefinitionMountPointArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMountPoint)(nil)).Elem() } -func (i JobDefinitionNetworkConfigurationArgs) ToJobDefinitionNetworkConfigurationOutput() JobDefinitionNetworkConfigurationOutput { - return i.ToJobDefinitionNetworkConfigurationOutputWithContext(context.Background()) +func (i JobDefinitionMountPointArgs) ToJobDefinitionMountPointOutput() JobDefinitionMountPointOutput { + return i.ToJobDefinitionMountPointOutputWithContext(context.Background()) } -func (i JobDefinitionNetworkConfigurationArgs) ToJobDefinitionNetworkConfigurationOutputWithContext(ctx context.Context) JobDefinitionNetworkConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionNetworkConfigurationOutput) +func (i JobDefinitionMountPointArgs) ToJobDefinitionMountPointOutputWithContext(ctx context.Context) JobDefinitionMountPointOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMountPointOutput) } -func (i JobDefinitionNetworkConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionNetworkConfiguration] { - return pulumix.Output[JobDefinitionNetworkConfiguration]{ - OutputState: i.ToJobDefinitionNetworkConfigurationOutputWithContext(ctx).OutputState, +func (i JobDefinitionMountPointArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionMountPoint] { + return pulumix.Output[JobDefinitionMountPoint]{ + OutputState: i.ToJobDefinitionMountPointOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionNetworkConfigurationArgs) ToJobDefinitionNetworkConfigurationPtrOutput() JobDefinitionNetworkConfigurationPtrOutput { - return i.ToJobDefinitionNetworkConfigurationPtrOutputWithContext(context.Background()) -} - -func (i JobDefinitionNetworkConfigurationArgs) ToJobDefinitionNetworkConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionNetworkConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionNetworkConfigurationOutput).ToJobDefinitionNetworkConfigurationPtrOutputWithContext(ctx) -} - -// JobDefinitionNetworkConfigurationPtrInput is an input type that accepts JobDefinitionNetworkConfigurationArgs, JobDefinitionNetworkConfigurationPtr and JobDefinitionNetworkConfigurationPtrOutput values. -// You can construct a concrete instance of `JobDefinitionNetworkConfigurationPtrInput` via: -// -// JobDefinitionNetworkConfigurationArgs{...} +// JobDefinitionMountPointArrayInput is an input type that accepts JobDefinitionMountPointArray and JobDefinitionMountPointArrayOutput values. +// You can construct a concrete instance of `JobDefinitionMountPointArrayInput` via: // -// or: -// -// nil -type JobDefinitionNetworkConfigurationPtrInput interface { +// JobDefinitionMountPointArray{ JobDefinitionMountPointArgs{...} } +type JobDefinitionMountPointArrayInput interface { pulumi.Input - ToJobDefinitionNetworkConfigurationPtrOutput() JobDefinitionNetworkConfigurationPtrOutput - ToJobDefinitionNetworkConfigurationPtrOutputWithContext(context.Context) JobDefinitionNetworkConfigurationPtrOutput + ToJobDefinitionMountPointArrayOutput() JobDefinitionMountPointArrayOutput + ToJobDefinitionMountPointArrayOutputWithContext(context.Context) JobDefinitionMountPointArrayOutput } -type jobDefinitionNetworkConfigurationPtrType JobDefinitionNetworkConfigurationArgs - -func JobDefinitionNetworkConfigurationPtr(v *JobDefinitionNetworkConfigurationArgs) JobDefinitionNetworkConfigurationPtrInput { - return (*jobDefinitionNetworkConfigurationPtrType)(v) -} +type JobDefinitionMountPointArray []JobDefinitionMountPointInput -func (*jobDefinitionNetworkConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionNetworkConfiguration)(nil)).Elem() +func (JobDefinitionMountPointArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionMountPoint)(nil)).Elem() } -func (i *jobDefinitionNetworkConfigurationPtrType) ToJobDefinitionNetworkConfigurationPtrOutput() JobDefinitionNetworkConfigurationPtrOutput { - return i.ToJobDefinitionNetworkConfigurationPtrOutputWithContext(context.Background()) +func (i JobDefinitionMountPointArray) ToJobDefinitionMountPointArrayOutput() JobDefinitionMountPointArrayOutput { + return i.ToJobDefinitionMountPointArrayOutputWithContext(context.Background()) } -func (i *jobDefinitionNetworkConfigurationPtrType) ToJobDefinitionNetworkConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionNetworkConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionNetworkConfigurationPtrOutput) +func (i JobDefinitionMountPointArray) ToJobDefinitionMountPointArrayOutputWithContext(ctx context.Context) JobDefinitionMountPointArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionMountPointArrayOutput) } -func (i *jobDefinitionNetworkConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionNetworkConfiguration] { - return pulumix.Output[*JobDefinitionNetworkConfiguration]{ - OutputState: i.ToJobDefinitionNetworkConfigurationPtrOutputWithContext(ctx).OutputState, +func (i JobDefinitionMountPointArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionMountPoint] { + return pulumix.Output[[]JobDefinitionMountPoint]{ + OutputState: i.ToJobDefinitionMountPointArrayOutputWithContext(ctx).OutputState, } } -type JobDefinitionNetworkConfigurationOutput struct{ *pulumi.OutputState } +type JobDefinitionMountPointOutput struct{ *pulumi.OutputState } -func (JobDefinitionNetworkConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionNetworkConfiguration)(nil)).Elem() +func (JobDefinitionMountPointOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionMountPoint)(nil)).Elem() } -func (o JobDefinitionNetworkConfigurationOutput) ToJobDefinitionNetworkConfigurationOutput() JobDefinitionNetworkConfigurationOutput { +func (o JobDefinitionMountPointOutput) ToJobDefinitionMountPointOutput() JobDefinitionMountPointOutput { return o } -func (o JobDefinitionNetworkConfigurationOutput) ToJobDefinitionNetworkConfigurationOutputWithContext(ctx context.Context) JobDefinitionNetworkConfigurationOutput { +func (o JobDefinitionMountPointOutput) ToJobDefinitionMountPointOutputWithContext(ctx context.Context) JobDefinitionMountPointOutput { return o } -func (o JobDefinitionNetworkConfigurationOutput) ToJobDefinitionNetworkConfigurationPtrOutput() JobDefinitionNetworkConfigurationPtrOutput { - return o.ToJobDefinitionNetworkConfigurationPtrOutputWithContext(context.Background()) +func (o JobDefinitionMountPointOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionMountPoint] { + return pulumix.Output[JobDefinitionMountPoint]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionNetworkConfigurationOutput) ToJobDefinitionNetworkConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionNetworkConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionNetworkConfiguration) *JobDefinitionNetworkConfiguration { - return &v - }).(JobDefinitionNetworkConfigurationPtrOutput) +func (o JobDefinitionMountPointOutput) ContainerPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMountPoint) *string { return v.ContainerPath }).(pulumi.StringPtrOutput) } -func (o JobDefinitionNetworkConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionNetworkConfiguration] { - return pulumix.Output[JobDefinitionNetworkConfiguration]{ - OutputState: o.OutputState, - } +func (o JobDefinitionMountPointOutput) ReadOnly() pulumi.BoolPtrOutput { + return o.ApplyT(func(v JobDefinitionMountPoint) *bool { return v.ReadOnly }).(pulumi.BoolPtrOutput) } -func (o JobDefinitionNetworkConfigurationOutput) AssignPublicIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionNetworkConfiguration) *string { return v.AssignPublicIp }).(pulumi.StringPtrOutput) +func (o JobDefinitionMountPointOutput) SourceVolume() pulumi.StringPtrOutput { + return o.ApplyT(func(v JobDefinitionMountPoint) *string { return v.SourceVolume }).(pulumi.StringPtrOutput) } -type JobDefinitionNetworkConfigurationPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionMountPointArrayOutput struct{ *pulumi.OutputState } -func (JobDefinitionNetworkConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionNetworkConfiguration)(nil)).Elem() +func (JobDefinitionMountPointArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionMountPoint)(nil)).Elem() } -func (o JobDefinitionNetworkConfigurationPtrOutput) ToJobDefinitionNetworkConfigurationPtrOutput() JobDefinitionNetworkConfigurationPtrOutput { +func (o JobDefinitionMountPointArrayOutput) ToJobDefinitionMountPointArrayOutput() JobDefinitionMountPointArrayOutput { return o } -func (o JobDefinitionNetworkConfigurationPtrOutput) ToJobDefinitionNetworkConfigurationPtrOutputWithContext(ctx context.Context) JobDefinitionNetworkConfigurationPtrOutput { +func (o JobDefinitionMountPointArrayOutput) ToJobDefinitionMountPointArrayOutputWithContext(ctx context.Context) JobDefinitionMountPointArrayOutput { return o } -func (o JobDefinitionNetworkConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionNetworkConfiguration] { - return pulumix.Output[*JobDefinitionNetworkConfiguration]{ +func (o JobDefinitionMountPointArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionMountPoint] { + return pulumix.Output[[]JobDefinitionMountPoint]{ OutputState: o.OutputState, } } -func (o JobDefinitionNetworkConfigurationPtrOutput) Elem() JobDefinitionNetworkConfigurationOutput { - return o.ApplyT(func(v *JobDefinitionNetworkConfiguration) JobDefinitionNetworkConfiguration { - if v != nil { - return *v - } - var ret JobDefinitionNetworkConfiguration - return ret - }).(JobDefinitionNetworkConfigurationOutput) -} - -func (o JobDefinitionNetworkConfigurationPtrOutput) AssignPublicIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionNetworkConfiguration) *string { - if v == nil { - return nil - } - return v.AssignPublicIp - }).(pulumi.StringPtrOutput) +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 JobDefinitionNodeProperties struct { @@ -5350,331 +6086,99 @@ func (i JobDefinitionNodeRangePropertyArgs) ToJobDefinitionNodeRangePropertyOutp return i.ToJobDefinitionNodeRangePropertyOutputWithContext(context.Background()) } -func (i JobDefinitionNodeRangePropertyArgs) ToJobDefinitionNodeRangePropertyOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionNodeRangePropertyOutput) -} - -func (i JobDefinitionNodeRangePropertyArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionNodeRangeProperty] { - return pulumix.Output[JobDefinitionNodeRangeProperty]{ - OutputState: i.ToJobDefinitionNodeRangePropertyOutputWithContext(ctx).OutputState, - } -} - -// JobDefinitionNodeRangePropertyArrayInput is an input type that accepts JobDefinitionNodeRangePropertyArray and JobDefinitionNodeRangePropertyArrayOutput values. -// You can construct a concrete instance of `JobDefinitionNodeRangePropertyArrayInput` via: -// -// JobDefinitionNodeRangePropertyArray{ JobDefinitionNodeRangePropertyArgs{...} } -type JobDefinitionNodeRangePropertyArrayInput interface { - pulumi.Input - - ToJobDefinitionNodeRangePropertyArrayOutput() JobDefinitionNodeRangePropertyArrayOutput - ToJobDefinitionNodeRangePropertyArrayOutputWithContext(context.Context) JobDefinitionNodeRangePropertyArrayOutput -} - -type JobDefinitionNodeRangePropertyArray []JobDefinitionNodeRangePropertyInput - -func (JobDefinitionNodeRangePropertyArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionNodeRangeProperty)(nil)).Elem() -} - -func (i JobDefinitionNodeRangePropertyArray) ToJobDefinitionNodeRangePropertyArrayOutput() JobDefinitionNodeRangePropertyArrayOutput { - return i.ToJobDefinitionNodeRangePropertyArrayOutputWithContext(context.Background()) -} - -func (i JobDefinitionNodeRangePropertyArray) ToJobDefinitionNodeRangePropertyArrayOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionNodeRangePropertyArrayOutput) -} - -func (i JobDefinitionNodeRangePropertyArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionNodeRangeProperty] { - return pulumix.Output[[]JobDefinitionNodeRangeProperty]{ - OutputState: i.ToJobDefinitionNodeRangePropertyArrayOutputWithContext(ctx).OutputState, - } -} - -type JobDefinitionNodeRangePropertyOutput struct{ *pulumi.OutputState } - -func (JobDefinitionNodeRangePropertyOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionNodeRangeProperty)(nil)).Elem() -} - -func (o JobDefinitionNodeRangePropertyOutput) ToJobDefinitionNodeRangePropertyOutput() JobDefinitionNodeRangePropertyOutput { - return o -} - -func (o JobDefinitionNodeRangePropertyOutput) ToJobDefinitionNodeRangePropertyOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyOutput { - return o -} - -func (o JobDefinitionNodeRangePropertyOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionNodeRangeProperty] { - return pulumix.Output[JobDefinitionNodeRangeProperty]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionNodeRangePropertyOutput) Container() JobDefinitionContainerPropertiesPtrOutput { - return o.ApplyT(func(v JobDefinitionNodeRangeProperty) *JobDefinitionContainerProperties { return v.Container }).(JobDefinitionContainerPropertiesPtrOutput) -} - -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) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionNodeRangeProperty] { - return pulumix.Output[[]JobDefinitionNodeRangeProperty]{ - OutputState: o.OutputState, - } -} - -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 { - Containers []JobDefinitionEksContainer `pulumi:"containers"` - DnsPolicy *string `pulumi:"dnsPolicy"` - HostNetwork *bool `pulumi:"hostNetwork"` - Metadata *JobDefinitionMetadata `pulumi:"metadata"` - ServiceAccountName *string `pulumi:"serviceAccountName"` - 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 { - Containers JobDefinitionEksContainerArrayInput `pulumi:"containers"` - DnsPolicy pulumi.StringPtrInput `pulumi:"dnsPolicy"` - HostNetwork pulumi.BoolPtrInput `pulumi:"hostNetwork"` - Metadata JobDefinitionMetadataPtrInput `pulumi:"metadata"` - ServiceAccountName pulumi.StringPtrInput `pulumi:"serviceAccountName"` - 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) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionPodProperties] { - return pulumix.Output[JobDefinitionPodProperties]{ - OutputState: i.ToJobDefinitionPodPropertiesOutputWithContext(ctx).OutputState, - } -} - -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) -} - -func (i *jobDefinitionPodPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionPodProperties] { - return pulumix.Output[*JobDefinitionPodProperties]{ - OutputState: i.ToJobDefinitionPodPropertiesPtrOutputWithContext(ctx).OutputState, - } -} - -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) +func (i JobDefinitionNodeRangePropertyArgs) ToJobDefinitionNodeRangePropertyOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionNodeRangePropertyOutput) } -func (o JobDefinitionPodPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionPodProperties] { - return pulumix.Output[JobDefinitionPodProperties]{ - OutputState: o.OutputState, +func (i JobDefinitionNodeRangePropertyArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionNodeRangeProperty] { + return pulumix.Output[JobDefinitionNodeRangeProperty]{ + OutputState: i.ToJobDefinitionNodeRangePropertyOutputWithContext(ctx).OutputState, } } -func (o JobDefinitionPodPropertiesOutput) Containers() JobDefinitionEksContainerArrayOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) []JobDefinitionEksContainer { return v.Containers }).(JobDefinitionEksContainerArrayOutput) -} +// JobDefinitionNodeRangePropertyArrayInput is an input type that accepts JobDefinitionNodeRangePropertyArray and JobDefinitionNodeRangePropertyArrayOutput values. +// You can construct a concrete instance of `JobDefinitionNodeRangePropertyArrayInput` via: +// +// JobDefinitionNodeRangePropertyArray{ JobDefinitionNodeRangePropertyArgs{...} } +type JobDefinitionNodeRangePropertyArrayInput interface { + pulumi.Input -func (o JobDefinitionPodPropertiesOutput) DnsPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *string { return v.DnsPolicy }).(pulumi.StringPtrOutput) + ToJobDefinitionNodeRangePropertyArrayOutput() JobDefinitionNodeRangePropertyArrayOutput + ToJobDefinitionNodeRangePropertyArrayOutputWithContext(context.Context) JobDefinitionNodeRangePropertyArrayOutput } -func (o JobDefinitionPodPropertiesOutput) HostNetwork() pulumi.BoolPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *bool { return v.HostNetwork }).(pulumi.BoolPtrOutput) +type JobDefinitionNodeRangePropertyArray []JobDefinitionNodeRangePropertyInput + +func (JobDefinitionNodeRangePropertyArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionNodeRangeProperty)(nil)).Elem() } -func (o JobDefinitionPodPropertiesOutput) Metadata() JobDefinitionMetadataPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *JobDefinitionMetadata { return v.Metadata }).(JobDefinitionMetadataPtrOutput) +func (i JobDefinitionNodeRangePropertyArray) ToJobDefinitionNodeRangePropertyArrayOutput() JobDefinitionNodeRangePropertyArrayOutput { + return i.ToJobDefinitionNodeRangePropertyArrayOutputWithContext(context.Background()) } -func (o JobDefinitionPodPropertiesOutput) ServiceAccountName() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) *string { return v.ServiceAccountName }).(pulumi.StringPtrOutput) +func (i JobDefinitionNodeRangePropertyArray) ToJobDefinitionNodeRangePropertyArrayOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionNodeRangePropertyArrayOutput) } -func (o JobDefinitionPodPropertiesOutput) Volumes() JobDefinitionEksVolumeArrayOutput { - return o.ApplyT(func(v JobDefinitionPodProperties) []JobDefinitionEksVolume { return v.Volumes }).(JobDefinitionEksVolumeArrayOutput) +func (i JobDefinitionNodeRangePropertyArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionNodeRangeProperty] { + return pulumix.Output[[]JobDefinitionNodeRangeProperty]{ + OutputState: i.ToJobDefinitionNodeRangePropertyArrayOutputWithContext(ctx).OutputState, + } } -type JobDefinitionPodPropertiesPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionNodeRangePropertyOutput struct{ *pulumi.OutputState } -func (JobDefinitionPodPropertiesPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionPodProperties)(nil)).Elem() +func (JobDefinitionNodeRangePropertyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionNodeRangeProperty)(nil)).Elem() } -func (o JobDefinitionPodPropertiesPtrOutput) ToJobDefinitionPodPropertiesPtrOutput() JobDefinitionPodPropertiesPtrOutput { +func (o JobDefinitionNodeRangePropertyOutput) ToJobDefinitionNodeRangePropertyOutput() JobDefinitionNodeRangePropertyOutput { return o } -func (o JobDefinitionPodPropertiesPtrOutput) ToJobDefinitionPodPropertiesPtrOutputWithContext(ctx context.Context) JobDefinitionPodPropertiesPtrOutput { +func (o JobDefinitionNodeRangePropertyOutput) ToJobDefinitionNodeRangePropertyOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyOutput { return o } -func (o JobDefinitionPodPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionPodProperties] { - return pulumix.Output[*JobDefinitionPodProperties]{ +func (o JobDefinitionNodeRangePropertyOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionNodeRangeProperty] { + return pulumix.Output[JobDefinitionNodeRangeProperty]{ OutputState: o.OutputState, } } -func (o JobDefinitionPodPropertiesPtrOutput) Elem() JobDefinitionPodPropertiesOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) JobDefinitionPodProperties { - if v != nil { - return *v - } - var ret JobDefinitionPodProperties - return ret - }).(JobDefinitionPodPropertiesOutput) +func (o JobDefinitionNodeRangePropertyOutput) Container() JobDefinitionContainerPropertiesPtrOutput { + return o.ApplyT(func(v JobDefinitionNodeRangeProperty) *JobDefinitionContainerProperties { return v.Container }).(JobDefinitionContainerPropertiesPtrOutput) } -func (o JobDefinitionPodPropertiesPtrOutput) Containers() JobDefinitionEksContainerArrayOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) []JobDefinitionEksContainer { - if v == nil { - return nil - } - return v.Containers - }).(JobDefinitionEksContainerArrayOutput) +func (o JobDefinitionNodeRangePropertyOutput) TargetNodes() pulumi.StringOutput { + return o.ApplyT(func(v JobDefinitionNodeRangeProperty) string { return v.TargetNodes }).(pulumi.StringOutput) } -func (o JobDefinitionPodPropertiesPtrOutput) DnsPolicy() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *string { - if v == nil { - return nil - } - return v.DnsPolicy - }).(pulumi.StringPtrOutput) +type JobDefinitionNodeRangePropertyArrayOutput struct{ *pulumi.OutputState } + +func (JobDefinitionNodeRangePropertyArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionNodeRangeProperty)(nil)).Elem() } -func (o JobDefinitionPodPropertiesPtrOutput) HostNetwork() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *bool { - if v == nil { - return nil - } - return v.HostNetwork - }).(pulumi.BoolPtrOutput) +func (o JobDefinitionNodeRangePropertyArrayOutput) ToJobDefinitionNodeRangePropertyArrayOutput() JobDefinitionNodeRangePropertyArrayOutput { + return o } -func (o JobDefinitionPodPropertiesPtrOutput) Metadata() JobDefinitionMetadataPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *JobDefinitionMetadata { - if v == nil { - return nil - } - return v.Metadata - }).(JobDefinitionMetadataPtrOutput) +func (o JobDefinitionNodeRangePropertyArrayOutput) ToJobDefinitionNodeRangePropertyArrayOutputWithContext(ctx context.Context) JobDefinitionNodeRangePropertyArrayOutput { + return o } -func (o JobDefinitionPodPropertiesPtrOutput) ServiceAccountName() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) *string { - if v == nil { - return nil - } - return v.ServiceAccountName - }).(pulumi.StringPtrOutput) +func (o JobDefinitionNodeRangePropertyArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionNodeRangeProperty] { + return pulumix.Output[[]JobDefinitionNodeRangeProperty]{ + OutputState: o.OutputState, + } } -func (o JobDefinitionPodPropertiesPtrOutput) Volumes() JobDefinitionEksVolumeArrayOutput { - return o.ApplyT(func(v *JobDefinitionPodProperties) []JobDefinitionEksVolume { - if v == nil { - return nil - } - return v.Volumes - }).(JobDefinitionEksVolumeArrayOutput) +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 JobDefinitionResourceRequirement struct { @@ -5816,333 +6320,161 @@ type JobDefinitionRetryStrategyInput interface { ToJobDefinitionRetryStrategyOutput() JobDefinitionRetryStrategyOutput ToJobDefinitionRetryStrategyOutputWithContext(context.Context) JobDefinitionRetryStrategyOutput } - -type JobDefinitionRetryStrategyArgs struct { - Attempts pulumi.IntPtrInput `pulumi:"attempts"` - EvaluateOnExit JobDefinitionEvaluateOnExitArrayInput `pulumi:"evaluateOnExit"` -} - -func (JobDefinitionRetryStrategyArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionRetryStrategy)(nil)).Elem() -} - -func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyOutput() JobDefinitionRetryStrategyOutput { - return i.ToJobDefinitionRetryStrategyOutputWithContext(context.Background()) -} - -func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRetryStrategyOutput) -} - -func (i JobDefinitionRetryStrategyArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionRetryStrategy] { - return pulumix.Output[JobDefinitionRetryStrategy]{ - OutputState: i.ToJobDefinitionRetryStrategyOutputWithContext(ctx).OutputState, - } -} - -func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput { - return i.ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Background()) -} - -func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRetryStrategyOutput).ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx) -} - -// JobDefinitionRetryStrategyPtrInput is an input type that accepts JobDefinitionRetryStrategyArgs, JobDefinitionRetryStrategyPtr and JobDefinitionRetryStrategyPtrOutput values. -// You can construct a concrete instance of `JobDefinitionRetryStrategyPtrInput` via: -// -// JobDefinitionRetryStrategyArgs{...} -// -// or: -// -// nil -type JobDefinitionRetryStrategyPtrInput interface { - pulumi.Input - - ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput - ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Context) JobDefinitionRetryStrategyPtrOutput -} - -type jobDefinitionRetryStrategyPtrType JobDefinitionRetryStrategyArgs - -func JobDefinitionRetryStrategyPtr(v *JobDefinitionRetryStrategyArgs) JobDefinitionRetryStrategyPtrInput { - return (*jobDefinitionRetryStrategyPtrType)(v) -} - -func (*jobDefinitionRetryStrategyPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionRetryStrategy)(nil)).Elem() -} - -func (i *jobDefinitionRetryStrategyPtrType) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput { - return i.ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Background()) -} - -func (i *jobDefinitionRetryStrategyPtrType) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRetryStrategyPtrOutput) -} - -func (i *jobDefinitionRetryStrategyPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionRetryStrategy] { - return pulumix.Output[*JobDefinitionRetryStrategy]{ - OutputState: i.ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx).OutputState, - } -} - -type JobDefinitionRetryStrategyOutput struct{ *pulumi.OutputState } - -func (JobDefinitionRetryStrategyOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionRetryStrategy)(nil)).Elem() -} - -func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyOutput() JobDefinitionRetryStrategyOutput { - return o -} - -func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyOutput { - return o -} - -func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput { - return o.ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Background()) -} - -func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionRetryStrategy) *JobDefinitionRetryStrategy { - return &v - }).(JobDefinitionRetryStrategyPtrOutput) -} - -func (o JobDefinitionRetryStrategyOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionRetryStrategy] { - return pulumix.Output[JobDefinitionRetryStrategy]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionRetryStrategyOutput) Attempts() pulumi.IntPtrOutput { - return o.ApplyT(func(v JobDefinitionRetryStrategy) *int { return v.Attempts }).(pulumi.IntPtrOutput) -} - -func (o JobDefinitionRetryStrategyOutput) EvaluateOnExit() JobDefinitionEvaluateOnExitArrayOutput { - return o.ApplyT(func(v JobDefinitionRetryStrategy) []JobDefinitionEvaluateOnExit { return v.EvaluateOnExit }).(JobDefinitionEvaluateOnExitArrayOutput) -} - -type JobDefinitionRetryStrategyPtrOutput struct{ *pulumi.OutputState } - -func (JobDefinitionRetryStrategyPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionRetryStrategy)(nil)).Elem() -} - -func (o JobDefinitionRetryStrategyPtrOutput) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput { - return o -} - -func (o JobDefinitionRetryStrategyPtrOutput) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput { - return o -} - -func (o JobDefinitionRetryStrategyPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionRetryStrategy] { - return pulumix.Output[*JobDefinitionRetryStrategy]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionRetryStrategyPtrOutput) Elem() JobDefinitionRetryStrategyOutput { - return o.ApplyT(func(v *JobDefinitionRetryStrategy) JobDefinitionRetryStrategy { - if v != nil { - return *v - } - var ret JobDefinitionRetryStrategy - return ret - }).(JobDefinitionRetryStrategyOutput) -} - -func (o JobDefinitionRetryStrategyPtrOutput) Attempts() pulumi.IntPtrOutput { - return o.ApplyT(func(v *JobDefinitionRetryStrategy) *int { - if v == nil { - return nil - } - return v.Attempts - }).(pulumi.IntPtrOutput) -} - -func (o JobDefinitionRetryStrategyPtrOutput) EvaluateOnExit() JobDefinitionEvaluateOnExitArrayOutput { - return o.ApplyT(func(v *JobDefinitionRetryStrategy) []JobDefinitionEvaluateOnExit { - if v == nil { - return nil - } - return v.EvaluateOnExit - }).(JobDefinitionEvaluateOnExitArrayOutput) -} - -type JobDefinitionRuntimePlatform struct { - CpuArchitecture *string `pulumi:"cpuArchitecture"` - OperatingSystemFamily *string `pulumi:"operatingSystemFamily"` -} - -// JobDefinitionRuntimePlatformInput is an input type that accepts JobDefinitionRuntimePlatformArgs and JobDefinitionRuntimePlatformOutput values. -// You can construct a concrete instance of `JobDefinitionRuntimePlatformInput` via: -// -// JobDefinitionRuntimePlatformArgs{...} -type JobDefinitionRuntimePlatformInput interface { - pulumi.Input - - ToJobDefinitionRuntimePlatformOutput() JobDefinitionRuntimePlatformOutput - ToJobDefinitionRuntimePlatformOutputWithContext(context.Context) JobDefinitionRuntimePlatformOutput -} - -type JobDefinitionRuntimePlatformArgs struct { - CpuArchitecture pulumi.StringPtrInput `pulumi:"cpuArchitecture"` - OperatingSystemFamily pulumi.StringPtrInput `pulumi:"operatingSystemFamily"` + +type JobDefinitionRetryStrategyArgs struct { + Attempts pulumi.IntPtrInput `pulumi:"attempts"` + EvaluateOnExit JobDefinitionEvaluateOnExitArrayInput `pulumi:"evaluateOnExit"` } -func (JobDefinitionRuntimePlatformArgs) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionRuntimePlatform)(nil)).Elem() +func (JobDefinitionRetryStrategyArgs) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionRetryStrategy)(nil)).Elem() } -func (i JobDefinitionRuntimePlatformArgs) ToJobDefinitionRuntimePlatformOutput() JobDefinitionRuntimePlatformOutput { - return i.ToJobDefinitionRuntimePlatformOutputWithContext(context.Background()) +func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyOutput() JobDefinitionRetryStrategyOutput { + return i.ToJobDefinitionRetryStrategyOutputWithContext(context.Background()) } -func (i JobDefinitionRuntimePlatformArgs) ToJobDefinitionRuntimePlatformOutputWithContext(ctx context.Context) JobDefinitionRuntimePlatformOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRuntimePlatformOutput) +func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRetryStrategyOutput) } -func (i JobDefinitionRuntimePlatformArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionRuntimePlatform] { - return pulumix.Output[JobDefinitionRuntimePlatform]{ - OutputState: i.ToJobDefinitionRuntimePlatformOutputWithContext(ctx).OutputState, +func (i JobDefinitionRetryStrategyArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionRetryStrategy] { + return pulumix.Output[JobDefinitionRetryStrategy]{ + OutputState: i.ToJobDefinitionRetryStrategyOutputWithContext(ctx).OutputState, } } -func (i JobDefinitionRuntimePlatformArgs) ToJobDefinitionRuntimePlatformPtrOutput() JobDefinitionRuntimePlatformPtrOutput { - return i.ToJobDefinitionRuntimePlatformPtrOutputWithContext(context.Background()) +func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput { + return i.ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Background()) } -func (i JobDefinitionRuntimePlatformArgs) ToJobDefinitionRuntimePlatformPtrOutputWithContext(ctx context.Context) JobDefinitionRuntimePlatformPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRuntimePlatformOutput).ToJobDefinitionRuntimePlatformPtrOutputWithContext(ctx) +func (i JobDefinitionRetryStrategyArgs) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRetryStrategyOutput).ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx) } -// JobDefinitionRuntimePlatformPtrInput is an input type that accepts JobDefinitionRuntimePlatformArgs, JobDefinitionRuntimePlatformPtr and JobDefinitionRuntimePlatformPtrOutput values. -// You can construct a concrete instance of `JobDefinitionRuntimePlatformPtrInput` via: +// JobDefinitionRetryStrategyPtrInput is an input type that accepts JobDefinitionRetryStrategyArgs, JobDefinitionRetryStrategyPtr and JobDefinitionRetryStrategyPtrOutput values. +// You can construct a concrete instance of `JobDefinitionRetryStrategyPtrInput` via: // -// JobDefinitionRuntimePlatformArgs{...} +// JobDefinitionRetryStrategyArgs{...} // // or: // // nil -type JobDefinitionRuntimePlatformPtrInput interface { +type JobDefinitionRetryStrategyPtrInput interface { pulumi.Input - ToJobDefinitionRuntimePlatformPtrOutput() JobDefinitionRuntimePlatformPtrOutput - ToJobDefinitionRuntimePlatformPtrOutputWithContext(context.Context) JobDefinitionRuntimePlatformPtrOutput + ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput + ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Context) JobDefinitionRetryStrategyPtrOutput } -type jobDefinitionRuntimePlatformPtrType JobDefinitionRuntimePlatformArgs +type jobDefinitionRetryStrategyPtrType JobDefinitionRetryStrategyArgs -func JobDefinitionRuntimePlatformPtr(v *JobDefinitionRuntimePlatformArgs) JobDefinitionRuntimePlatformPtrInput { - return (*jobDefinitionRuntimePlatformPtrType)(v) +func JobDefinitionRetryStrategyPtr(v *JobDefinitionRetryStrategyArgs) JobDefinitionRetryStrategyPtrInput { + return (*jobDefinitionRetryStrategyPtrType)(v) } -func (*jobDefinitionRuntimePlatformPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionRuntimePlatform)(nil)).Elem() +func (*jobDefinitionRetryStrategyPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionRetryStrategy)(nil)).Elem() } -func (i *jobDefinitionRuntimePlatformPtrType) ToJobDefinitionRuntimePlatformPtrOutput() JobDefinitionRuntimePlatformPtrOutput { - return i.ToJobDefinitionRuntimePlatformPtrOutputWithContext(context.Background()) +func (i *jobDefinitionRetryStrategyPtrType) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput { + return i.ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Background()) } -func (i *jobDefinitionRuntimePlatformPtrType) ToJobDefinitionRuntimePlatformPtrOutputWithContext(ctx context.Context) JobDefinitionRuntimePlatformPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRuntimePlatformPtrOutput) +func (i *jobDefinitionRetryStrategyPtrType) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionRetryStrategyPtrOutput) } -func (i *jobDefinitionRuntimePlatformPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionRuntimePlatform] { - return pulumix.Output[*JobDefinitionRuntimePlatform]{ - OutputState: i.ToJobDefinitionRuntimePlatformPtrOutputWithContext(ctx).OutputState, +func (i *jobDefinitionRetryStrategyPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionRetryStrategy] { + return pulumix.Output[*JobDefinitionRetryStrategy]{ + OutputState: i.ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx).OutputState, } } -type JobDefinitionRuntimePlatformOutput struct{ *pulumi.OutputState } +type JobDefinitionRetryStrategyOutput struct{ *pulumi.OutputState } -func (JobDefinitionRuntimePlatformOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionRuntimePlatform)(nil)).Elem() +func (JobDefinitionRetryStrategyOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionRetryStrategy)(nil)).Elem() } -func (o JobDefinitionRuntimePlatformOutput) ToJobDefinitionRuntimePlatformOutput() JobDefinitionRuntimePlatformOutput { +func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyOutput() JobDefinitionRetryStrategyOutput { return o } -func (o JobDefinitionRuntimePlatformOutput) ToJobDefinitionRuntimePlatformOutputWithContext(ctx context.Context) JobDefinitionRuntimePlatformOutput { +func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyOutput { return o } -func (o JobDefinitionRuntimePlatformOutput) ToJobDefinitionRuntimePlatformPtrOutput() JobDefinitionRuntimePlatformPtrOutput { - return o.ToJobDefinitionRuntimePlatformPtrOutputWithContext(context.Background()) +func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput { + return o.ToJobDefinitionRetryStrategyPtrOutputWithContext(context.Background()) } -func (o JobDefinitionRuntimePlatformOutput) ToJobDefinitionRuntimePlatformPtrOutputWithContext(ctx context.Context) JobDefinitionRuntimePlatformPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionRuntimePlatform) *JobDefinitionRuntimePlatform { +func (o JobDefinitionRetryStrategyOutput) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionRetryStrategy) *JobDefinitionRetryStrategy { return &v - }).(JobDefinitionRuntimePlatformPtrOutput) + }).(JobDefinitionRetryStrategyPtrOutput) } -func (o JobDefinitionRuntimePlatformOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionRuntimePlatform] { - return pulumix.Output[JobDefinitionRuntimePlatform]{ +func (o JobDefinitionRetryStrategyOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionRetryStrategy] { + return pulumix.Output[JobDefinitionRetryStrategy]{ OutputState: o.OutputState, } } -func (o JobDefinitionRuntimePlatformOutput) CpuArchitecture() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionRuntimePlatform) *string { return v.CpuArchitecture }).(pulumi.StringPtrOutput) +func (o JobDefinitionRetryStrategyOutput) Attempts() pulumi.IntPtrOutput { + return o.ApplyT(func(v JobDefinitionRetryStrategy) *int { return v.Attempts }).(pulumi.IntPtrOutput) } -func (o JobDefinitionRuntimePlatformOutput) OperatingSystemFamily() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionRuntimePlatform) *string { return v.OperatingSystemFamily }).(pulumi.StringPtrOutput) +func (o JobDefinitionRetryStrategyOutput) EvaluateOnExit() JobDefinitionEvaluateOnExitArrayOutput { + return o.ApplyT(func(v JobDefinitionRetryStrategy) []JobDefinitionEvaluateOnExit { return v.EvaluateOnExit }).(JobDefinitionEvaluateOnExitArrayOutput) } -type JobDefinitionRuntimePlatformPtrOutput struct{ *pulumi.OutputState } +type JobDefinitionRetryStrategyPtrOutput struct{ *pulumi.OutputState } -func (JobDefinitionRuntimePlatformPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**JobDefinitionRuntimePlatform)(nil)).Elem() +func (JobDefinitionRetryStrategyPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**JobDefinitionRetryStrategy)(nil)).Elem() } -func (o JobDefinitionRuntimePlatformPtrOutput) ToJobDefinitionRuntimePlatformPtrOutput() JobDefinitionRuntimePlatformPtrOutput { +func (o JobDefinitionRetryStrategyPtrOutput) ToJobDefinitionRetryStrategyPtrOutput() JobDefinitionRetryStrategyPtrOutput { return o } -func (o JobDefinitionRuntimePlatformPtrOutput) ToJobDefinitionRuntimePlatformPtrOutputWithContext(ctx context.Context) JobDefinitionRuntimePlatformPtrOutput { +func (o JobDefinitionRetryStrategyPtrOutput) ToJobDefinitionRetryStrategyPtrOutputWithContext(ctx context.Context) JobDefinitionRetryStrategyPtrOutput { return o } -func (o JobDefinitionRuntimePlatformPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionRuntimePlatform] { - return pulumix.Output[*JobDefinitionRuntimePlatform]{ +func (o JobDefinitionRetryStrategyPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionRetryStrategy] { + return pulumix.Output[*JobDefinitionRetryStrategy]{ OutputState: o.OutputState, } } -func (o JobDefinitionRuntimePlatformPtrOutput) Elem() JobDefinitionRuntimePlatformOutput { - return o.ApplyT(func(v *JobDefinitionRuntimePlatform) JobDefinitionRuntimePlatform { +func (o JobDefinitionRetryStrategyPtrOutput) Elem() JobDefinitionRetryStrategyOutput { + return o.ApplyT(func(v *JobDefinitionRetryStrategy) JobDefinitionRetryStrategy { if v != nil { return *v } - var ret JobDefinitionRuntimePlatform + var ret JobDefinitionRetryStrategy return ret - }).(JobDefinitionRuntimePlatformOutput) + }).(JobDefinitionRetryStrategyOutput) } -func (o JobDefinitionRuntimePlatformPtrOutput) CpuArchitecture() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionRuntimePlatform) *string { +func (o JobDefinitionRetryStrategyPtrOutput) Attempts() pulumi.IntPtrOutput { + return o.ApplyT(func(v *JobDefinitionRetryStrategy) *int { if v == nil { return nil } - return v.CpuArchitecture - }).(pulumi.StringPtrOutput) + return v.Attempts + }).(pulumi.IntPtrOutput) } -func (o JobDefinitionRuntimePlatformPtrOutput) OperatingSystemFamily() pulumi.StringPtrOutput { - return o.ApplyT(func(v *JobDefinitionRuntimePlatform) *string { +func (o JobDefinitionRetryStrategyPtrOutput) EvaluateOnExit() JobDefinitionEvaluateOnExitArrayOutput { + return o.ApplyT(func(v *JobDefinitionRetryStrategy) []JobDefinitionEvaluateOnExit { if v == nil { return nil } - return v.OperatingSystemFamily - }).(pulumi.StringPtrOutput) + return v.EvaluateOnExit + }).(JobDefinitionEvaluateOnExitArrayOutput) } type JobDefinitionSecret struct { @@ -6269,163 +6601,6 @@ func (o JobDefinitionSecretArrayOutput) Index(i pulumi.IntInput) JobDefinitionSe }).(JobDefinitionSecretOutput) } -type JobDefinitionTimeout struct { - 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 { - 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) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionTimeout] { - return pulumix.Output[JobDefinitionTimeout]{ - OutputState: i.ToJobDefinitionTimeoutOutputWithContext(ctx).OutputState, - } -} - -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) -} - -func (i *jobDefinitionTimeoutPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionTimeout] { - return pulumix.Output[*JobDefinitionTimeout]{ - OutputState: i.ToJobDefinitionTimeoutPtrOutputWithContext(ctx).OutputState, - } -} - -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) -} - -func (o JobDefinitionTimeoutOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionTimeout] { - return pulumix.Output[JobDefinitionTimeout]{ - OutputState: o.OutputState, - } -} - -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) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionTimeout] { - return pulumix.Output[*JobDefinitionTimeout]{ - OutputState: o.OutputState, - } -} - -func (o JobDefinitionTimeoutPtrOutput) Elem() JobDefinitionTimeoutOutput { - return o.ApplyT(func(v *JobDefinitionTimeout) JobDefinitionTimeout { - if v != nil { - return *v - } - var ret JobDefinitionTimeout - return ret - }).(JobDefinitionTimeoutOutput) -} - -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 { ContainerPath string `pulumi:"containerPath"` MountOptions []string `pulumi:"mountOptions"` @@ -6686,291 +6861,134 @@ func (o JobDefinitionUlimitArrayOutput) Index(i pulumi.IntInput) JobDefinitionUl }).(JobDefinitionUlimitOutput) } -type JobDefinitionVolumes struct { +type JobDefinitionVolume struct { EfsVolumeConfiguration *JobDefinitionEfsVolumeConfiguration `pulumi:"efsVolumeConfiguration"` - Host *JobDefinitionVolumesHost `pulumi:"host"` + Host *JobDefinitionHost `pulumi:"host"` 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 { +type JobDefinitionVolumeArgs struct { EfsVolumeConfiguration JobDefinitionEfsVolumeConfigurationPtrInput `pulumi:"efsVolumeConfiguration"` - Host JobDefinitionVolumesHostPtrInput `pulumi:"host"` + Host JobDefinitionHostPtrInput `pulumi:"host"` 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) } -func (i JobDefinitionVolumesArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionVolumes] { - return pulumix.Output[JobDefinitionVolumes]{ - OutputState: i.ToJobDefinitionVolumesOutputWithContext(ctx).OutputState, +func (i JobDefinitionVolumeArgs) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionVolume] { + return pulumix.Output[JobDefinitionVolume]{ + OutputState: i.ToJobDefinitionVolumeOutputWithContext(ctx).OutputState, } } -// 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 -} - -type JobDefinitionVolumesArray []JobDefinitionVolumesInput - -func (JobDefinitionVolumesArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionVolumes)(nil)).Elem() + ToJobDefinitionVolumeArrayOutput() JobDefinitionVolumeArrayOutput + ToJobDefinitionVolumeArrayOutputWithContext(context.Context) JobDefinitionVolumeArrayOutput } -func (i JobDefinitionVolumesArray) ToJobDefinitionVolumesArrayOutput() JobDefinitionVolumesArrayOutput { - return i.ToJobDefinitionVolumesArrayOutputWithContext(context.Background()) -} - -func (i JobDefinitionVolumesArray) ToJobDefinitionVolumesArrayOutputWithContext(ctx context.Context) JobDefinitionVolumesArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumesArrayOutput) -} - -func (i JobDefinitionVolumesArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionVolumes] { - return pulumix.Output[[]JobDefinitionVolumes]{ - OutputState: i.ToJobDefinitionVolumesArrayOutputWithContext(ctx).OutputState, - } -} +type JobDefinitionVolumeArray []JobDefinitionVolumeInput -type JobDefinitionVolumesOutput struct{ *pulumi.OutputState } - -func (JobDefinitionVolumesOutput) ElementType() reflect.Type { - return reflect.TypeOf((*JobDefinitionVolumes)(nil)).Elem() +func (JobDefinitionVolumeArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]JobDefinitionVolume)(nil)).Elem() } -func (o JobDefinitionVolumesOutput) ToJobDefinitionVolumesOutput() JobDefinitionVolumesOutput { - return o +func (i JobDefinitionVolumeArray) ToJobDefinitionVolumeArrayOutput() JobDefinitionVolumeArrayOutput { + return i.ToJobDefinitionVolumeArrayOutputWithContext(context.Background()) } -func (o JobDefinitionVolumesOutput) ToJobDefinitionVolumesOutputWithContext(ctx context.Context) JobDefinitionVolumesOutput { - return o +func (i JobDefinitionVolumeArray) ToJobDefinitionVolumeArrayOutputWithContext(ctx context.Context) JobDefinitionVolumeArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(JobDefinitionVolumeArrayOutput) } -func (o JobDefinitionVolumesOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionVolumes] { - return pulumix.Output[JobDefinitionVolumes]{ - OutputState: o.OutputState, +func (i JobDefinitionVolumeArray) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionVolume] { + return pulumix.Output[[]JobDefinitionVolume]{ + OutputState: i.ToJobDefinitionVolumeArrayOutputWithContext(ctx).OutputState, } } -func (o JobDefinitionVolumesOutput) EfsVolumeConfiguration() JobDefinitionEfsVolumeConfigurationPtrOutput { - return o.ApplyT(func(v JobDefinitionVolumes) *JobDefinitionEfsVolumeConfiguration { return v.EfsVolumeConfiguration }).(JobDefinitionEfsVolumeConfigurationPtrOutput) -} - -func (o JobDefinitionVolumesOutput) Host() JobDefinitionVolumesHostPtrOutput { - return o.ApplyT(func(v JobDefinitionVolumes) *JobDefinitionVolumesHost { return v.Host }).(JobDefinitionVolumesHostPtrOutput) -} - -func (o JobDefinitionVolumesOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v JobDefinitionVolumes) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -type JobDefinitionVolumesArrayOutput struct{ *pulumi.OutputState } +type JobDefinitionVolumeOutput struct{ *pulumi.OutputState } -func (JobDefinitionVolumesArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]JobDefinitionVolumes)(nil)).Elem() +func (JobDefinitionVolumeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*JobDefinitionVolume)(nil)).Elem() } -func (o JobDefinitionVolumesArrayOutput) ToJobDefinitionVolumesArrayOutput() JobDefinitionVolumesArrayOutput { +func (o JobDefinitionVolumeOutput) ToJobDefinitionVolumeOutput() JobDefinitionVolumeOutput { return o } -func (o JobDefinitionVolumesArrayOutput) ToJobDefinitionVolumesArrayOutputWithContext(ctx context.Context) JobDefinitionVolumesArrayOutput { +func (o JobDefinitionVolumeOutput) ToJobDefinitionVolumeOutputWithContext(ctx context.Context) JobDefinitionVolumeOutput { return o } -func (o JobDefinitionVolumesArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionVolumes] { - return pulumix.Output[[]JobDefinitionVolumes]{ +func (o JobDefinitionVolumeOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionVolume] { + return pulumix.Output[JobDefinitionVolume]{ OutputState: o.OutputState, } } -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 { - 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 { - 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) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionVolumesHost] { - return pulumix.Output[JobDefinitionVolumesHost]{ - OutputState: i.ToJobDefinitionVolumesHostOutputWithContext(ctx).OutputState, - } -} - -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) -} - -func (i *jobDefinitionVolumesHostPtrType) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionVolumesHost] { - return pulumix.Output[*JobDefinitionVolumesHost]{ - OutputState: i.ToJobDefinitionVolumesHostPtrOutputWithContext(ctx).OutputState, - } -} - -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 JobDefinitionVolumeOutput) EfsVolumeConfiguration() JobDefinitionEfsVolumeConfigurationPtrOutput { + return o.ApplyT(func(v JobDefinitionVolume) *JobDefinitionEfsVolumeConfiguration { return v.EfsVolumeConfiguration }).(JobDefinitionEfsVolumeConfigurationPtrOutput) } -func (o JobDefinitionVolumesHostOutput) ToJobDefinitionVolumesHostPtrOutputWithContext(ctx context.Context) JobDefinitionVolumesHostPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v JobDefinitionVolumesHost) *JobDefinitionVolumesHost { - return &v - }).(JobDefinitionVolumesHostPtrOutput) -} - -func (o JobDefinitionVolumesHostOutput) ToOutput(ctx context.Context) pulumix.Output[JobDefinitionVolumesHost] { - return pulumix.Output[JobDefinitionVolumesHost]{ - OutputState: o.OutputState, - } +func (o JobDefinitionVolumeOutput) Host() JobDefinitionHostPtrOutput { + return o.ApplyT(func(v JobDefinitionVolume) *JobDefinitionHost { return v.Host }).(JobDefinitionHostPtrOutput) } -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) ToOutput(ctx context.Context) pulumix.Output[*JobDefinitionVolumesHost] { - return pulumix.Output[*JobDefinitionVolumesHost]{ +func (o JobDefinitionVolumeArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]JobDefinitionVolume] { + return pulumix.Output[[]JobDefinitionVolume]{ OutputState: o.OutputState, } } -func (o JobDefinitionVolumesHostPtrOutput) Elem() JobDefinitionVolumesHostOutput { - return o.ApplyT(func(v *JobDefinitionVolumesHost) JobDefinitionVolumesHost { - if v != nil { - return *v - } - var ret JobDefinitionVolumesHost - return ret - }).(JobDefinitionVolumesHostOutput) -} - -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 { @@ -7426,12 +7444,24 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ComputeEnvironmentLaunchTemplateSpecificationPtrInput)(nil)).Elem(), ComputeEnvironmentLaunchTemplateSpecificationArgs{}) 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((*JobDefinitionContainerPropertiesEphemeralStoragePropertiesInput)(nil)).Elem(), JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrInput)(nil)).Elem(), JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesInput)(nil)).Elem(), JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrInput)(nil)).Elem(), JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesLinuxParametersPropertiesInput)(nil)).Elem(), JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrInput)(nil)).Elem(), JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesLogConfigurationPropertiesInput)(nil)).Elem(), JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrInput)(nil)).Elem(), JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesNetworkConfigurationPropertiesInput)(nil)).Elem(), JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrInput)(nil)).Elem(), JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesRuntimePlatformPropertiesInput)(nil)).Elem(), JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrInput)(nil)).Elem(), JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionDeviceInput)(nil)).Elem(), JobDefinitionDeviceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionDeviceArrayInput)(nil)).Elem(), JobDefinitionDeviceArray{}) + 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{}) @@ -7448,6 +7478,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{}) @@ -7456,46 +7490,30 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEksVolumeArrayInput)(nil)).Elem(), JobDefinitionEksVolumeArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEnvironmentInput)(nil)).Elem(), JobDefinitionEnvironmentArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEnvironmentArrayInput)(nil)).Elem(), JobDefinitionEnvironmentArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionEphemeralStorageInput)(nil)).Elem(), JobDefinitionEphemeralStorageArgs{}) - 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((*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((*JobDefinitionNetworkConfigurationInput)(nil)).Elem(), JobDefinitionNetworkConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionNetworkConfigurationPtrInput)(nil)).Elem(), JobDefinitionNetworkConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionHostInput)(nil)).Elem(), JobDefinitionHostArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionHostPtrInput)(nil)).Elem(), JobDefinitionHostArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionJobTimeoutInput)(nil)).Elem(), JobDefinitionJobTimeoutArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionJobTimeoutPtrInput)(nil)).Elem(), JobDefinitionJobTimeoutArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMountPointInput)(nil)).Elem(), JobDefinitionMountPointArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionMountPointArrayInput)(nil)).Elem(), JobDefinitionMountPointArray{}) 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((*JobDefinitionResourceRequirementInput)(nil)).Elem(), JobDefinitionResourceRequirementArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionResourceRequirementArrayInput)(nil)).Elem(), JobDefinitionResourceRequirementArray{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionRetryStrategyInput)(nil)).Elem(), JobDefinitionRetryStrategyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionRetryStrategyPtrInput)(nil)).Elem(), JobDefinitionRetryStrategyArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionRuntimePlatformInput)(nil)).Elem(), JobDefinitionRuntimePlatformArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionRuntimePlatformPtrInput)(nil)).Elem(), JobDefinitionRuntimePlatformArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionSecretInput)(nil)).Elem(), JobDefinitionSecretArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*JobDefinitionSecretArrayInput)(nil)).Elem(), JobDefinitionSecretArray{}) - 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((*SchedulingPolicyFairsharePolicyInput)(nil)).Elem(), SchedulingPolicyFairsharePolicyArgs{}) @@ -7512,12 +7530,24 @@ func init() { pulumi.RegisterOutputType(ComputeEnvironmentLaunchTemplateSpecificationPtrOutput{}) pulumi.RegisterOutputType(ComputeEnvironmentUpdatePolicyOutput{}) pulumi.RegisterOutputType(ComputeEnvironmentUpdatePolicyPtrOutput{}) - pulumi.RegisterOutputType(JobDefinitionAuthorizationConfigOutput{}) - pulumi.RegisterOutputType(JobDefinitionAuthorizationConfigPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionContainerPropertiesOutput{}) pulumi.RegisterOutputType(JobDefinitionContainerPropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesEphemeralStoragePropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesEphemeralStoragePropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesLinuxParametersPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesLinuxParametersPropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesLogConfigurationPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesLogConfigurationPropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesNetworkConfigurationPropertiesPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesRuntimePlatformPropertiesOutput{}) + pulumi.RegisterOutputType(JobDefinitionContainerPropertiesRuntimePlatformPropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionDeviceOutput{}) pulumi.RegisterOutputType(JobDefinitionDeviceArrayOutput{}) + pulumi.RegisterOutputType(JobDefinitionEfsAuthorizationConfigOutput{}) + pulumi.RegisterOutputType(JobDefinitionEfsAuthorizationConfigPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEfsVolumeConfigurationOutput{}) pulumi.RegisterOutputType(JobDefinitionEfsVolumeConfigurationPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEksContainerOutput{}) @@ -7534,6 +7564,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{}) @@ -7542,46 +7576,30 @@ func init() { pulumi.RegisterOutputType(JobDefinitionEksVolumeArrayOutput{}) pulumi.RegisterOutputType(JobDefinitionEnvironmentOutput{}) pulumi.RegisterOutputType(JobDefinitionEnvironmentArrayOutput{}) - pulumi.RegisterOutputType(JobDefinitionEphemeralStorageOutput{}) - pulumi.RegisterOutputType(JobDefinitionEphemeralStoragePtrOutput{}) pulumi.RegisterOutputType(JobDefinitionEvaluateOnExitOutput{}) pulumi.RegisterOutputType(JobDefinitionEvaluateOnExitArrayOutput{}) - pulumi.RegisterOutputType(JobDefinitionFargatePlatformConfigurationOutput{}) - pulumi.RegisterOutputType(JobDefinitionFargatePlatformConfigurationPtrOutput{}) - 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(JobDefinitionNetworkConfigurationOutput{}) - pulumi.RegisterOutputType(JobDefinitionNetworkConfigurationPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionHostOutput{}) + pulumi.RegisterOutputType(JobDefinitionHostPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionJobTimeoutOutput{}) + pulumi.RegisterOutputType(JobDefinitionJobTimeoutPtrOutput{}) + pulumi.RegisterOutputType(JobDefinitionMountPointOutput{}) + pulumi.RegisterOutputType(JobDefinitionMountPointArrayOutput{}) pulumi.RegisterOutputType(JobDefinitionNodePropertiesOutput{}) pulumi.RegisterOutputType(JobDefinitionNodePropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionNodeRangePropertyOutput{}) pulumi.RegisterOutputType(JobDefinitionNodeRangePropertyArrayOutput{}) - pulumi.RegisterOutputType(JobDefinitionPodPropertiesOutput{}) - pulumi.RegisterOutputType(JobDefinitionPodPropertiesPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionResourceRequirementOutput{}) pulumi.RegisterOutputType(JobDefinitionResourceRequirementArrayOutput{}) pulumi.RegisterOutputType(JobDefinitionRetryStrategyOutput{}) pulumi.RegisterOutputType(JobDefinitionRetryStrategyPtrOutput{}) - pulumi.RegisterOutputType(JobDefinitionRuntimePlatformOutput{}) - pulumi.RegisterOutputType(JobDefinitionRuntimePlatformPtrOutput{}) pulumi.RegisterOutputType(JobDefinitionSecretOutput{}) pulumi.RegisterOutputType(JobDefinitionSecretArrayOutput{}) - 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(SchedulingPolicyFairsharePolicyOutput{}) diff --git a/sdk/go/aws/billingconductor/customLineItem.go b/sdk/go/aws/billingconductor/customLineItem.go index 787ba6a3e3..e40cf5977f 100644 --- a/sdk/go/aws/billingconductor/customLineItem.go +++ b/sdk/go/aws/billingconductor/customLineItem.go @@ -19,6 +19,8 @@ import ( type CustomLineItem struct { pulumi.CustomResourceState + // The account which this custom line item will be charged to + AccountId pulumi.StringPtrOutput `pulumi:"accountId"` // ARN Arn pulumi.StringOutput `pulumi:"arn"` // Number of source values associated to this custom line item @@ -49,6 +51,7 @@ func NewCustomLineItem(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'BillingGroupArn'") } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "accountId", "billingGroupArn", "billingPeriodRange.exclusiveEndBillingPeriod", "billingPeriodRange.inclusiveStartBillingPeriod", @@ -88,6 +91,8 @@ func (CustomLineItemState) ElementType() reflect.Type { } type customLineItemArgs struct { + // The account which this custom line item will be charged to + AccountId *string `pulumi:"accountId"` // Billing Group ARN BillingGroupArn string `pulumi:"billingGroupArn"` BillingPeriodRange *CustomLineItemBillingPeriodRange `pulumi:"billingPeriodRange"` @@ -99,6 +104,8 @@ type customLineItemArgs struct { // The set of arguments for constructing a CustomLineItem resource. type CustomLineItemArgs struct { + // The account which this custom line item will be charged to + AccountId pulumi.StringPtrInput // Billing Group ARN BillingGroupArn pulumi.StringInput BillingPeriodRange CustomLineItemBillingPeriodRangePtrInput @@ -157,6 +164,11 @@ func (o CustomLineItemOutput) ToOutput(ctx context.Context) pulumix.Output[*Cust } } +// The account which this custom line item will be charged to +func (o CustomLineItemOutput) AccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *CustomLineItem) pulumi.StringPtrOutput { return v.AccountId }).(pulumi.StringPtrOutput) +} + // ARN func (o CustomLineItemOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *CustomLineItem) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) diff --git a/sdk/go/aws/ce/anomalyMonitor.go b/sdk/go/aws/ce/anomalyMonitor.go index 6083d30385..650bfe73b7 100644 --- a/sdk/go/aws/ce/anomalyMonitor.go +++ b/sdk/go/aws/ce/anomalyMonitor.go @@ -14,8 +14,6 @@ import ( ) // 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. -// -// Deprecated: AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type AnomalyMonitor struct { pulumi.CustomResourceState diff --git a/sdk/go/aws/ce/anomalySubscription.go b/sdk/go/aws/ce/anomalySubscription.go index 94ed8d19a4..d4ede493a5 100644 --- a/sdk/go/aws/ce/anomalySubscription.go +++ b/sdk/go/aws/ce/anomalySubscription.go @@ -14,8 +14,6 @@ import ( ) // AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified -// -// Deprecated: AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type AnomalySubscription struct { pulumi.CustomResourceState diff --git a/sdk/go/aws/cleanrooms/collaboration.go b/sdk/go/aws/cleanrooms/collaboration.go index 2d58c4881b..d8b60d5da1 100644 --- a/sdk/go/aws/cleanrooms/collaboration.go +++ b/sdk/go/aws/cleanrooms/collaboration.go @@ -17,15 +17,16 @@ import ( type Collaboration struct { pulumi.CustomResourceState - Arn pulumi.StringOutput `pulumi:"arn"` - CollaborationIdentifier pulumi.StringOutput `pulumi:"collaborationIdentifier"` - CreatorDisplayName pulumi.StringOutput `pulumi:"creatorDisplayName"` - CreatorMemberAbilities CollaborationMemberAbilityArrayOutput `pulumi:"creatorMemberAbilities"` - DataEncryptionMetadata CollaborationDataEncryptionMetadataPtrOutput `pulumi:"dataEncryptionMetadata"` - Description pulumi.StringOutput `pulumi:"description"` - Members CollaborationMemberSpecificationArrayOutput `pulumi:"members"` - Name pulumi.StringOutput `pulumi:"name"` - QueryLogStatus CollaborationQueryLogStatusOutput `pulumi:"queryLogStatus"` + Arn pulumi.StringOutput `pulumi:"arn"` + CollaborationIdentifier pulumi.StringOutput `pulumi:"collaborationIdentifier"` + CreatorDisplayName pulumi.StringOutput `pulumi:"creatorDisplayName"` + CreatorMemberAbilities CollaborationMemberAbilityArrayOutput `pulumi:"creatorMemberAbilities"` + CreatorPaymentConfiguration CollaborationPaymentConfigurationPtrOutput `pulumi:"creatorPaymentConfiguration"` + DataEncryptionMetadata CollaborationDataEncryptionMetadataPtrOutput `pulumi:"dataEncryptionMetadata"` + Description pulumi.StringOutput `pulumi:"description"` + Members CollaborationMemberSpecificationArrayOutput `pulumi:"members"` + Name pulumi.StringOutput `pulumi:"name"` + QueryLogStatus CollaborationQueryLogStatusOutput `pulumi:"queryLogStatus"` // An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. Tags CollaborationTagArrayOutput `pulumi:"tags"` } @@ -55,6 +56,7 @@ func NewCollaboration(ctx *pulumi.Context, replaceOnChanges := pulumi.ReplaceOnChanges([]string{ "creatorDisplayName", "creatorMemberAbilities[*]", + "creatorPaymentConfiguration", "dataEncryptionMetadata", "members[*]", "queryLogStatus", @@ -93,26 +95,28 @@ func (CollaborationState) ElementType() reflect.Type { } type collaborationArgs struct { - CreatorDisplayName string `pulumi:"creatorDisplayName"` - CreatorMemberAbilities []CollaborationMemberAbility `pulumi:"creatorMemberAbilities"` - DataEncryptionMetadata *CollaborationDataEncryptionMetadata `pulumi:"dataEncryptionMetadata"` - Description string `pulumi:"description"` - Members []CollaborationMemberSpecification `pulumi:"members"` - Name *string `pulumi:"name"` - QueryLogStatus CollaborationQueryLogStatus `pulumi:"queryLogStatus"` + CreatorDisplayName string `pulumi:"creatorDisplayName"` + CreatorMemberAbilities []CollaborationMemberAbility `pulumi:"creatorMemberAbilities"` + CreatorPaymentConfiguration *CollaborationPaymentConfiguration `pulumi:"creatorPaymentConfiguration"` + DataEncryptionMetadata *CollaborationDataEncryptionMetadata `pulumi:"dataEncryptionMetadata"` + Description string `pulumi:"description"` + Members []CollaborationMemberSpecification `pulumi:"members"` + Name *string `pulumi:"name"` + QueryLogStatus CollaborationQueryLogStatus `pulumi:"queryLogStatus"` // An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. Tags []CollaborationTag `pulumi:"tags"` } // The set of arguments for constructing a Collaboration resource. type CollaborationArgs struct { - CreatorDisplayName pulumi.StringInput - CreatorMemberAbilities CollaborationMemberAbilityArrayInput - DataEncryptionMetadata CollaborationDataEncryptionMetadataPtrInput - Description pulumi.StringInput - Members CollaborationMemberSpecificationArrayInput - Name pulumi.StringPtrInput - QueryLogStatus CollaborationQueryLogStatusInput + CreatorDisplayName pulumi.StringInput + CreatorMemberAbilities CollaborationMemberAbilityArrayInput + CreatorPaymentConfiguration CollaborationPaymentConfigurationPtrInput + DataEncryptionMetadata CollaborationDataEncryptionMetadataPtrInput + Description pulumi.StringInput + Members CollaborationMemberSpecificationArrayInput + Name pulumi.StringPtrInput + QueryLogStatus CollaborationQueryLogStatusInput // An arbitrary set of tags (key-value pairs) for this cleanrooms collaboration. Tags CollaborationTagArrayInput } @@ -182,6 +186,12 @@ func (o CollaborationOutput) CreatorMemberAbilities() CollaborationMemberAbility return o.ApplyT(func(v *Collaboration) CollaborationMemberAbilityArrayOutput { return v.CreatorMemberAbilities }).(CollaborationMemberAbilityArrayOutput) } +func (o CollaborationOutput) CreatorPaymentConfiguration() CollaborationPaymentConfigurationPtrOutput { + return o.ApplyT(func(v *Collaboration) CollaborationPaymentConfigurationPtrOutput { + return v.CreatorPaymentConfiguration + }).(CollaborationPaymentConfigurationPtrOutput) +} + func (o CollaborationOutput) DataEncryptionMetadata() CollaborationDataEncryptionMetadataPtrOutput { return o.ApplyT(func(v *Collaboration) CollaborationDataEncryptionMetadataPtrOutput { return v.DataEncryptionMetadata }).(CollaborationDataEncryptionMetadataPtrOutput) } diff --git a/sdk/go/aws/cleanrooms/getMembership.go b/sdk/go/aws/cleanrooms/getMembership.go index 8f96c0175a..d809066b1a 100644 --- a/sdk/go/aws/cleanrooms/getMembership.go +++ b/sdk/go/aws/cleanrooms/getMembership.go @@ -33,6 +33,7 @@ type LookupMembershipResult struct { CollaborationCreatorAccountId *string `pulumi:"collaborationCreatorAccountId"` DefaultResultConfiguration *MembershipProtectedQueryResultConfiguration `pulumi:"defaultResultConfiguration"` MembershipIdentifier *string `pulumi:"membershipIdentifier"` + PaymentConfiguration *MembershipPaymentConfiguration `pulumi:"paymentConfiguration"` QueryLogStatus *MembershipQueryLogStatus `pulumi:"queryLogStatus"` // An arbitrary set of tags (key-value pairs) for this cleanrooms membership. Tags []MembershipTag `pulumi:"tags"` @@ -101,6 +102,10 @@ func (o LookupMembershipResultOutput) MembershipIdentifier() pulumi.StringPtrOut return o.ApplyT(func(v LookupMembershipResult) *string { return v.MembershipIdentifier }).(pulumi.StringPtrOutput) } +func (o LookupMembershipResultOutput) PaymentConfiguration() MembershipPaymentConfigurationPtrOutput { + return o.ApplyT(func(v LookupMembershipResult) *MembershipPaymentConfiguration { return v.PaymentConfiguration }).(MembershipPaymentConfigurationPtrOutput) +} + func (o LookupMembershipResultOutput) QueryLogStatus() MembershipQueryLogStatusPtrOutput { return o.ApplyT(func(v LookupMembershipResult) *MembershipQueryLogStatus { return v.QueryLogStatus }).(MembershipQueryLogStatusPtrOutput) } diff --git a/sdk/go/aws/cleanrooms/membership.go b/sdk/go/aws/cleanrooms/membership.go index 0b335eecef..cc7a0fb45a 100644 --- a/sdk/go/aws/cleanrooms/membership.go +++ b/sdk/go/aws/cleanrooms/membership.go @@ -23,6 +23,7 @@ type Membership struct { CollaborationIdentifier pulumi.StringOutput `pulumi:"collaborationIdentifier"` DefaultResultConfiguration MembershipProtectedQueryResultConfigurationPtrOutput `pulumi:"defaultResultConfiguration"` MembershipIdentifier pulumi.StringOutput `pulumi:"membershipIdentifier"` + PaymentConfiguration MembershipPaymentConfigurationPtrOutput `pulumi:"paymentConfiguration"` QueryLogStatus MembershipQueryLogStatusOutput `pulumi:"queryLogStatus"` // An arbitrary set of tags (key-value pairs) for this cleanrooms membership. Tags MembershipTagArrayOutput `pulumi:"tags"` @@ -80,6 +81,7 @@ func (MembershipState) ElementType() reflect.Type { type membershipArgs struct { CollaborationIdentifier string `pulumi:"collaborationIdentifier"` DefaultResultConfiguration *MembershipProtectedQueryResultConfiguration `pulumi:"defaultResultConfiguration"` + PaymentConfiguration *MembershipPaymentConfiguration `pulumi:"paymentConfiguration"` QueryLogStatus MembershipQueryLogStatus `pulumi:"queryLogStatus"` // An arbitrary set of tags (key-value pairs) for this cleanrooms membership. Tags []MembershipTag `pulumi:"tags"` @@ -89,6 +91,7 @@ type membershipArgs struct { type MembershipArgs struct { CollaborationIdentifier pulumi.StringInput DefaultResultConfiguration MembershipProtectedQueryResultConfigurationPtrInput + PaymentConfiguration MembershipPaymentConfigurationPtrInput QueryLogStatus MembershipQueryLogStatusInput // An arbitrary set of tags (key-value pairs) for this cleanrooms membership. Tags MembershipTagArrayInput @@ -169,6 +172,10 @@ func (o MembershipOutput) MembershipIdentifier() pulumi.StringOutput { return o.ApplyT(func(v *Membership) pulumi.StringOutput { return v.MembershipIdentifier }).(pulumi.StringOutput) } +func (o MembershipOutput) PaymentConfiguration() MembershipPaymentConfigurationPtrOutput { + return o.ApplyT(func(v *Membership) MembershipPaymentConfigurationPtrOutput { return v.PaymentConfiguration }).(MembershipPaymentConfigurationPtrOutput) +} + func (o MembershipOutput) QueryLogStatus() MembershipQueryLogStatusOutput { return o.ApplyT(func(v *Membership) MembershipQueryLogStatusOutput { return v.QueryLogStatus }).(MembershipQueryLogStatusOutput) } diff --git a/sdk/go/aws/cleanrooms/pulumiTypes.go b/sdk/go/aws/cleanrooms/pulumiTypes.go index ba0ff96b4d..366b47dfeb 100644 --- a/sdk/go/aws/cleanrooms/pulumiTypes.go +++ b/sdk/go/aws/cleanrooms/pulumiTypes.go @@ -599,9 +599,10 @@ func (o CollaborationDataEncryptionMetadataPtrOutput) PreserveNulls() pulumi.Boo } type CollaborationMemberSpecification struct { - AccountId string `pulumi:"accountId"` - DisplayName string `pulumi:"displayName"` - MemberAbilities []CollaborationMemberAbility `pulumi:"memberAbilities"` + AccountId string `pulumi:"accountId"` + DisplayName string `pulumi:"displayName"` + MemberAbilities []CollaborationMemberAbility `pulumi:"memberAbilities"` + PaymentConfiguration *CollaborationPaymentConfiguration `pulumi:"paymentConfiguration"` } // CollaborationMemberSpecificationInput is an input type that accepts CollaborationMemberSpecificationArgs and CollaborationMemberSpecificationOutput values. @@ -616,9 +617,10 @@ type CollaborationMemberSpecificationInput interface { } type CollaborationMemberSpecificationArgs struct { - AccountId pulumi.StringInput `pulumi:"accountId"` - DisplayName pulumi.StringInput `pulumi:"displayName"` - MemberAbilities CollaborationMemberAbilityArrayInput `pulumi:"memberAbilities"` + AccountId pulumi.StringInput `pulumi:"accountId"` + DisplayName pulumi.StringInput `pulumi:"displayName"` + MemberAbilities CollaborationMemberAbilityArrayInput `pulumi:"memberAbilities"` + PaymentConfiguration CollaborationPaymentConfigurationPtrInput `pulumi:"paymentConfiguration"` } func (CollaborationMemberSpecificationArgs) ElementType() reflect.Type { @@ -702,6 +704,12 @@ func (o CollaborationMemberSpecificationOutput) MemberAbilities() CollaborationM return o.ApplyT(func(v CollaborationMemberSpecification) []CollaborationMemberAbility { return v.MemberAbilities }).(CollaborationMemberAbilityArrayOutput) } +func (o CollaborationMemberSpecificationOutput) PaymentConfiguration() CollaborationPaymentConfigurationPtrOutput { + return o.ApplyT(func(v CollaborationMemberSpecification) *CollaborationPaymentConfiguration { + return v.PaymentConfiguration + }).(CollaborationPaymentConfigurationPtrOutput) +} + type CollaborationMemberSpecificationArrayOutput struct{ *pulumi.OutputState } func (CollaborationMemberSpecificationArrayOutput) ElementType() reflect.Type { @@ -728,6 +736,322 @@ func (o CollaborationMemberSpecificationArrayOutput) Index(i pulumi.IntInput) Co }).(CollaborationMemberSpecificationOutput) } +type CollaborationPaymentConfiguration struct { + QueryCompute CollaborationQueryComputePaymentConfig `pulumi:"queryCompute"` +} + +// CollaborationPaymentConfigurationInput is an input type that accepts CollaborationPaymentConfigurationArgs and CollaborationPaymentConfigurationOutput values. +// You can construct a concrete instance of `CollaborationPaymentConfigurationInput` via: +// +// CollaborationPaymentConfigurationArgs{...} +type CollaborationPaymentConfigurationInput interface { + pulumi.Input + + ToCollaborationPaymentConfigurationOutput() CollaborationPaymentConfigurationOutput + ToCollaborationPaymentConfigurationOutputWithContext(context.Context) CollaborationPaymentConfigurationOutput +} + +type CollaborationPaymentConfigurationArgs struct { + QueryCompute CollaborationQueryComputePaymentConfigInput `pulumi:"queryCompute"` +} + +func (CollaborationPaymentConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CollaborationPaymentConfiguration)(nil)).Elem() +} + +func (i CollaborationPaymentConfigurationArgs) ToCollaborationPaymentConfigurationOutput() CollaborationPaymentConfigurationOutput { + return i.ToCollaborationPaymentConfigurationOutputWithContext(context.Background()) +} + +func (i CollaborationPaymentConfigurationArgs) ToCollaborationPaymentConfigurationOutputWithContext(ctx context.Context) CollaborationPaymentConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(CollaborationPaymentConfigurationOutput) +} + +func (i CollaborationPaymentConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[CollaborationPaymentConfiguration] { + return pulumix.Output[CollaborationPaymentConfiguration]{ + OutputState: i.ToCollaborationPaymentConfigurationOutputWithContext(ctx).OutputState, + } +} + +func (i CollaborationPaymentConfigurationArgs) ToCollaborationPaymentConfigurationPtrOutput() CollaborationPaymentConfigurationPtrOutput { + return i.ToCollaborationPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (i CollaborationPaymentConfigurationArgs) ToCollaborationPaymentConfigurationPtrOutputWithContext(ctx context.Context) CollaborationPaymentConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(CollaborationPaymentConfigurationOutput).ToCollaborationPaymentConfigurationPtrOutputWithContext(ctx) +} + +// CollaborationPaymentConfigurationPtrInput is an input type that accepts CollaborationPaymentConfigurationArgs, CollaborationPaymentConfigurationPtr and CollaborationPaymentConfigurationPtrOutput values. +// You can construct a concrete instance of `CollaborationPaymentConfigurationPtrInput` via: +// +// CollaborationPaymentConfigurationArgs{...} +// +// or: +// +// nil +type CollaborationPaymentConfigurationPtrInput interface { + pulumi.Input + + ToCollaborationPaymentConfigurationPtrOutput() CollaborationPaymentConfigurationPtrOutput + ToCollaborationPaymentConfigurationPtrOutputWithContext(context.Context) CollaborationPaymentConfigurationPtrOutput +} + +type collaborationPaymentConfigurationPtrType CollaborationPaymentConfigurationArgs + +func CollaborationPaymentConfigurationPtr(v *CollaborationPaymentConfigurationArgs) CollaborationPaymentConfigurationPtrInput { + return (*collaborationPaymentConfigurationPtrType)(v) +} + +func (*collaborationPaymentConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**CollaborationPaymentConfiguration)(nil)).Elem() +} + +func (i *collaborationPaymentConfigurationPtrType) ToCollaborationPaymentConfigurationPtrOutput() CollaborationPaymentConfigurationPtrOutput { + return i.ToCollaborationPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *collaborationPaymentConfigurationPtrType) ToCollaborationPaymentConfigurationPtrOutputWithContext(ctx context.Context) CollaborationPaymentConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(CollaborationPaymentConfigurationPtrOutput) +} + +func (i *collaborationPaymentConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*CollaborationPaymentConfiguration] { + return pulumix.Output[*CollaborationPaymentConfiguration]{ + OutputState: i.ToCollaborationPaymentConfigurationPtrOutputWithContext(ctx).OutputState, + } +} + +type CollaborationPaymentConfigurationOutput struct{ *pulumi.OutputState } + +func (CollaborationPaymentConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CollaborationPaymentConfiguration)(nil)).Elem() +} + +func (o CollaborationPaymentConfigurationOutput) ToCollaborationPaymentConfigurationOutput() CollaborationPaymentConfigurationOutput { + return o +} + +func (o CollaborationPaymentConfigurationOutput) ToCollaborationPaymentConfigurationOutputWithContext(ctx context.Context) CollaborationPaymentConfigurationOutput { + return o +} + +func (o CollaborationPaymentConfigurationOutput) ToCollaborationPaymentConfigurationPtrOutput() CollaborationPaymentConfigurationPtrOutput { + return o.ToCollaborationPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (o CollaborationPaymentConfigurationOutput) ToCollaborationPaymentConfigurationPtrOutputWithContext(ctx context.Context) CollaborationPaymentConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CollaborationPaymentConfiguration) *CollaborationPaymentConfiguration { + return &v + }).(CollaborationPaymentConfigurationPtrOutput) +} + +func (o CollaborationPaymentConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[CollaborationPaymentConfiguration] { + return pulumix.Output[CollaborationPaymentConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o CollaborationPaymentConfigurationOutput) QueryCompute() CollaborationQueryComputePaymentConfigOutput { + return o.ApplyT(func(v CollaborationPaymentConfiguration) CollaborationQueryComputePaymentConfig { + return v.QueryCompute + }).(CollaborationQueryComputePaymentConfigOutput) +} + +type CollaborationPaymentConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (CollaborationPaymentConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CollaborationPaymentConfiguration)(nil)).Elem() +} + +func (o CollaborationPaymentConfigurationPtrOutput) ToCollaborationPaymentConfigurationPtrOutput() CollaborationPaymentConfigurationPtrOutput { + return o +} + +func (o CollaborationPaymentConfigurationPtrOutput) ToCollaborationPaymentConfigurationPtrOutputWithContext(ctx context.Context) CollaborationPaymentConfigurationPtrOutput { + return o +} + +func (o CollaborationPaymentConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CollaborationPaymentConfiguration] { + return pulumix.Output[*CollaborationPaymentConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o CollaborationPaymentConfigurationPtrOutput) Elem() CollaborationPaymentConfigurationOutput { + return o.ApplyT(func(v *CollaborationPaymentConfiguration) CollaborationPaymentConfiguration { + if v != nil { + return *v + } + var ret CollaborationPaymentConfiguration + return ret + }).(CollaborationPaymentConfigurationOutput) +} + +func (o CollaborationPaymentConfigurationPtrOutput) QueryCompute() CollaborationQueryComputePaymentConfigPtrOutput { + return o.ApplyT(func(v *CollaborationPaymentConfiguration) *CollaborationQueryComputePaymentConfig { + if v == nil { + return nil + } + return &v.QueryCompute + }).(CollaborationQueryComputePaymentConfigPtrOutput) +} + +type CollaborationQueryComputePaymentConfig struct { + IsResponsible bool `pulumi:"isResponsible"` +} + +// CollaborationQueryComputePaymentConfigInput is an input type that accepts CollaborationQueryComputePaymentConfigArgs and CollaborationQueryComputePaymentConfigOutput values. +// You can construct a concrete instance of `CollaborationQueryComputePaymentConfigInput` via: +// +// CollaborationQueryComputePaymentConfigArgs{...} +type CollaborationQueryComputePaymentConfigInput interface { + pulumi.Input + + ToCollaborationQueryComputePaymentConfigOutput() CollaborationQueryComputePaymentConfigOutput + ToCollaborationQueryComputePaymentConfigOutputWithContext(context.Context) CollaborationQueryComputePaymentConfigOutput +} + +type CollaborationQueryComputePaymentConfigArgs struct { + IsResponsible pulumi.BoolInput `pulumi:"isResponsible"` +} + +func (CollaborationQueryComputePaymentConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CollaborationQueryComputePaymentConfig)(nil)).Elem() +} + +func (i CollaborationQueryComputePaymentConfigArgs) ToCollaborationQueryComputePaymentConfigOutput() CollaborationQueryComputePaymentConfigOutput { + return i.ToCollaborationQueryComputePaymentConfigOutputWithContext(context.Background()) +} + +func (i CollaborationQueryComputePaymentConfigArgs) ToCollaborationQueryComputePaymentConfigOutputWithContext(ctx context.Context) CollaborationQueryComputePaymentConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(CollaborationQueryComputePaymentConfigOutput) +} + +func (i CollaborationQueryComputePaymentConfigArgs) ToOutput(ctx context.Context) pulumix.Output[CollaborationQueryComputePaymentConfig] { + return pulumix.Output[CollaborationQueryComputePaymentConfig]{ + OutputState: i.ToCollaborationQueryComputePaymentConfigOutputWithContext(ctx).OutputState, + } +} + +func (i CollaborationQueryComputePaymentConfigArgs) ToCollaborationQueryComputePaymentConfigPtrOutput() CollaborationQueryComputePaymentConfigPtrOutput { + return i.ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(context.Background()) +} + +func (i CollaborationQueryComputePaymentConfigArgs) ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(ctx context.Context) CollaborationQueryComputePaymentConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(CollaborationQueryComputePaymentConfigOutput).ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(ctx) +} + +// CollaborationQueryComputePaymentConfigPtrInput is an input type that accepts CollaborationQueryComputePaymentConfigArgs, CollaborationQueryComputePaymentConfigPtr and CollaborationQueryComputePaymentConfigPtrOutput values. +// You can construct a concrete instance of `CollaborationQueryComputePaymentConfigPtrInput` via: +// +// CollaborationQueryComputePaymentConfigArgs{...} +// +// or: +// +// nil +type CollaborationQueryComputePaymentConfigPtrInput interface { + pulumi.Input + + ToCollaborationQueryComputePaymentConfigPtrOutput() CollaborationQueryComputePaymentConfigPtrOutput + ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(context.Context) CollaborationQueryComputePaymentConfigPtrOutput +} + +type collaborationQueryComputePaymentConfigPtrType CollaborationQueryComputePaymentConfigArgs + +func CollaborationQueryComputePaymentConfigPtr(v *CollaborationQueryComputePaymentConfigArgs) CollaborationQueryComputePaymentConfigPtrInput { + return (*collaborationQueryComputePaymentConfigPtrType)(v) +} + +func (*collaborationQueryComputePaymentConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**CollaborationQueryComputePaymentConfig)(nil)).Elem() +} + +func (i *collaborationQueryComputePaymentConfigPtrType) ToCollaborationQueryComputePaymentConfigPtrOutput() CollaborationQueryComputePaymentConfigPtrOutput { + return i.ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(context.Background()) +} + +func (i *collaborationQueryComputePaymentConfigPtrType) ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(ctx context.Context) CollaborationQueryComputePaymentConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(CollaborationQueryComputePaymentConfigPtrOutput) +} + +func (i *collaborationQueryComputePaymentConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*CollaborationQueryComputePaymentConfig] { + return pulumix.Output[*CollaborationQueryComputePaymentConfig]{ + OutputState: i.ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(ctx).OutputState, + } +} + +type CollaborationQueryComputePaymentConfigOutput struct{ *pulumi.OutputState } + +func (CollaborationQueryComputePaymentConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CollaborationQueryComputePaymentConfig)(nil)).Elem() +} + +func (o CollaborationQueryComputePaymentConfigOutput) ToCollaborationQueryComputePaymentConfigOutput() CollaborationQueryComputePaymentConfigOutput { + return o +} + +func (o CollaborationQueryComputePaymentConfigOutput) ToCollaborationQueryComputePaymentConfigOutputWithContext(ctx context.Context) CollaborationQueryComputePaymentConfigOutput { + return o +} + +func (o CollaborationQueryComputePaymentConfigOutput) ToCollaborationQueryComputePaymentConfigPtrOutput() CollaborationQueryComputePaymentConfigPtrOutput { + return o.ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(context.Background()) +} + +func (o CollaborationQueryComputePaymentConfigOutput) ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(ctx context.Context) CollaborationQueryComputePaymentConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CollaborationQueryComputePaymentConfig) *CollaborationQueryComputePaymentConfig { + return &v + }).(CollaborationQueryComputePaymentConfigPtrOutput) +} + +func (o CollaborationQueryComputePaymentConfigOutput) ToOutput(ctx context.Context) pulumix.Output[CollaborationQueryComputePaymentConfig] { + return pulumix.Output[CollaborationQueryComputePaymentConfig]{ + OutputState: o.OutputState, + } +} + +func (o CollaborationQueryComputePaymentConfigOutput) IsResponsible() pulumi.BoolOutput { + return o.ApplyT(func(v CollaborationQueryComputePaymentConfig) bool { return v.IsResponsible }).(pulumi.BoolOutput) +} + +type CollaborationQueryComputePaymentConfigPtrOutput struct{ *pulumi.OutputState } + +func (CollaborationQueryComputePaymentConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CollaborationQueryComputePaymentConfig)(nil)).Elem() +} + +func (o CollaborationQueryComputePaymentConfigPtrOutput) ToCollaborationQueryComputePaymentConfigPtrOutput() CollaborationQueryComputePaymentConfigPtrOutput { + return o +} + +func (o CollaborationQueryComputePaymentConfigPtrOutput) ToCollaborationQueryComputePaymentConfigPtrOutputWithContext(ctx context.Context) CollaborationQueryComputePaymentConfigPtrOutput { + return o +} + +func (o CollaborationQueryComputePaymentConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CollaborationQueryComputePaymentConfig] { + return pulumix.Output[*CollaborationQueryComputePaymentConfig]{ + OutputState: o.OutputState, + } +} + +func (o CollaborationQueryComputePaymentConfigPtrOutput) Elem() CollaborationQueryComputePaymentConfigOutput { + return o.ApplyT(func(v *CollaborationQueryComputePaymentConfig) CollaborationQueryComputePaymentConfig { + if v != nil { + return *v + } + var ret CollaborationQueryComputePaymentConfig + return ret + }).(CollaborationQueryComputePaymentConfigOutput) +} + +func (o CollaborationQueryComputePaymentConfigPtrOutput) IsResponsible() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *CollaborationQueryComputePaymentConfig) *bool { + if v == nil { + return nil + } + return &v.IsResponsible + }).(pulumi.BoolPtrOutput) +} + type CollaborationTag struct { Key string `pulumi:"key"` Value string `pulumi:"value"` @@ -1457,6 +1781,163 @@ func (o ConfiguredTableTagArrayOutput) Index(i pulumi.IntInput) ConfiguredTableT }).(ConfiguredTableTagOutput) } +type MembershipPaymentConfiguration struct { + QueryCompute MembershipQueryComputePaymentConfig `pulumi:"queryCompute"` +} + +// MembershipPaymentConfigurationInput is an input type that accepts MembershipPaymentConfigurationArgs and MembershipPaymentConfigurationOutput values. +// You can construct a concrete instance of `MembershipPaymentConfigurationInput` via: +// +// MembershipPaymentConfigurationArgs{...} +type MembershipPaymentConfigurationInput interface { + pulumi.Input + + ToMembershipPaymentConfigurationOutput() MembershipPaymentConfigurationOutput + ToMembershipPaymentConfigurationOutputWithContext(context.Context) MembershipPaymentConfigurationOutput +} + +type MembershipPaymentConfigurationArgs struct { + QueryCompute MembershipQueryComputePaymentConfigInput `pulumi:"queryCompute"` +} + +func (MembershipPaymentConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipPaymentConfiguration)(nil)).Elem() +} + +func (i MembershipPaymentConfigurationArgs) ToMembershipPaymentConfigurationOutput() MembershipPaymentConfigurationOutput { + return i.ToMembershipPaymentConfigurationOutputWithContext(context.Background()) +} + +func (i MembershipPaymentConfigurationArgs) ToMembershipPaymentConfigurationOutputWithContext(ctx context.Context) MembershipPaymentConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationOutput) +} + +func (i MembershipPaymentConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[MembershipPaymentConfiguration] { + return pulumix.Output[MembershipPaymentConfiguration]{ + OutputState: i.ToMembershipPaymentConfigurationOutputWithContext(ctx).OutputState, + } +} + +func (i MembershipPaymentConfigurationArgs) ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput { + return i.ToMembershipPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (i MembershipPaymentConfigurationArgs) ToMembershipPaymentConfigurationPtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationOutput).ToMembershipPaymentConfigurationPtrOutputWithContext(ctx) +} + +// MembershipPaymentConfigurationPtrInput is an input type that accepts MembershipPaymentConfigurationArgs, MembershipPaymentConfigurationPtr and MembershipPaymentConfigurationPtrOutput values. +// You can construct a concrete instance of `MembershipPaymentConfigurationPtrInput` via: +// +// MembershipPaymentConfigurationArgs{...} +// +// or: +// +// nil +type MembershipPaymentConfigurationPtrInput interface { + pulumi.Input + + ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput + ToMembershipPaymentConfigurationPtrOutputWithContext(context.Context) MembershipPaymentConfigurationPtrOutput +} + +type membershipPaymentConfigurationPtrType MembershipPaymentConfigurationArgs + +func MembershipPaymentConfigurationPtr(v *MembershipPaymentConfigurationArgs) MembershipPaymentConfigurationPtrInput { + return (*membershipPaymentConfigurationPtrType)(v) +} + +func (*membershipPaymentConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipPaymentConfiguration)(nil)).Elem() +} + +func (i *membershipPaymentConfigurationPtrType) ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput { + return i.ToMembershipPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *membershipPaymentConfigurationPtrType) ToMembershipPaymentConfigurationPtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipPaymentConfigurationPtrOutput) +} + +func (i *membershipPaymentConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*MembershipPaymentConfiguration] { + return pulumix.Output[*MembershipPaymentConfiguration]{ + OutputState: i.ToMembershipPaymentConfigurationPtrOutputWithContext(ctx).OutputState, + } +} + +type MembershipPaymentConfigurationOutput struct{ *pulumi.OutputState } + +func (MembershipPaymentConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipPaymentConfiguration)(nil)).Elem() +} + +func (o MembershipPaymentConfigurationOutput) ToMembershipPaymentConfigurationOutput() MembershipPaymentConfigurationOutput { + return o +} + +func (o MembershipPaymentConfigurationOutput) ToMembershipPaymentConfigurationOutputWithContext(ctx context.Context) MembershipPaymentConfigurationOutput { + return o +} + +func (o MembershipPaymentConfigurationOutput) ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput { + return o.ToMembershipPaymentConfigurationPtrOutputWithContext(context.Background()) +} + +func (o MembershipPaymentConfigurationOutput) ToMembershipPaymentConfigurationPtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v MembershipPaymentConfiguration) *MembershipPaymentConfiguration { + return &v + }).(MembershipPaymentConfigurationPtrOutput) +} + +func (o MembershipPaymentConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[MembershipPaymentConfiguration] { + return pulumix.Output[MembershipPaymentConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o MembershipPaymentConfigurationOutput) QueryCompute() MembershipQueryComputePaymentConfigOutput { + return o.ApplyT(func(v MembershipPaymentConfiguration) MembershipQueryComputePaymentConfig { return v.QueryCompute }).(MembershipQueryComputePaymentConfigOutput) +} + +type MembershipPaymentConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (MembershipPaymentConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipPaymentConfiguration)(nil)).Elem() +} + +func (o MembershipPaymentConfigurationPtrOutput) ToMembershipPaymentConfigurationPtrOutput() MembershipPaymentConfigurationPtrOutput { + return o +} + +func (o MembershipPaymentConfigurationPtrOutput) ToMembershipPaymentConfigurationPtrOutputWithContext(ctx context.Context) MembershipPaymentConfigurationPtrOutput { + return o +} + +func (o MembershipPaymentConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*MembershipPaymentConfiguration] { + return pulumix.Output[*MembershipPaymentConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o MembershipPaymentConfigurationPtrOutput) Elem() MembershipPaymentConfigurationOutput { + return o.ApplyT(func(v *MembershipPaymentConfiguration) MembershipPaymentConfiguration { + if v != nil { + return *v + } + var ret MembershipPaymentConfiguration + return ret + }).(MembershipPaymentConfigurationOutput) +} + +func (o MembershipPaymentConfigurationPtrOutput) QueryCompute() MembershipQueryComputePaymentConfigPtrOutput { + return o.ApplyT(func(v *MembershipPaymentConfiguration) *MembershipQueryComputePaymentConfig { + if v == nil { + return nil + } + return &v.QueryCompute + }).(MembershipQueryComputePaymentConfigPtrOutput) +} + type MembershipProtectedQueryOutputConfiguration struct { S3 MembershipProtectedQueryS3OutputConfiguration `pulumi:"s3"` } @@ -1977,6 +2458,163 @@ func (o MembershipProtectedQueryS3OutputConfigurationPtrOutput) ResultFormat() M }).(MembershipResultFormatPtrOutput) } +type MembershipQueryComputePaymentConfig struct { + IsResponsible bool `pulumi:"isResponsible"` +} + +// MembershipQueryComputePaymentConfigInput is an input type that accepts MembershipQueryComputePaymentConfigArgs and MembershipQueryComputePaymentConfigOutput values. +// You can construct a concrete instance of `MembershipQueryComputePaymentConfigInput` via: +// +// MembershipQueryComputePaymentConfigArgs{...} +type MembershipQueryComputePaymentConfigInput interface { + pulumi.Input + + ToMembershipQueryComputePaymentConfigOutput() MembershipQueryComputePaymentConfigOutput + ToMembershipQueryComputePaymentConfigOutputWithContext(context.Context) MembershipQueryComputePaymentConfigOutput +} + +type MembershipQueryComputePaymentConfigArgs struct { + IsResponsible pulumi.BoolInput `pulumi:"isResponsible"` +} + +func (MembershipQueryComputePaymentConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipQueryComputePaymentConfig)(nil)).Elem() +} + +func (i MembershipQueryComputePaymentConfigArgs) ToMembershipQueryComputePaymentConfigOutput() MembershipQueryComputePaymentConfigOutput { + return i.ToMembershipQueryComputePaymentConfigOutputWithContext(context.Background()) +} + +func (i MembershipQueryComputePaymentConfigArgs) ToMembershipQueryComputePaymentConfigOutputWithContext(ctx context.Context) MembershipQueryComputePaymentConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipQueryComputePaymentConfigOutput) +} + +func (i MembershipQueryComputePaymentConfigArgs) ToOutput(ctx context.Context) pulumix.Output[MembershipQueryComputePaymentConfig] { + return pulumix.Output[MembershipQueryComputePaymentConfig]{ + OutputState: i.ToMembershipQueryComputePaymentConfigOutputWithContext(ctx).OutputState, + } +} + +func (i MembershipQueryComputePaymentConfigArgs) ToMembershipQueryComputePaymentConfigPtrOutput() MembershipQueryComputePaymentConfigPtrOutput { + return i.ToMembershipQueryComputePaymentConfigPtrOutputWithContext(context.Background()) +} + +func (i MembershipQueryComputePaymentConfigArgs) ToMembershipQueryComputePaymentConfigPtrOutputWithContext(ctx context.Context) MembershipQueryComputePaymentConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipQueryComputePaymentConfigOutput).ToMembershipQueryComputePaymentConfigPtrOutputWithContext(ctx) +} + +// MembershipQueryComputePaymentConfigPtrInput is an input type that accepts MembershipQueryComputePaymentConfigArgs, MembershipQueryComputePaymentConfigPtr and MembershipQueryComputePaymentConfigPtrOutput values. +// You can construct a concrete instance of `MembershipQueryComputePaymentConfigPtrInput` via: +// +// MembershipQueryComputePaymentConfigArgs{...} +// +// or: +// +// nil +type MembershipQueryComputePaymentConfigPtrInput interface { + pulumi.Input + + ToMembershipQueryComputePaymentConfigPtrOutput() MembershipQueryComputePaymentConfigPtrOutput + ToMembershipQueryComputePaymentConfigPtrOutputWithContext(context.Context) MembershipQueryComputePaymentConfigPtrOutput +} + +type membershipQueryComputePaymentConfigPtrType MembershipQueryComputePaymentConfigArgs + +func MembershipQueryComputePaymentConfigPtr(v *MembershipQueryComputePaymentConfigArgs) MembershipQueryComputePaymentConfigPtrInput { + return (*membershipQueryComputePaymentConfigPtrType)(v) +} + +func (*membershipQueryComputePaymentConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipQueryComputePaymentConfig)(nil)).Elem() +} + +func (i *membershipQueryComputePaymentConfigPtrType) ToMembershipQueryComputePaymentConfigPtrOutput() MembershipQueryComputePaymentConfigPtrOutput { + return i.ToMembershipQueryComputePaymentConfigPtrOutputWithContext(context.Background()) +} + +func (i *membershipQueryComputePaymentConfigPtrType) ToMembershipQueryComputePaymentConfigPtrOutputWithContext(ctx context.Context) MembershipQueryComputePaymentConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(MembershipQueryComputePaymentConfigPtrOutput) +} + +func (i *membershipQueryComputePaymentConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*MembershipQueryComputePaymentConfig] { + return pulumix.Output[*MembershipQueryComputePaymentConfig]{ + OutputState: i.ToMembershipQueryComputePaymentConfigPtrOutputWithContext(ctx).OutputState, + } +} + +type MembershipQueryComputePaymentConfigOutput struct{ *pulumi.OutputState } + +func (MembershipQueryComputePaymentConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MembershipQueryComputePaymentConfig)(nil)).Elem() +} + +func (o MembershipQueryComputePaymentConfigOutput) ToMembershipQueryComputePaymentConfigOutput() MembershipQueryComputePaymentConfigOutput { + return o +} + +func (o MembershipQueryComputePaymentConfigOutput) ToMembershipQueryComputePaymentConfigOutputWithContext(ctx context.Context) MembershipQueryComputePaymentConfigOutput { + return o +} + +func (o MembershipQueryComputePaymentConfigOutput) ToMembershipQueryComputePaymentConfigPtrOutput() MembershipQueryComputePaymentConfigPtrOutput { + return o.ToMembershipQueryComputePaymentConfigPtrOutputWithContext(context.Background()) +} + +func (o MembershipQueryComputePaymentConfigOutput) ToMembershipQueryComputePaymentConfigPtrOutputWithContext(ctx context.Context) MembershipQueryComputePaymentConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v MembershipQueryComputePaymentConfig) *MembershipQueryComputePaymentConfig { + return &v + }).(MembershipQueryComputePaymentConfigPtrOutput) +} + +func (o MembershipQueryComputePaymentConfigOutput) ToOutput(ctx context.Context) pulumix.Output[MembershipQueryComputePaymentConfig] { + return pulumix.Output[MembershipQueryComputePaymentConfig]{ + OutputState: o.OutputState, + } +} + +func (o MembershipQueryComputePaymentConfigOutput) IsResponsible() pulumi.BoolOutput { + return o.ApplyT(func(v MembershipQueryComputePaymentConfig) bool { return v.IsResponsible }).(pulumi.BoolOutput) +} + +type MembershipQueryComputePaymentConfigPtrOutput struct{ *pulumi.OutputState } + +func (MembershipQueryComputePaymentConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MembershipQueryComputePaymentConfig)(nil)).Elem() +} + +func (o MembershipQueryComputePaymentConfigPtrOutput) ToMembershipQueryComputePaymentConfigPtrOutput() MembershipQueryComputePaymentConfigPtrOutput { + return o +} + +func (o MembershipQueryComputePaymentConfigPtrOutput) ToMembershipQueryComputePaymentConfigPtrOutputWithContext(ctx context.Context) MembershipQueryComputePaymentConfigPtrOutput { + return o +} + +func (o MembershipQueryComputePaymentConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*MembershipQueryComputePaymentConfig] { + return pulumix.Output[*MembershipQueryComputePaymentConfig]{ + OutputState: o.OutputState, + } +} + +func (o MembershipQueryComputePaymentConfigPtrOutput) Elem() MembershipQueryComputePaymentConfigOutput { + return o.ApplyT(func(v *MembershipQueryComputePaymentConfig) MembershipQueryComputePaymentConfig { + if v != nil { + return *v + } + var ret MembershipQueryComputePaymentConfig + return ret + }).(MembershipQueryComputePaymentConfigOutput) +} + +func (o MembershipQueryComputePaymentConfigPtrOutput) IsResponsible() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *MembershipQueryComputePaymentConfig) *bool { + if v == nil { + return nil + } + return &v.IsResponsible + }).(pulumi.BoolPtrOutput) +} + type MembershipTag struct { Key string `pulumi:"key"` Value string `pulumi:"value"` @@ -2111,6 +2749,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*CollaborationDataEncryptionMetadataPtrInput)(nil)).Elem(), CollaborationDataEncryptionMetadataArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CollaborationMemberSpecificationInput)(nil)).Elem(), CollaborationMemberSpecificationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CollaborationMemberSpecificationArrayInput)(nil)).Elem(), CollaborationMemberSpecificationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*CollaborationPaymentConfigurationInput)(nil)).Elem(), CollaborationPaymentConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CollaborationPaymentConfigurationPtrInput)(nil)).Elem(), CollaborationPaymentConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CollaborationQueryComputePaymentConfigInput)(nil)).Elem(), CollaborationQueryComputePaymentConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CollaborationQueryComputePaymentConfigPtrInput)(nil)).Elem(), CollaborationQueryComputePaymentConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CollaborationTagInput)(nil)).Elem(), CollaborationTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CollaborationTagArrayInput)(nil)).Elem(), CollaborationTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableAnalysisRuleInput)(nil)).Elem(), ConfiguredTableAnalysisRuleArgs{}) @@ -2122,12 +2764,16 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTableReferenceInput)(nil)).Elem(), ConfiguredTableTableReferenceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTagInput)(nil)).Elem(), ConfiguredTableTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfiguredTableTagArrayInput)(nil)).Elem(), ConfiguredTableTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipPaymentConfigurationInput)(nil)).Elem(), MembershipPaymentConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipPaymentConfigurationPtrInput)(nil)).Elem(), MembershipPaymentConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MembershipProtectedQueryOutputConfigurationInput)(nil)).Elem(), MembershipProtectedQueryOutputConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MembershipProtectedQueryOutputConfigurationPtrInput)(nil)).Elem(), MembershipProtectedQueryOutputConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MembershipProtectedQueryResultConfigurationInput)(nil)).Elem(), MembershipProtectedQueryResultConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MembershipProtectedQueryResultConfigurationPtrInput)(nil)).Elem(), MembershipProtectedQueryResultConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MembershipProtectedQueryS3OutputConfigurationInput)(nil)).Elem(), MembershipProtectedQueryS3OutputConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MembershipProtectedQueryS3OutputConfigurationPtrInput)(nil)).Elem(), MembershipProtectedQueryS3OutputConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipQueryComputePaymentConfigInput)(nil)).Elem(), MembershipQueryComputePaymentConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MembershipQueryComputePaymentConfigPtrInput)(nil)).Elem(), MembershipQueryComputePaymentConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MembershipTagInput)(nil)).Elem(), MembershipTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MembershipTagArrayInput)(nil)).Elem(), MembershipTagArray{}) pulumi.RegisterOutputType(AnalysisTemplateAnalysisParameterOutput{}) @@ -2141,6 +2787,10 @@ func init() { pulumi.RegisterOutputType(CollaborationDataEncryptionMetadataPtrOutput{}) pulumi.RegisterOutputType(CollaborationMemberSpecificationOutput{}) pulumi.RegisterOutputType(CollaborationMemberSpecificationArrayOutput{}) + pulumi.RegisterOutputType(CollaborationPaymentConfigurationOutput{}) + pulumi.RegisterOutputType(CollaborationPaymentConfigurationPtrOutput{}) + pulumi.RegisterOutputType(CollaborationQueryComputePaymentConfigOutput{}) + pulumi.RegisterOutputType(CollaborationQueryComputePaymentConfigPtrOutput{}) pulumi.RegisterOutputType(CollaborationTagOutput{}) pulumi.RegisterOutputType(CollaborationTagArrayOutput{}) pulumi.RegisterOutputType(ConfiguredTableAnalysisRuleOutput{}) @@ -2152,12 +2802,16 @@ func init() { pulumi.RegisterOutputType(ConfiguredTableTableReferenceOutput{}) pulumi.RegisterOutputType(ConfiguredTableTagOutput{}) pulumi.RegisterOutputType(ConfiguredTableTagArrayOutput{}) + pulumi.RegisterOutputType(MembershipPaymentConfigurationOutput{}) + pulumi.RegisterOutputType(MembershipPaymentConfigurationPtrOutput{}) pulumi.RegisterOutputType(MembershipProtectedQueryOutputConfigurationOutput{}) pulumi.RegisterOutputType(MembershipProtectedQueryOutputConfigurationPtrOutput{}) pulumi.RegisterOutputType(MembershipProtectedQueryResultConfigurationOutput{}) pulumi.RegisterOutputType(MembershipProtectedQueryResultConfigurationPtrOutput{}) pulumi.RegisterOutputType(MembershipProtectedQueryS3OutputConfigurationOutput{}) pulumi.RegisterOutputType(MembershipProtectedQueryS3OutputConfigurationPtrOutput{}) + pulumi.RegisterOutputType(MembershipQueryComputePaymentConfigOutput{}) + pulumi.RegisterOutputType(MembershipQueryComputePaymentConfigPtrOutput{}) pulumi.RegisterOutputType(MembershipTagOutput{}) pulumi.RegisterOutputType(MembershipTagArrayOutput{}) } diff --git a/sdk/go/aws/cloud9/environmentEc2.go b/sdk/go/aws/cloud9/environmentEc2.go index a37b9f3e96..825b974f37 100644 --- a/sdk/go/aws/cloud9/environmentEc2.go +++ b/sdk/go/aws/cloud9/environmentEc2.go @@ -23,7 +23,7 @@ type EnvironmentEc2 struct { AutomaticStopTimeMinutes pulumi.IntPtrOutput `pulumi:"automaticStopTimeMinutes"` ConnectionType pulumi.StringPtrOutput `pulumi:"connectionType"` Description pulumi.StringPtrOutput `pulumi:"description"` - ImageId pulumi.StringPtrOutput `pulumi:"imageId"` + ImageId pulumi.StringOutput `pulumi:"imageId"` InstanceType pulumi.StringOutput `pulumi:"instanceType"` Name pulumi.StringPtrOutput `pulumi:"name"` OwnerArn pulumi.StringPtrOutput `pulumi:"ownerArn"` @@ -39,6 +39,9 @@ func NewEnvironmentEc2(ctx *pulumi.Context, return nil, errors.New("missing one or more required arguments") } + if args.ImageId == nil { + return nil, errors.New("invalid value for required argument 'ImageId'") + } if args.InstanceType == nil { return nil, errors.New("invalid value for required argument 'InstanceType'") } @@ -88,7 +91,7 @@ type environmentEc2Args struct { AutomaticStopTimeMinutes *int `pulumi:"automaticStopTimeMinutes"` ConnectionType *string `pulumi:"connectionType"` Description *string `pulumi:"description"` - ImageId *string `pulumi:"imageId"` + ImageId string `pulumi:"imageId"` InstanceType string `pulumi:"instanceType"` Name *string `pulumi:"name"` OwnerArn *string `pulumi:"ownerArn"` @@ -102,7 +105,7 @@ type EnvironmentEc2Args struct { AutomaticStopTimeMinutes pulumi.IntPtrInput ConnectionType pulumi.StringPtrInput Description pulumi.StringPtrInput - ImageId pulumi.StringPtrInput + ImageId pulumi.StringInput InstanceType pulumi.StringInput Name pulumi.StringPtrInput OwnerArn pulumi.StringPtrInput @@ -176,8 +179,8 @@ func (o EnvironmentEc2Output) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *EnvironmentEc2) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } -func (o EnvironmentEc2Output) ImageId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *EnvironmentEc2) pulumi.StringPtrOutput { return v.ImageId }).(pulumi.StringPtrOutput) +func (o EnvironmentEc2Output) ImageId() pulumi.StringOutput { + return o.ApplyT(func(v *EnvironmentEc2) pulumi.StringOutput { return v.ImageId }).(pulumi.StringOutput) } func (o EnvironmentEc2Output) InstanceType() pulumi.StringOutput { diff --git a/sdk/go/aws/cloudfront/getKeyValueStore.go b/sdk/go/aws/cloudfront/getKeyValueStore.go new file mode 100644 index 0000000000..8cf13da58f --- /dev/null +++ b/sdk/go/aws/cloudfront/getKeyValueStore.go @@ -0,0 +1,96 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudfront + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource Type definition for AWS::CloudFront::KeyValueStore +func LookupKeyValueStore(ctx *pulumi.Context, args *LookupKeyValueStoreArgs, opts ...pulumi.InvokeOption) (*LookupKeyValueStoreResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupKeyValueStoreResult + err := ctx.Invoke("aws-native:cloudfront:getKeyValueStore", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupKeyValueStoreArgs struct { + Name string `pulumi:"name"` +} + +type LookupKeyValueStoreResult struct { + Arn *string `pulumi:"arn"` + Comment *string `pulumi:"comment"` + Id *string `pulumi:"id"` + Status *string `pulumi:"status"` +} + +func LookupKeyValueStoreOutput(ctx *pulumi.Context, args LookupKeyValueStoreOutputArgs, opts ...pulumi.InvokeOption) LookupKeyValueStoreResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupKeyValueStoreResult, error) { + args := v.(LookupKeyValueStoreArgs) + r, err := LookupKeyValueStore(ctx, &args, opts...) + var s LookupKeyValueStoreResult + if r != nil { + s = *r + } + return s, err + }).(LookupKeyValueStoreResultOutput) +} + +type LookupKeyValueStoreOutputArgs struct { + Name pulumi.StringInput `pulumi:"name"` +} + +func (LookupKeyValueStoreOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupKeyValueStoreArgs)(nil)).Elem() +} + +type LookupKeyValueStoreResultOutput struct{ *pulumi.OutputState } + +func (LookupKeyValueStoreResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupKeyValueStoreResult)(nil)).Elem() +} + +func (o LookupKeyValueStoreResultOutput) ToLookupKeyValueStoreResultOutput() LookupKeyValueStoreResultOutput { + return o +} + +func (o LookupKeyValueStoreResultOutput) ToLookupKeyValueStoreResultOutputWithContext(ctx context.Context) LookupKeyValueStoreResultOutput { + return o +} + +func (o LookupKeyValueStoreResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupKeyValueStoreResult] { + return pulumix.Output[LookupKeyValueStoreResult]{ + OutputState: o.OutputState, + } +} + +func (o LookupKeyValueStoreResultOutput) Arn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupKeyValueStoreResult) *string { return v.Arn }).(pulumi.StringPtrOutput) +} + +func (o LookupKeyValueStoreResultOutput) Comment() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupKeyValueStoreResult) *string { return v.Comment }).(pulumi.StringPtrOutput) +} + +func (o LookupKeyValueStoreResultOutput) Id() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupKeyValueStoreResult) *string { return v.Id }).(pulumi.StringPtrOutput) +} + +func (o LookupKeyValueStoreResultOutput) Status() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupKeyValueStoreResult) *string { return v.Status }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupKeyValueStoreResultOutput{}) +} diff --git a/sdk/go/aws/cloudfront/init.go b/sdk/go/aws/cloudfront/init.go index 3ae2a80bff..68a68d424c 100644 --- a/sdk/go/aws/cloudfront/init.go +++ b/sdk/go/aws/cloudfront/init.go @@ -33,6 +33,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &Function{} case "aws-native:cloudfront:KeyGroup": r = &KeyGroup{} + case "aws-native:cloudfront:KeyValueStore": + r = &KeyValueStore{} case "aws-native:cloudfront:MonitoringSubscription": r = &MonitoringSubscription{} case "aws-native:cloudfront:OriginAccessControl": diff --git a/sdk/go/aws/cloudfront/keyValueStore.go b/sdk/go/aws/cloudfront/keyValueStore.go new file mode 100644 index 0000000000..5bd8d720e7 --- /dev/null +++ b/sdk/go/aws/cloudfront/keyValueStore.go @@ -0,0 +1,156 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package cloudfront + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource Type definition for AWS::CloudFront::KeyValueStore +// +// Deprecated: KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. +type KeyValueStore struct { + pulumi.CustomResourceState + + Arn pulumi.StringOutput `pulumi:"arn"` + Comment pulumi.StringPtrOutput `pulumi:"comment"` + ImportSource KeyValueStoreImportSourcePtrOutput `pulumi:"importSource"` + Name pulumi.StringOutput `pulumi:"name"` + Status pulumi.StringOutput `pulumi:"status"` +} + +// NewKeyValueStore registers a new resource with the given unique name, arguments, and options. +func NewKeyValueStore(ctx *pulumi.Context, + name string, args *KeyValueStoreArgs, opts ...pulumi.ResourceOption) (*KeyValueStore, error) { + if args == nil { + args = &KeyValueStoreArgs{} + } + + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "name", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource KeyValueStore + err := ctx.RegisterResource("aws-native:cloudfront:KeyValueStore", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetKeyValueStore gets an existing KeyValueStore 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 GetKeyValueStore(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *KeyValueStoreState, opts ...pulumi.ResourceOption) (*KeyValueStore, error) { + var resource KeyValueStore + err := ctx.ReadResource("aws-native:cloudfront:KeyValueStore", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering KeyValueStore resources. +type keyValueStoreState struct { +} + +type KeyValueStoreState struct { +} + +func (KeyValueStoreState) ElementType() reflect.Type { + return reflect.TypeOf((*keyValueStoreState)(nil)).Elem() +} + +type keyValueStoreArgs struct { + Comment *string `pulumi:"comment"` + ImportSource *KeyValueStoreImportSource `pulumi:"importSource"` + Name *string `pulumi:"name"` +} + +// The set of arguments for constructing a KeyValueStore resource. +type KeyValueStoreArgs struct { + Comment pulumi.StringPtrInput + ImportSource KeyValueStoreImportSourcePtrInput + Name pulumi.StringPtrInput +} + +func (KeyValueStoreArgs) ElementType() reflect.Type { + return reflect.TypeOf((*keyValueStoreArgs)(nil)).Elem() +} + +type KeyValueStoreInput interface { + pulumi.Input + + ToKeyValueStoreOutput() KeyValueStoreOutput + ToKeyValueStoreOutputWithContext(ctx context.Context) KeyValueStoreOutput +} + +func (*KeyValueStore) ElementType() reflect.Type { + return reflect.TypeOf((**KeyValueStore)(nil)).Elem() +} + +func (i *KeyValueStore) ToKeyValueStoreOutput() KeyValueStoreOutput { + return i.ToKeyValueStoreOutputWithContext(context.Background()) +} + +func (i *KeyValueStore) ToKeyValueStoreOutputWithContext(ctx context.Context) KeyValueStoreOutput { + return pulumi.ToOutputWithContext(ctx, i).(KeyValueStoreOutput) +} + +func (i *KeyValueStore) ToOutput(ctx context.Context) pulumix.Output[*KeyValueStore] { + return pulumix.Output[*KeyValueStore]{ + OutputState: i.ToKeyValueStoreOutputWithContext(ctx).OutputState, + } +} + +type KeyValueStoreOutput struct{ *pulumi.OutputState } + +func (KeyValueStoreOutput) ElementType() reflect.Type { + return reflect.TypeOf((**KeyValueStore)(nil)).Elem() +} + +func (o KeyValueStoreOutput) ToKeyValueStoreOutput() KeyValueStoreOutput { + return o +} + +func (o KeyValueStoreOutput) ToKeyValueStoreOutputWithContext(ctx context.Context) KeyValueStoreOutput { + return o +} + +func (o KeyValueStoreOutput) ToOutput(ctx context.Context) pulumix.Output[*KeyValueStore] { + return pulumix.Output[*KeyValueStore]{ + OutputState: o.OutputState, + } +} + +func (o KeyValueStoreOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *KeyValueStore) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +func (o KeyValueStoreOutput) Comment() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KeyValueStore) pulumi.StringPtrOutput { return v.Comment }).(pulumi.StringPtrOutput) +} + +func (o KeyValueStoreOutput) ImportSource() KeyValueStoreImportSourcePtrOutput { + return o.ApplyT(func(v *KeyValueStore) KeyValueStoreImportSourcePtrOutput { return v.ImportSource }).(KeyValueStoreImportSourcePtrOutput) +} + +func (o KeyValueStoreOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *KeyValueStore) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +func (o KeyValueStoreOutput) Status() pulumi.StringOutput { + return o.ApplyT(func(v *KeyValueStore) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*KeyValueStoreInput)(nil)).Elem(), &KeyValueStore{}) + pulumi.RegisterOutputType(KeyValueStoreOutput{}) +} diff --git a/sdk/go/aws/cloudfront/pulumiTypes.go b/sdk/go/aws/cloudfront/pulumiTypes.go index 2d9c74cd4d..7e87e639d4 100644 --- a/sdk/go/aws/cloudfront/pulumiTypes.go +++ b/sdk/go/aws/cloudfront/pulumiTypes.go @@ -6932,6 +6932,178 @@ func (o KeyGroupConfigPtrOutput) Name() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type KeyValueStoreImportSource struct { + SourceArn string `pulumi:"sourceArn"` + SourceType string `pulumi:"sourceType"` +} + +// KeyValueStoreImportSourceInput is an input type that accepts KeyValueStoreImportSourceArgs and KeyValueStoreImportSourceOutput values. +// You can construct a concrete instance of `KeyValueStoreImportSourceInput` via: +// +// KeyValueStoreImportSourceArgs{...} +type KeyValueStoreImportSourceInput interface { + pulumi.Input + + ToKeyValueStoreImportSourceOutput() KeyValueStoreImportSourceOutput + ToKeyValueStoreImportSourceOutputWithContext(context.Context) KeyValueStoreImportSourceOutput +} + +type KeyValueStoreImportSourceArgs struct { + SourceArn pulumi.StringInput `pulumi:"sourceArn"` + SourceType pulumi.StringInput `pulumi:"sourceType"` +} + +func (KeyValueStoreImportSourceArgs) ElementType() reflect.Type { + return reflect.TypeOf((*KeyValueStoreImportSource)(nil)).Elem() +} + +func (i KeyValueStoreImportSourceArgs) ToKeyValueStoreImportSourceOutput() KeyValueStoreImportSourceOutput { + return i.ToKeyValueStoreImportSourceOutputWithContext(context.Background()) +} + +func (i KeyValueStoreImportSourceArgs) ToKeyValueStoreImportSourceOutputWithContext(ctx context.Context) KeyValueStoreImportSourceOutput { + return pulumi.ToOutputWithContext(ctx, i).(KeyValueStoreImportSourceOutput) +} + +func (i KeyValueStoreImportSourceArgs) ToOutput(ctx context.Context) pulumix.Output[KeyValueStoreImportSource] { + return pulumix.Output[KeyValueStoreImportSource]{ + OutputState: i.ToKeyValueStoreImportSourceOutputWithContext(ctx).OutputState, + } +} + +func (i KeyValueStoreImportSourceArgs) ToKeyValueStoreImportSourcePtrOutput() KeyValueStoreImportSourcePtrOutput { + return i.ToKeyValueStoreImportSourcePtrOutputWithContext(context.Background()) +} + +func (i KeyValueStoreImportSourceArgs) ToKeyValueStoreImportSourcePtrOutputWithContext(ctx context.Context) KeyValueStoreImportSourcePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(KeyValueStoreImportSourceOutput).ToKeyValueStoreImportSourcePtrOutputWithContext(ctx) +} + +// KeyValueStoreImportSourcePtrInput is an input type that accepts KeyValueStoreImportSourceArgs, KeyValueStoreImportSourcePtr and KeyValueStoreImportSourcePtrOutput values. +// You can construct a concrete instance of `KeyValueStoreImportSourcePtrInput` via: +// +// KeyValueStoreImportSourceArgs{...} +// +// or: +// +// nil +type KeyValueStoreImportSourcePtrInput interface { + pulumi.Input + + ToKeyValueStoreImportSourcePtrOutput() KeyValueStoreImportSourcePtrOutput + ToKeyValueStoreImportSourcePtrOutputWithContext(context.Context) KeyValueStoreImportSourcePtrOutput +} + +type keyValueStoreImportSourcePtrType KeyValueStoreImportSourceArgs + +func KeyValueStoreImportSourcePtr(v *KeyValueStoreImportSourceArgs) KeyValueStoreImportSourcePtrInput { + return (*keyValueStoreImportSourcePtrType)(v) +} + +func (*keyValueStoreImportSourcePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**KeyValueStoreImportSource)(nil)).Elem() +} + +func (i *keyValueStoreImportSourcePtrType) ToKeyValueStoreImportSourcePtrOutput() KeyValueStoreImportSourcePtrOutput { + return i.ToKeyValueStoreImportSourcePtrOutputWithContext(context.Background()) +} + +func (i *keyValueStoreImportSourcePtrType) ToKeyValueStoreImportSourcePtrOutputWithContext(ctx context.Context) KeyValueStoreImportSourcePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(KeyValueStoreImportSourcePtrOutput) +} + +func (i *keyValueStoreImportSourcePtrType) ToOutput(ctx context.Context) pulumix.Output[*KeyValueStoreImportSource] { + return pulumix.Output[*KeyValueStoreImportSource]{ + OutputState: i.ToKeyValueStoreImportSourcePtrOutputWithContext(ctx).OutputState, + } +} + +type KeyValueStoreImportSourceOutput struct{ *pulumi.OutputState } + +func (KeyValueStoreImportSourceOutput) ElementType() reflect.Type { + return reflect.TypeOf((*KeyValueStoreImportSource)(nil)).Elem() +} + +func (o KeyValueStoreImportSourceOutput) ToKeyValueStoreImportSourceOutput() KeyValueStoreImportSourceOutput { + return o +} + +func (o KeyValueStoreImportSourceOutput) ToKeyValueStoreImportSourceOutputWithContext(ctx context.Context) KeyValueStoreImportSourceOutput { + return o +} + +func (o KeyValueStoreImportSourceOutput) ToKeyValueStoreImportSourcePtrOutput() KeyValueStoreImportSourcePtrOutput { + return o.ToKeyValueStoreImportSourcePtrOutputWithContext(context.Background()) +} + +func (o KeyValueStoreImportSourceOutput) ToKeyValueStoreImportSourcePtrOutputWithContext(ctx context.Context) KeyValueStoreImportSourcePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v KeyValueStoreImportSource) *KeyValueStoreImportSource { + return &v + }).(KeyValueStoreImportSourcePtrOutput) +} + +func (o KeyValueStoreImportSourceOutput) ToOutput(ctx context.Context) pulumix.Output[KeyValueStoreImportSource] { + return pulumix.Output[KeyValueStoreImportSource]{ + OutputState: o.OutputState, + } +} + +func (o KeyValueStoreImportSourceOutput) SourceArn() pulumi.StringOutput { + return o.ApplyT(func(v KeyValueStoreImportSource) string { return v.SourceArn }).(pulumi.StringOutput) +} + +func (o KeyValueStoreImportSourceOutput) SourceType() pulumi.StringOutput { + return o.ApplyT(func(v KeyValueStoreImportSource) string { return v.SourceType }).(pulumi.StringOutput) +} + +type KeyValueStoreImportSourcePtrOutput struct{ *pulumi.OutputState } + +func (KeyValueStoreImportSourcePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**KeyValueStoreImportSource)(nil)).Elem() +} + +func (o KeyValueStoreImportSourcePtrOutput) ToKeyValueStoreImportSourcePtrOutput() KeyValueStoreImportSourcePtrOutput { + return o +} + +func (o KeyValueStoreImportSourcePtrOutput) ToKeyValueStoreImportSourcePtrOutputWithContext(ctx context.Context) KeyValueStoreImportSourcePtrOutput { + return o +} + +func (o KeyValueStoreImportSourcePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*KeyValueStoreImportSource] { + return pulumix.Output[*KeyValueStoreImportSource]{ + OutputState: o.OutputState, + } +} + +func (o KeyValueStoreImportSourcePtrOutput) Elem() KeyValueStoreImportSourceOutput { + return o.ApplyT(func(v *KeyValueStoreImportSource) KeyValueStoreImportSource { + if v != nil { + return *v + } + var ret KeyValueStoreImportSource + return ret + }).(KeyValueStoreImportSourceOutput) +} + +func (o KeyValueStoreImportSourcePtrOutput) SourceArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KeyValueStoreImportSource) *string { + if v == nil { + return nil + } + return &v.SourceArn + }).(pulumi.StringPtrOutput) +} + +func (o KeyValueStoreImportSourcePtrOutput) SourceType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *KeyValueStoreImportSource) *string { + if v == nil { + return nil + } + return &v.SourceType + }).(pulumi.StringPtrOutput) +} + type MonitoringSubscriptionType struct { RealtimeMetricsSubscriptionConfig *MonitoringSubscriptionRealtimeMetricsSubscriptionConfig `pulumi:"realtimeMetricsSubscriptionConfig"` } @@ -12132,6 +12304,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*FunctionMetadataInput)(nil)).Elem(), FunctionMetadataArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FunctionMetadataPtrInput)(nil)).Elem(), FunctionMetadataArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*KeyGroupConfigInput)(nil)).Elem(), KeyGroupConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*KeyValueStoreImportSourceInput)(nil)).Elem(), KeyValueStoreImportSourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*KeyValueStoreImportSourcePtrInput)(nil)).Elem(), KeyValueStoreImportSourceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MonitoringSubscriptionTypeInput)(nil)).Elem(), MonitoringSubscriptionTypeArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MonitoringSubscriptionRealtimeMetricsSubscriptionConfigInput)(nil)).Elem(), MonitoringSubscriptionRealtimeMetricsSubscriptionConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*MonitoringSubscriptionRealtimeMetricsSubscriptionConfigPtrInput)(nil)).Elem(), MonitoringSubscriptionRealtimeMetricsSubscriptionConfigArgs{}) @@ -12267,6 +12441,8 @@ func init() { pulumi.RegisterOutputType(FunctionMetadataPtrOutput{}) pulumi.RegisterOutputType(KeyGroupConfigOutput{}) pulumi.RegisterOutputType(KeyGroupConfigPtrOutput{}) + pulumi.RegisterOutputType(KeyValueStoreImportSourceOutput{}) + pulumi.RegisterOutputType(KeyValueStoreImportSourcePtrOutput{}) pulumi.RegisterOutputType(MonitoringSubscriptionTypeOutput{}) pulumi.RegisterOutputType(MonitoringSubscriptionTypePtrOutput{}) pulumi.RegisterOutputType(MonitoringSubscriptionRealtimeMetricsSubscriptionConfigOutput{}) diff --git a/sdk/go/aws/cloudtrail/eventDataStore.go b/sdk/go/aws/cloudtrail/eventDataStore.go index 2a5d7f1ec5..4d182cdaed 100644 --- a/sdk/go/aws/cloudtrail/eventDataStore.go +++ b/sdk/go/aws/cloudtrail/eventDataStore.go @@ -24,6 +24,10 @@ type EventDataStore struct { CreatedTimestamp pulumi.StringOutput `pulumi:"createdTimestamp"` // The ARN of the event data store. EventDataStoreArn pulumi.StringOutput `pulumi:"eventDataStoreArn"` + // Indicates whether federation is enabled on an event data store. + FederationEnabled pulumi.BoolPtrOutput `pulumi:"federationEnabled"` + // The ARN of the role used for event data store federation. + FederationRoleArn pulumi.StringPtrOutput `pulumi:"federationRoleArn"` // Indicates whether the event data store is ingesting events. IngestionEnabled pulumi.BoolPtrOutput `pulumi:"ingestionEnabled"` // Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store. @@ -93,6 +97,10 @@ type eventDataStoreArgs struct { AdvancedEventSelectors []EventDataStoreAdvancedEventSelector `pulumi:"advancedEventSelectors"` // The mode that the event data store will use to charge for event storage. BillingMode *string `pulumi:"billingMode"` + // Indicates whether federation is enabled on an event data store. + FederationEnabled *bool `pulumi:"federationEnabled"` + // The ARN of the role used for event data store federation. + FederationRoleArn *string `pulumi:"federationRoleArn"` // Indicates whether the event data store is ingesting events. IngestionEnabled *bool `pulumi:"ingestionEnabled"` // Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store. @@ -120,6 +128,10 @@ type EventDataStoreArgs struct { AdvancedEventSelectors EventDataStoreAdvancedEventSelectorArrayInput // The mode that the event data store will use to charge for event storage. BillingMode pulumi.StringPtrInput + // Indicates whether federation is enabled on an event data store. + FederationEnabled pulumi.BoolPtrInput + // The ARN of the role used for event data store federation. + FederationRoleArn pulumi.StringPtrInput // Indicates whether the event data store is ingesting events. IngestionEnabled pulumi.BoolPtrInput // Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store. @@ -212,6 +224,16 @@ func (o EventDataStoreOutput) EventDataStoreArn() pulumi.StringOutput { return o.ApplyT(func(v *EventDataStore) pulumi.StringOutput { return v.EventDataStoreArn }).(pulumi.StringOutput) } +// Indicates whether federation is enabled on an event data store. +func (o EventDataStoreOutput) FederationEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *EventDataStore) pulumi.BoolPtrOutput { return v.FederationEnabled }).(pulumi.BoolPtrOutput) +} + +// The ARN of the role used for event data store federation. +func (o EventDataStoreOutput) FederationRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *EventDataStore) pulumi.StringPtrOutput { return v.FederationRoleArn }).(pulumi.StringPtrOutput) +} + // Indicates whether the event data store is ingesting events. func (o EventDataStoreOutput) IngestionEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *EventDataStore) pulumi.BoolPtrOutput { return v.IngestionEnabled }).(pulumi.BoolPtrOutput) diff --git a/sdk/go/aws/cloudtrail/getEventDataStore.go b/sdk/go/aws/cloudtrail/getEventDataStore.go index 2e051feb6c..0eea3524a1 100644 --- a/sdk/go/aws/cloudtrail/getEventDataStore.go +++ b/sdk/go/aws/cloudtrail/getEventDataStore.go @@ -37,6 +37,10 @@ type LookupEventDataStoreResult struct { CreatedTimestamp *string `pulumi:"createdTimestamp"` // The ARN of the event data store. EventDataStoreArn *string `pulumi:"eventDataStoreArn"` + // Indicates whether federation is enabled on an event data store. + FederationEnabled *bool `pulumi:"federationEnabled"` + // The ARN of the role used for event data store federation. + FederationRoleArn *string `pulumi:"federationRoleArn"` // Indicates whether the event data store is ingesting events. IngestionEnabled *bool `pulumi:"ingestionEnabled"` // Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store. @@ -126,6 +130,16 @@ func (o LookupEventDataStoreResultOutput) EventDataStoreArn() pulumi.StringPtrOu return o.ApplyT(func(v LookupEventDataStoreResult) *string { return v.EventDataStoreArn }).(pulumi.StringPtrOutput) } +// Indicates whether federation is enabled on an event data store. +func (o LookupEventDataStoreResultOutput) FederationEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v LookupEventDataStoreResult) *bool { return v.FederationEnabled }).(pulumi.BoolPtrOutput) +} + +// The ARN of the role used for event data store federation. +func (o LookupEventDataStoreResultOutput) FederationRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupEventDataStoreResult) *string { return v.FederationRoleArn }).(pulumi.StringPtrOutput) +} + // Indicates whether the event data store is ingesting events. func (o LookupEventDataStoreResultOutput) IngestionEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupEventDataStoreResult) *bool { return v.IngestionEnabled }).(pulumi.BoolPtrOutput) diff --git a/sdk/go/aws/codedeploy/deploymentConfig.go b/sdk/go/aws/codedeploy/deploymentConfig.go index a2e4a622c7..b4ebbcdb8f 100644 --- a/sdk/go/aws/codedeploy/deploymentConfig.go +++ b/sdk/go/aws/codedeploy/deploymentConfig.go @@ -24,6 +24,8 @@ type DeploymentConfig struct { MinimumHealthyHosts DeploymentConfigMinimumHealthyHostsPtrOutput `pulumi:"minimumHealthyHosts"` // The configuration that specifies how the deployment traffic is routed. TrafficRoutingConfig DeploymentConfigTrafficRoutingConfigPtrOutput `pulumi:"trafficRoutingConfig"` + // The zonal deployment config that specifies how the zonal deployment behaves + ZonalConfig DeploymentConfigZonalConfigPtrOutput `pulumi:"zonalConfig"` } // NewDeploymentConfig registers a new resource with the given unique name, arguments, and options. @@ -38,6 +40,7 @@ func NewDeploymentConfig(ctx *pulumi.Context, "deploymentConfigName", "minimumHealthyHosts", "trafficRoutingConfig", + "zonalConfig", }) opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) @@ -81,6 +84,8 @@ type deploymentConfigArgs struct { MinimumHealthyHosts *DeploymentConfigMinimumHealthyHosts `pulumi:"minimumHealthyHosts"` // The configuration that specifies how the deployment traffic is routed. TrafficRoutingConfig *DeploymentConfigTrafficRoutingConfig `pulumi:"trafficRoutingConfig"` + // The zonal deployment config that specifies how the zonal deployment behaves + ZonalConfig *DeploymentConfigZonalConfig `pulumi:"zonalConfig"` } // The set of arguments for constructing a DeploymentConfig resource. @@ -93,6 +98,8 @@ type DeploymentConfigArgs struct { MinimumHealthyHosts DeploymentConfigMinimumHealthyHostsPtrInput // The configuration that specifies how the deployment traffic is routed. TrafficRoutingConfig DeploymentConfigTrafficRoutingConfigPtrInput + // The zonal deployment config that specifies how the zonal deployment behaves + ZonalConfig DeploymentConfigZonalConfigPtrInput } func (DeploymentConfigArgs) ElementType() reflect.Type { @@ -164,6 +171,11 @@ func (o DeploymentConfigOutput) TrafficRoutingConfig() DeploymentConfigTrafficRo return o.ApplyT(func(v *DeploymentConfig) DeploymentConfigTrafficRoutingConfigPtrOutput { return v.TrafficRoutingConfig }).(DeploymentConfigTrafficRoutingConfigPtrOutput) } +// The zonal deployment config that specifies how the zonal deployment behaves +func (o DeploymentConfigOutput) ZonalConfig() DeploymentConfigZonalConfigPtrOutput { + return o.ApplyT(func(v *DeploymentConfig) DeploymentConfigZonalConfigPtrOutput { return v.ZonalConfig }).(DeploymentConfigZonalConfigPtrOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigInput)(nil)).Elem(), &DeploymentConfig{}) pulumi.RegisterOutputType(DeploymentConfigOutput{}) diff --git a/sdk/go/aws/codedeploy/deploymentGroup.go b/sdk/go/aws/codedeploy/deploymentGroup.go index 013b58c12b..443eb10318 100644 --- a/sdk/go/aws/codedeploy/deploymentGroup.go +++ b/sdk/go/aws/codedeploy/deploymentGroup.go @@ -37,6 +37,7 @@ type DeploymentGroup struct { OutdatedInstancesStrategy pulumi.StringPtrOutput `pulumi:"outdatedInstancesStrategy"` ServiceRoleArn pulumi.StringOutput `pulumi:"serviceRoleArn"` Tags DeploymentGroupTagArrayOutput `pulumi:"tags"` + TerminationHookEnabled pulumi.BoolPtrOutput `pulumi:"terminationHookEnabled"` TriggerConfigurations DeploymentGroupTriggerConfigArrayOutput `pulumi:"triggerConfigurations"` } @@ -109,6 +110,7 @@ type deploymentGroupArgs struct { OutdatedInstancesStrategy *string `pulumi:"outdatedInstancesStrategy"` ServiceRoleArn string `pulumi:"serviceRoleArn"` Tags []DeploymentGroupTag `pulumi:"tags"` + TerminationHookEnabled *bool `pulumi:"terminationHookEnabled"` TriggerConfigurations []DeploymentGroupTriggerConfig `pulumi:"triggerConfigurations"` } @@ -132,6 +134,7 @@ type DeploymentGroupArgs struct { OutdatedInstancesStrategy pulumi.StringPtrInput ServiceRoleArn pulumi.StringInput Tags DeploymentGroupTagArrayInput + TerminationHookEnabled pulumi.BoolPtrInput TriggerConfigurations DeploymentGroupTriggerConfigArrayInput } @@ -260,6 +263,10 @@ func (o DeploymentGroupOutput) Tags() DeploymentGroupTagArrayOutput { return o.ApplyT(func(v *DeploymentGroup) DeploymentGroupTagArrayOutput { return v.Tags }).(DeploymentGroupTagArrayOutput) } +func (o DeploymentGroupOutput) TerminationHookEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DeploymentGroup) pulumi.BoolPtrOutput { return v.TerminationHookEnabled }).(pulumi.BoolPtrOutput) +} + func (o DeploymentGroupOutput) TriggerConfigurations() DeploymentGroupTriggerConfigArrayOutput { return o.ApplyT(func(v *DeploymentGroup) DeploymentGroupTriggerConfigArrayOutput { return v.TriggerConfigurations }).(DeploymentGroupTriggerConfigArrayOutput) } diff --git a/sdk/go/aws/codedeploy/getDeploymentGroup.go b/sdk/go/aws/codedeploy/getDeploymentGroup.go index 1ab5e8b826..5eb57e100d 100644 --- a/sdk/go/aws/codedeploy/getDeploymentGroup.go +++ b/sdk/go/aws/codedeploy/getDeploymentGroup.go @@ -45,6 +45,7 @@ type LookupDeploymentGroupResult struct { OutdatedInstancesStrategy *string `pulumi:"outdatedInstancesStrategy"` ServiceRoleArn *string `pulumi:"serviceRoleArn"` Tags []DeploymentGroupTag `pulumi:"tags"` + TerminationHookEnabled *bool `pulumi:"terminationHookEnabled"` TriggerConfigurations []DeploymentGroupTriggerConfig `pulumi:"triggerConfigurations"` } @@ -161,6 +162,10 @@ func (o LookupDeploymentGroupResultOutput) Tags() DeploymentGroupTagArrayOutput return o.ApplyT(func(v LookupDeploymentGroupResult) []DeploymentGroupTag { return v.Tags }).(DeploymentGroupTagArrayOutput) } +func (o LookupDeploymentGroupResultOutput) TerminationHookEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v LookupDeploymentGroupResult) *bool { return v.TerminationHookEnabled }).(pulumi.BoolPtrOutput) +} + func (o LookupDeploymentGroupResultOutput) TriggerConfigurations() DeploymentGroupTriggerConfigArrayOutput { return o.ApplyT(func(v LookupDeploymentGroupResult) []DeploymentGroupTriggerConfig { return v.TriggerConfigurations }).(DeploymentGroupTriggerConfigArrayOutput) } diff --git a/sdk/go/aws/codedeploy/pulumiTypes.go b/sdk/go/aws/codedeploy/pulumiTypes.go index 58f4ff326c..d870ee2cf0 100644 --- a/sdk/go/aws/codedeploy/pulumiTypes.go +++ b/sdk/go/aws/codedeploy/pulumiTypes.go @@ -310,6 +310,178 @@ func (o DeploymentConfigMinimumHealthyHostsPtrOutput) Value() pulumi.IntPtrOutpu }).(pulumi.IntPtrOutput) } +type DeploymentConfigMinimumHealthyHostsPerZone struct { + Type string `pulumi:"type"` + Value int `pulumi:"value"` +} + +// DeploymentConfigMinimumHealthyHostsPerZoneInput is an input type that accepts DeploymentConfigMinimumHealthyHostsPerZoneArgs and DeploymentConfigMinimumHealthyHostsPerZoneOutput values. +// You can construct a concrete instance of `DeploymentConfigMinimumHealthyHostsPerZoneInput` via: +// +// DeploymentConfigMinimumHealthyHostsPerZoneArgs{...} +type DeploymentConfigMinimumHealthyHostsPerZoneInput interface { + pulumi.Input + + ToDeploymentConfigMinimumHealthyHostsPerZoneOutput() DeploymentConfigMinimumHealthyHostsPerZoneOutput + ToDeploymentConfigMinimumHealthyHostsPerZoneOutputWithContext(context.Context) DeploymentConfigMinimumHealthyHostsPerZoneOutput +} + +type DeploymentConfigMinimumHealthyHostsPerZoneArgs struct { + Type pulumi.StringInput `pulumi:"type"` + Value pulumi.IntInput `pulumi:"value"` +} + +func (DeploymentConfigMinimumHealthyHostsPerZoneArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DeploymentConfigMinimumHealthyHostsPerZone)(nil)).Elem() +} + +func (i DeploymentConfigMinimumHealthyHostsPerZoneArgs) ToDeploymentConfigMinimumHealthyHostsPerZoneOutput() DeploymentConfigMinimumHealthyHostsPerZoneOutput { + return i.ToDeploymentConfigMinimumHealthyHostsPerZoneOutputWithContext(context.Background()) +} + +func (i DeploymentConfigMinimumHealthyHostsPerZoneArgs) ToDeploymentConfigMinimumHealthyHostsPerZoneOutputWithContext(ctx context.Context) DeploymentConfigMinimumHealthyHostsPerZoneOutput { + return pulumi.ToOutputWithContext(ctx, i).(DeploymentConfigMinimumHealthyHostsPerZoneOutput) +} + +func (i DeploymentConfigMinimumHealthyHostsPerZoneArgs) ToOutput(ctx context.Context) pulumix.Output[DeploymentConfigMinimumHealthyHostsPerZone] { + return pulumix.Output[DeploymentConfigMinimumHealthyHostsPerZone]{ + OutputState: i.ToDeploymentConfigMinimumHealthyHostsPerZoneOutputWithContext(ctx).OutputState, + } +} + +func (i DeploymentConfigMinimumHealthyHostsPerZoneArgs) ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutput() DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return i.ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(context.Background()) +} + +func (i DeploymentConfigMinimumHealthyHostsPerZoneArgs) ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(ctx context.Context) DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DeploymentConfigMinimumHealthyHostsPerZoneOutput).ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(ctx) +} + +// DeploymentConfigMinimumHealthyHostsPerZonePtrInput is an input type that accepts DeploymentConfigMinimumHealthyHostsPerZoneArgs, DeploymentConfigMinimumHealthyHostsPerZonePtr and DeploymentConfigMinimumHealthyHostsPerZonePtrOutput values. +// You can construct a concrete instance of `DeploymentConfigMinimumHealthyHostsPerZonePtrInput` via: +// +// DeploymentConfigMinimumHealthyHostsPerZoneArgs{...} +// +// or: +// +// nil +type DeploymentConfigMinimumHealthyHostsPerZonePtrInput interface { + pulumi.Input + + ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutput() DeploymentConfigMinimumHealthyHostsPerZonePtrOutput + ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(context.Context) DeploymentConfigMinimumHealthyHostsPerZonePtrOutput +} + +type deploymentConfigMinimumHealthyHostsPerZonePtrType DeploymentConfigMinimumHealthyHostsPerZoneArgs + +func DeploymentConfigMinimumHealthyHostsPerZonePtr(v *DeploymentConfigMinimumHealthyHostsPerZoneArgs) DeploymentConfigMinimumHealthyHostsPerZonePtrInput { + return (*deploymentConfigMinimumHealthyHostsPerZonePtrType)(v) +} + +func (*deploymentConfigMinimumHealthyHostsPerZonePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DeploymentConfigMinimumHealthyHostsPerZone)(nil)).Elem() +} + +func (i *deploymentConfigMinimumHealthyHostsPerZonePtrType) ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutput() DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return i.ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(context.Background()) +} + +func (i *deploymentConfigMinimumHealthyHostsPerZonePtrType) ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(ctx context.Context) DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) +} + +func (i *deploymentConfigMinimumHealthyHostsPerZonePtrType) ToOutput(ctx context.Context) pulumix.Output[*DeploymentConfigMinimumHealthyHostsPerZone] { + return pulumix.Output[*DeploymentConfigMinimumHealthyHostsPerZone]{ + OutputState: i.ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(ctx).OutputState, + } +} + +type DeploymentConfigMinimumHealthyHostsPerZoneOutput struct{ *pulumi.OutputState } + +func (DeploymentConfigMinimumHealthyHostsPerZoneOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DeploymentConfigMinimumHealthyHostsPerZone)(nil)).Elem() +} + +func (o DeploymentConfigMinimumHealthyHostsPerZoneOutput) ToDeploymentConfigMinimumHealthyHostsPerZoneOutput() DeploymentConfigMinimumHealthyHostsPerZoneOutput { + return o +} + +func (o DeploymentConfigMinimumHealthyHostsPerZoneOutput) ToDeploymentConfigMinimumHealthyHostsPerZoneOutputWithContext(ctx context.Context) DeploymentConfigMinimumHealthyHostsPerZoneOutput { + return o +} + +func (o DeploymentConfigMinimumHealthyHostsPerZoneOutput) ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutput() DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return o.ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(context.Background()) +} + +func (o DeploymentConfigMinimumHealthyHostsPerZoneOutput) ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(ctx context.Context) DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DeploymentConfigMinimumHealthyHostsPerZone) *DeploymentConfigMinimumHealthyHostsPerZone { + return &v + }).(DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) +} + +func (o DeploymentConfigMinimumHealthyHostsPerZoneOutput) ToOutput(ctx context.Context) pulumix.Output[DeploymentConfigMinimumHealthyHostsPerZone] { + return pulumix.Output[DeploymentConfigMinimumHealthyHostsPerZone]{ + OutputState: o.OutputState, + } +} + +func (o DeploymentConfigMinimumHealthyHostsPerZoneOutput) Type() pulumi.StringOutput { + return o.ApplyT(func(v DeploymentConfigMinimumHealthyHostsPerZone) string { return v.Type }).(pulumi.StringOutput) +} + +func (o DeploymentConfigMinimumHealthyHostsPerZoneOutput) Value() pulumi.IntOutput { + return o.ApplyT(func(v DeploymentConfigMinimumHealthyHostsPerZone) int { return v.Value }).(pulumi.IntOutput) +} + +type DeploymentConfigMinimumHealthyHostsPerZonePtrOutput struct{ *pulumi.OutputState } + +func (DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DeploymentConfigMinimumHealthyHostsPerZone)(nil)).Elem() +} + +func (o DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutput() DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return o +} + +func (o DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) ToDeploymentConfigMinimumHealthyHostsPerZonePtrOutputWithContext(ctx context.Context) DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return o +} + +func (o DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DeploymentConfigMinimumHealthyHostsPerZone] { + return pulumix.Output[*DeploymentConfigMinimumHealthyHostsPerZone]{ + OutputState: o.OutputState, + } +} + +func (o DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) Elem() DeploymentConfigMinimumHealthyHostsPerZoneOutput { + return o.ApplyT(func(v *DeploymentConfigMinimumHealthyHostsPerZone) DeploymentConfigMinimumHealthyHostsPerZone { + if v != nil { + return *v + } + var ret DeploymentConfigMinimumHealthyHostsPerZone + return ret + }).(DeploymentConfigMinimumHealthyHostsPerZoneOutput) +} + +func (o DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) Type() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DeploymentConfigMinimumHealthyHostsPerZone) *string { + if v == nil { + return nil + } + return &v.Type + }).(pulumi.StringPtrOutput) +} + +func (o DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) Value() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DeploymentConfigMinimumHealthyHostsPerZone) *int { + if v == nil { + return nil + } + return &v.Value + }).(pulumi.IntPtrOutput) +} + type DeploymentConfigTimeBasedCanary struct { CanaryInterval int `pulumi:"canaryInterval"` CanaryPercentage int `pulumi:"canaryPercentage"` @@ -845,6 +1017,195 @@ func (o DeploymentConfigTrafficRoutingConfigPtrOutput) Type() pulumi.StringPtrOu }).(pulumi.StringPtrOutput) } +type DeploymentConfigZonalConfig struct { + FirstZoneMonitorDurationInSeconds *int `pulumi:"firstZoneMonitorDurationInSeconds"` + MinimumHealthyHostsPerZone *DeploymentConfigMinimumHealthyHostsPerZone `pulumi:"minimumHealthyHostsPerZone"` + MonitorDurationInSeconds *int `pulumi:"monitorDurationInSeconds"` +} + +// DeploymentConfigZonalConfigInput is an input type that accepts DeploymentConfigZonalConfigArgs and DeploymentConfigZonalConfigOutput values. +// You can construct a concrete instance of `DeploymentConfigZonalConfigInput` via: +// +// DeploymentConfigZonalConfigArgs{...} +type DeploymentConfigZonalConfigInput interface { + pulumi.Input + + ToDeploymentConfigZonalConfigOutput() DeploymentConfigZonalConfigOutput + ToDeploymentConfigZonalConfigOutputWithContext(context.Context) DeploymentConfigZonalConfigOutput +} + +type DeploymentConfigZonalConfigArgs struct { + FirstZoneMonitorDurationInSeconds pulumi.IntPtrInput `pulumi:"firstZoneMonitorDurationInSeconds"` + MinimumHealthyHostsPerZone DeploymentConfigMinimumHealthyHostsPerZonePtrInput `pulumi:"minimumHealthyHostsPerZone"` + MonitorDurationInSeconds pulumi.IntPtrInput `pulumi:"monitorDurationInSeconds"` +} + +func (DeploymentConfigZonalConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DeploymentConfigZonalConfig)(nil)).Elem() +} + +func (i DeploymentConfigZonalConfigArgs) ToDeploymentConfigZonalConfigOutput() DeploymentConfigZonalConfigOutput { + return i.ToDeploymentConfigZonalConfigOutputWithContext(context.Background()) +} + +func (i DeploymentConfigZonalConfigArgs) ToDeploymentConfigZonalConfigOutputWithContext(ctx context.Context) DeploymentConfigZonalConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DeploymentConfigZonalConfigOutput) +} + +func (i DeploymentConfigZonalConfigArgs) ToOutput(ctx context.Context) pulumix.Output[DeploymentConfigZonalConfig] { + return pulumix.Output[DeploymentConfigZonalConfig]{ + OutputState: i.ToDeploymentConfigZonalConfigOutputWithContext(ctx).OutputState, + } +} + +func (i DeploymentConfigZonalConfigArgs) ToDeploymentConfigZonalConfigPtrOutput() DeploymentConfigZonalConfigPtrOutput { + return i.ToDeploymentConfigZonalConfigPtrOutputWithContext(context.Background()) +} + +func (i DeploymentConfigZonalConfigArgs) ToDeploymentConfigZonalConfigPtrOutputWithContext(ctx context.Context) DeploymentConfigZonalConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DeploymentConfigZonalConfigOutput).ToDeploymentConfigZonalConfigPtrOutputWithContext(ctx) +} + +// DeploymentConfigZonalConfigPtrInput is an input type that accepts DeploymentConfigZonalConfigArgs, DeploymentConfigZonalConfigPtr and DeploymentConfigZonalConfigPtrOutput values. +// You can construct a concrete instance of `DeploymentConfigZonalConfigPtrInput` via: +// +// DeploymentConfigZonalConfigArgs{...} +// +// or: +// +// nil +type DeploymentConfigZonalConfigPtrInput interface { + pulumi.Input + + ToDeploymentConfigZonalConfigPtrOutput() DeploymentConfigZonalConfigPtrOutput + ToDeploymentConfigZonalConfigPtrOutputWithContext(context.Context) DeploymentConfigZonalConfigPtrOutput +} + +type deploymentConfigZonalConfigPtrType DeploymentConfigZonalConfigArgs + +func DeploymentConfigZonalConfigPtr(v *DeploymentConfigZonalConfigArgs) DeploymentConfigZonalConfigPtrInput { + return (*deploymentConfigZonalConfigPtrType)(v) +} + +func (*deploymentConfigZonalConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DeploymentConfigZonalConfig)(nil)).Elem() +} + +func (i *deploymentConfigZonalConfigPtrType) ToDeploymentConfigZonalConfigPtrOutput() DeploymentConfigZonalConfigPtrOutput { + return i.ToDeploymentConfigZonalConfigPtrOutputWithContext(context.Background()) +} + +func (i *deploymentConfigZonalConfigPtrType) ToDeploymentConfigZonalConfigPtrOutputWithContext(ctx context.Context) DeploymentConfigZonalConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DeploymentConfigZonalConfigPtrOutput) +} + +func (i *deploymentConfigZonalConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*DeploymentConfigZonalConfig] { + return pulumix.Output[*DeploymentConfigZonalConfig]{ + OutputState: i.ToDeploymentConfigZonalConfigPtrOutputWithContext(ctx).OutputState, + } +} + +type DeploymentConfigZonalConfigOutput struct{ *pulumi.OutputState } + +func (DeploymentConfigZonalConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DeploymentConfigZonalConfig)(nil)).Elem() +} + +func (o DeploymentConfigZonalConfigOutput) ToDeploymentConfigZonalConfigOutput() DeploymentConfigZonalConfigOutput { + return o +} + +func (o DeploymentConfigZonalConfigOutput) ToDeploymentConfigZonalConfigOutputWithContext(ctx context.Context) DeploymentConfigZonalConfigOutput { + return o +} + +func (o DeploymentConfigZonalConfigOutput) ToDeploymentConfigZonalConfigPtrOutput() DeploymentConfigZonalConfigPtrOutput { + return o.ToDeploymentConfigZonalConfigPtrOutputWithContext(context.Background()) +} + +func (o DeploymentConfigZonalConfigOutput) ToDeploymentConfigZonalConfigPtrOutputWithContext(ctx context.Context) DeploymentConfigZonalConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DeploymentConfigZonalConfig) *DeploymentConfigZonalConfig { + return &v + }).(DeploymentConfigZonalConfigPtrOutput) +} + +func (o DeploymentConfigZonalConfigOutput) ToOutput(ctx context.Context) pulumix.Output[DeploymentConfigZonalConfig] { + return pulumix.Output[DeploymentConfigZonalConfig]{ + OutputState: o.OutputState, + } +} + +func (o DeploymentConfigZonalConfigOutput) FirstZoneMonitorDurationInSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeploymentConfigZonalConfig) *int { return v.FirstZoneMonitorDurationInSeconds }).(pulumi.IntPtrOutput) +} + +func (o DeploymentConfigZonalConfigOutput) MinimumHealthyHostsPerZone() DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return o.ApplyT(func(v DeploymentConfigZonalConfig) *DeploymentConfigMinimumHealthyHostsPerZone { + return v.MinimumHealthyHostsPerZone + }).(DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) +} + +func (o DeploymentConfigZonalConfigOutput) MonitorDurationInSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeploymentConfigZonalConfig) *int { return v.MonitorDurationInSeconds }).(pulumi.IntPtrOutput) +} + +type DeploymentConfigZonalConfigPtrOutput struct{ *pulumi.OutputState } + +func (DeploymentConfigZonalConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DeploymentConfigZonalConfig)(nil)).Elem() +} + +func (o DeploymentConfigZonalConfigPtrOutput) ToDeploymentConfigZonalConfigPtrOutput() DeploymentConfigZonalConfigPtrOutput { + return o +} + +func (o DeploymentConfigZonalConfigPtrOutput) ToDeploymentConfigZonalConfigPtrOutputWithContext(ctx context.Context) DeploymentConfigZonalConfigPtrOutput { + return o +} + +func (o DeploymentConfigZonalConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DeploymentConfigZonalConfig] { + return pulumix.Output[*DeploymentConfigZonalConfig]{ + OutputState: o.OutputState, + } +} + +func (o DeploymentConfigZonalConfigPtrOutput) Elem() DeploymentConfigZonalConfigOutput { + return o.ApplyT(func(v *DeploymentConfigZonalConfig) DeploymentConfigZonalConfig { + if v != nil { + return *v + } + var ret DeploymentConfigZonalConfig + return ret + }).(DeploymentConfigZonalConfigOutput) +} + +func (o DeploymentConfigZonalConfigPtrOutput) FirstZoneMonitorDurationInSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DeploymentConfigZonalConfig) *int { + if v == nil { + return nil + } + return v.FirstZoneMonitorDurationInSeconds + }).(pulumi.IntPtrOutput) +} + +func (o DeploymentConfigZonalConfigPtrOutput) MinimumHealthyHostsPerZone() DeploymentConfigMinimumHealthyHostsPerZonePtrOutput { + return o.ApplyT(func(v *DeploymentConfigZonalConfig) *DeploymentConfigMinimumHealthyHostsPerZone { + if v == nil { + return nil + } + return v.MinimumHealthyHostsPerZone + }).(DeploymentConfigMinimumHealthyHostsPerZonePtrOutput) +} + +func (o DeploymentConfigZonalConfigPtrOutput) MonitorDurationInSeconds() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DeploymentConfigZonalConfig) *int { + if v == nil { + return nil + } + return v.MonitorDurationInSeconds + }).(pulumi.IntPtrOutput) +} + type DeploymentGroupAlarm struct { Name *string `pulumi:"name"` } @@ -4860,12 +5221,16 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ApplicationTagArrayInput)(nil)).Elem(), ApplicationTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigMinimumHealthyHostsInput)(nil)).Elem(), DeploymentConfigMinimumHealthyHostsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigMinimumHealthyHostsPtrInput)(nil)).Elem(), DeploymentConfigMinimumHealthyHostsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigMinimumHealthyHostsPerZoneInput)(nil)).Elem(), DeploymentConfigMinimumHealthyHostsPerZoneArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigMinimumHealthyHostsPerZonePtrInput)(nil)).Elem(), DeploymentConfigMinimumHealthyHostsPerZoneArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigTimeBasedCanaryInput)(nil)).Elem(), DeploymentConfigTimeBasedCanaryArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigTimeBasedCanaryPtrInput)(nil)).Elem(), DeploymentConfigTimeBasedCanaryArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigTimeBasedLinearInput)(nil)).Elem(), DeploymentConfigTimeBasedLinearArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigTimeBasedLinearPtrInput)(nil)).Elem(), DeploymentConfigTimeBasedLinearArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigTrafficRoutingConfigInput)(nil)).Elem(), DeploymentConfigTrafficRoutingConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigTrafficRoutingConfigPtrInput)(nil)).Elem(), DeploymentConfigTrafficRoutingConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigZonalConfigInput)(nil)).Elem(), DeploymentConfigZonalConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DeploymentConfigZonalConfigPtrInput)(nil)).Elem(), DeploymentConfigZonalConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentGroupAlarmInput)(nil)).Elem(), DeploymentGroupAlarmArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentGroupAlarmArrayInput)(nil)).Elem(), DeploymentGroupAlarmArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DeploymentGroupAlarmConfigurationInput)(nil)).Elem(), DeploymentGroupAlarmConfigurationArgs{}) @@ -4922,12 +5287,16 @@ func init() { pulumi.RegisterOutputType(ApplicationTagArrayOutput{}) pulumi.RegisterOutputType(DeploymentConfigMinimumHealthyHostsOutput{}) pulumi.RegisterOutputType(DeploymentConfigMinimumHealthyHostsPtrOutput{}) + pulumi.RegisterOutputType(DeploymentConfigMinimumHealthyHostsPerZoneOutput{}) + pulumi.RegisterOutputType(DeploymentConfigMinimumHealthyHostsPerZonePtrOutput{}) pulumi.RegisterOutputType(DeploymentConfigTimeBasedCanaryOutput{}) pulumi.RegisterOutputType(DeploymentConfigTimeBasedCanaryPtrOutput{}) pulumi.RegisterOutputType(DeploymentConfigTimeBasedLinearOutput{}) pulumi.RegisterOutputType(DeploymentConfigTimeBasedLinearPtrOutput{}) pulumi.RegisterOutputType(DeploymentConfigTrafficRoutingConfigOutput{}) pulumi.RegisterOutputType(DeploymentConfigTrafficRoutingConfigPtrOutput{}) + pulumi.RegisterOutputType(DeploymentConfigZonalConfigOutput{}) + pulumi.RegisterOutputType(DeploymentConfigZonalConfigPtrOutput{}) pulumi.RegisterOutputType(DeploymentGroupAlarmOutput{}) pulumi.RegisterOutputType(DeploymentGroupAlarmArrayOutput{}) pulumi.RegisterOutputType(DeploymentGroupAlarmConfigurationOutput{}) diff --git a/sdk/go/aws/codepipeline/getPipeline.go b/sdk/go/aws/codepipeline/getPipeline.go index ff4e16c1b2..ee206532fe 100644 --- a/sdk/go/aws/codepipeline/getPipeline.go +++ b/sdk/go/aws/codepipeline/getPipeline.go @@ -28,15 +28,18 @@ type LookupPipelineArgs struct { } type LookupPipelineResult struct { - ArtifactStore *PipelineArtifactStore `pulumi:"artifactStore"` - ArtifactStores []PipelineArtifactStoreMap `pulumi:"artifactStores"` - DisableInboundStageTransitions []PipelineStageTransition `pulumi:"disableInboundStageTransitions"` - Id *string `pulumi:"id"` - RestartExecutionOnUpdate *bool `pulumi:"restartExecutionOnUpdate"` - RoleArn *string `pulumi:"roleArn"` - Stages []PipelineStageDeclaration `pulumi:"stages"` - Tags []PipelineTag `pulumi:"tags"` - Version *string `pulumi:"version"` + ArtifactStore *PipelineArtifactStore `pulumi:"artifactStore"` + ArtifactStores []PipelineArtifactStoreMap `pulumi:"artifactStores"` + DisableInboundStageTransitions []PipelineStageTransition `pulumi:"disableInboundStageTransitions"` + Id *string `pulumi:"id"` + PipelineType *string `pulumi:"pipelineType"` + RestartExecutionOnUpdate *bool `pulumi:"restartExecutionOnUpdate"` + RoleArn *string `pulumi:"roleArn"` + Stages []PipelineStageDeclaration `pulumi:"stages"` + Tags []PipelineTag `pulumi:"tags"` + Triggers []PipelineTriggerDeclaration `pulumi:"triggers"` + Variables []PipelineVariableDeclaration `pulumi:"variables"` + Version *string `pulumi:"version"` } func LookupPipelineOutput(ctx *pulumi.Context, args LookupPipelineOutputArgs, opts ...pulumi.InvokeOption) LookupPipelineResultOutput { @@ -96,6 +99,10 @@ func (o LookupPipelineResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupPipelineResult) *string { return v.Id }).(pulumi.StringPtrOutput) } +func (o LookupPipelineResultOutput) PipelineType() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupPipelineResult) *string { return v.PipelineType }).(pulumi.StringPtrOutput) +} + func (o LookupPipelineResultOutput) RestartExecutionOnUpdate() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupPipelineResult) *bool { return v.RestartExecutionOnUpdate }).(pulumi.BoolPtrOutput) } @@ -112,6 +119,14 @@ func (o LookupPipelineResultOutput) Tags() PipelineTagArrayOutput { return o.ApplyT(func(v LookupPipelineResult) []PipelineTag { return v.Tags }).(PipelineTagArrayOutput) } +func (o LookupPipelineResultOutput) Triggers() PipelineTriggerDeclarationArrayOutput { + return o.ApplyT(func(v LookupPipelineResult) []PipelineTriggerDeclaration { return v.Triggers }).(PipelineTriggerDeclarationArrayOutput) +} + +func (o LookupPipelineResultOutput) Variables() PipelineVariableDeclarationArrayOutput { + return o.ApplyT(func(v LookupPipelineResult) []PipelineVariableDeclaration { return v.Variables }).(PipelineVariableDeclarationArrayOutput) +} + func (o LookupPipelineResultOutput) Version() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupPipelineResult) *string { return v.Version }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/codepipeline/pipeline.go b/sdk/go/aws/codepipeline/pipeline.go index 100a8ed446..17f3b25fb2 100644 --- a/sdk/go/aws/codepipeline/pipeline.go +++ b/sdk/go/aws/codepipeline/pipeline.go @@ -19,15 +19,18 @@ import ( type Pipeline struct { pulumi.CustomResourceState - ArtifactStore PipelineArtifactStorePtrOutput `pulumi:"artifactStore"` - ArtifactStores PipelineArtifactStoreMapArrayOutput `pulumi:"artifactStores"` - DisableInboundStageTransitions PipelineStageTransitionArrayOutput `pulumi:"disableInboundStageTransitions"` - Name pulumi.StringPtrOutput `pulumi:"name"` - RestartExecutionOnUpdate pulumi.BoolPtrOutput `pulumi:"restartExecutionOnUpdate"` - RoleArn pulumi.StringOutput `pulumi:"roleArn"` - Stages PipelineStageDeclarationArrayOutput `pulumi:"stages"` - Tags PipelineTagArrayOutput `pulumi:"tags"` - Version pulumi.StringOutput `pulumi:"version"` + ArtifactStore PipelineArtifactStorePtrOutput `pulumi:"artifactStore"` + ArtifactStores PipelineArtifactStoreMapArrayOutput `pulumi:"artifactStores"` + DisableInboundStageTransitions PipelineStageTransitionArrayOutput `pulumi:"disableInboundStageTransitions"` + Name pulumi.StringPtrOutput `pulumi:"name"` + PipelineType pulumi.StringPtrOutput `pulumi:"pipelineType"` + RestartExecutionOnUpdate pulumi.BoolPtrOutput `pulumi:"restartExecutionOnUpdate"` + RoleArn pulumi.StringOutput `pulumi:"roleArn"` + Stages PipelineStageDeclarationArrayOutput `pulumi:"stages"` + Tags PipelineTagArrayOutput `pulumi:"tags"` + Triggers PipelineTriggerDeclarationArrayOutput `pulumi:"triggers"` + Variables PipelineVariableDeclarationArrayOutput `pulumi:"variables"` + Version pulumi.StringOutput `pulumi:"version"` } // NewPipeline registers a new resource with the given unique name, arguments, and options. @@ -80,14 +83,17 @@ func (PipelineState) ElementType() reflect.Type { } type pipelineArgs struct { - ArtifactStore *PipelineArtifactStore `pulumi:"artifactStore"` - ArtifactStores []PipelineArtifactStoreMap `pulumi:"artifactStores"` - DisableInboundStageTransitions []PipelineStageTransition `pulumi:"disableInboundStageTransitions"` - Name *string `pulumi:"name"` - RestartExecutionOnUpdate *bool `pulumi:"restartExecutionOnUpdate"` - RoleArn string `pulumi:"roleArn"` - Stages []PipelineStageDeclaration `pulumi:"stages"` - Tags []PipelineTag `pulumi:"tags"` + ArtifactStore *PipelineArtifactStore `pulumi:"artifactStore"` + ArtifactStores []PipelineArtifactStoreMap `pulumi:"artifactStores"` + DisableInboundStageTransitions []PipelineStageTransition `pulumi:"disableInboundStageTransitions"` + Name *string `pulumi:"name"` + PipelineType *string `pulumi:"pipelineType"` + RestartExecutionOnUpdate *bool `pulumi:"restartExecutionOnUpdate"` + RoleArn string `pulumi:"roleArn"` + Stages []PipelineStageDeclaration `pulumi:"stages"` + Tags []PipelineTag `pulumi:"tags"` + Triggers []PipelineTriggerDeclaration `pulumi:"triggers"` + Variables []PipelineVariableDeclaration `pulumi:"variables"` } // The set of arguments for constructing a Pipeline resource. @@ -96,10 +102,13 @@ type PipelineArgs struct { ArtifactStores PipelineArtifactStoreMapArrayInput DisableInboundStageTransitions PipelineStageTransitionArrayInput Name pulumi.StringPtrInput + PipelineType pulumi.StringPtrInput RestartExecutionOnUpdate pulumi.BoolPtrInput RoleArn pulumi.StringInput Stages PipelineStageDeclarationArrayInput Tags PipelineTagArrayInput + Triggers PipelineTriggerDeclarationArrayInput + Variables PipelineVariableDeclarationArrayInput } func (PipelineArgs) ElementType() reflect.Type { @@ -167,6 +176,10 @@ func (o PipelineOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *Pipeline) pulumi.StringPtrOutput { return v.Name }).(pulumi.StringPtrOutput) } +func (o PipelineOutput) PipelineType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Pipeline) pulumi.StringPtrOutput { return v.PipelineType }).(pulumi.StringPtrOutput) +} + func (o PipelineOutput) RestartExecutionOnUpdate() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Pipeline) pulumi.BoolPtrOutput { return v.RestartExecutionOnUpdate }).(pulumi.BoolPtrOutput) } @@ -183,6 +196,14 @@ func (o PipelineOutput) Tags() PipelineTagArrayOutput { return o.ApplyT(func(v *Pipeline) PipelineTagArrayOutput { return v.Tags }).(PipelineTagArrayOutput) } +func (o PipelineOutput) Triggers() PipelineTriggerDeclarationArrayOutput { + return o.ApplyT(func(v *Pipeline) PipelineTriggerDeclarationArrayOutput { return v.Triggers }).(PipelineTriggerDeclarationArrayOutput) +} + +func (o PipelineOutput) Variables() PipelineVariableDeclarationArrayOutput { + return o.ApplyT(func(v *Pipeline) PipelineVariableDeclarationArrayOutput { return v.Variables }).(PipelineVariableDeclarationArrayOutput) +} + func (o PipelineOutput) Version() pulumi.StringOutput { return o.ApplyT(func(v *Pipeline) pulumi.StringOutput { return v.Version }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/codepipeline/pulumiTypes.go b/sdk/go/aws/codepipeline/pulumiTypes.go index be9408aa4a..a8bc100668 100644 --- a/sdk/go/aws/codepipeline/pulumiTypes.go +++ b/sdk/go/aws/codepipeline/pulumiTypes.go @@ -1465,6 +1465,468 @@ func (o PipelineEncryptionKeyPtrOutput) Type() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +type PipelineGitConfiguration struct { + Push []PipelineGitPushFilter `pulumi:"push"` + SourceActionName string `pulumi:"sourceActionName"` +} + +// PipelineGitConfigurationInput is an input type that accepts PipelineGitConfigurationArgs and PipelineGitConfigurationOutput values. +// You can construct a concrete instance of `PipelineGitConfigurationInput` via: +// +// PipelineGitConfigurationArgs{...} +type PipelineGitConfigurationInput interface { + pulumi.Input + + ToPipelineGitConfigurationOutput() PipelineGitConfigurationOutput + ToPipelineGitConfigurationOutputWithContext(context.Context) PipelineGitConfigurationOutput +} + +type PipelineGitConfigurationArgs struct { + Push PipelineGitPushFilterArrayInput `pulumi:"push"` + SourceActionName pulumi.StringInput `pulumi:"sourceActionName"` +} + +func (PipelineGitConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineGitConfiguration)(nil)).Elem() +} + +func (i PipelineGitConfigurationArgs) ToPipelineGitConfigurationOutput() PipelineGitConfigurationOutput { + return i.ToPipelineGitConfigurationOutputWithContext(context.Background()) +} + +func (i PipelineGitConfigurationArgs) ToPipelineGitConfigurationOutputWithContext(ctx context.Context) PipelineGitConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineGitConfigurationOutput) +} + +func (i PipelineGitConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[PipelineGitConfiguration] { + return pulumix.Output[PipelineGitConfiguration]{ + OutputState: i.ToPipelineGitConfigurationOutputWithContext(ctx).OutputState, + } +} + +func (i PipelineGitConfigurationArgs) ToPipelineGitConfigurationPtrOutput() PipelineGitConfigurationPtrOutput { + return i.ToPipelineGitConfigurationPtrOutputWithContext(context.Background()) +} + +func (i PipelineGitConfigurationArgs) ToPipelineGitConfigurationPtrOutputWithContext(ctx context.Context) PipelineGitConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineGitConfigurationOutput).ToPipelineGitConfigurationPtrOutputWithContext(ctx) +} + +// PipelineGitConfigurationPtrInput is an input type that accepts PipelineGitConfigurationArgs, PipelineGitConfigurationPtr and PipelineGitConfigurationPtrOutput values. +// You can construct a concrete instance of `PipelineGitConfigurationPtrInput` via: +// +// PipelineGitConfigurationArgs{...} +// +// or: +// +// nil +type PipelineGitConfigurationPtrInput interface { + pulumi.Input + + ToPipelineGitConfigurationPtrOutput() PipelineGitConfigurationPtrOutput + ToPipelineGitConfigurationPtrOutputWithContext(context.Context) PipelineGitConfigurationPtrOutput +} + +type pipelineGitConfigurationPtrType PipelineGitConfigurationArgs + +func PipelineGitConfigurationPtr(v *PipelineGitConfigurationArgs) PipelineGitConfigurationPtrInput { + return (*pipelineGitConfigurationPtrType)(v) +} + +func (*pipelineGitConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**PipelineGitConfiguration)(nil)).Elem() +} + +func (i *pipelineGitConfigurationPtrType) ToPipelineGitConfigurationPtrOutput() PipelineGitConfigurationPtrOutput { + return i.ToPipelineGitConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *pipelineGitConfigurationPtrType) ToPipelineGitConfigurationPtrOutputWithContext(ctx context.Context) PipelineGitConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineGitConfigurationPtrOutput) +} + +func (i *pipelineGitConfigurationPtrType) ToOutput(ctx context.Context) pulumix.Output[*PipelineGitConfiguration] { + return pulumix.Output[*PipelineGitConfiguration]{ + OutputState: i.ToPipelineGitConfigurationPtrOutputWithContext(ctx).OutputState, + } +} + +type PipelineGitConfigurationOutput struct{ *pulumi.OutputState } + +func (PipelineGitConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineGitConfiguration)(nil)).Elem() +} + +func (o PipelineGitConfigurationOutput) ToPipelineGitConfigurationOutput() PipelineGitConfigurationOutput { + return o +} + +func (o PipelineGitConfigurationOutput) ToPipelineGitConfigurationOutputWithContext(ctx context.Context) PipelineGitConfigurationOutput { + return o +} + +func (o PipelineGitConfigurationOutput) ToPipelineGitConfigurationPtrOutput() PipelineGitConfigurationPtrOutput { + return o.ToPipelineGitConfigurationPtrOutputWithContext(context.Background()) +} + +func (o PipelineGitConfigurationOutput) ToPipelineGitConfigurationPtrOutputWithContext(ctx context.Context) PipelineGitConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v PipelineGitConfiguration) *PipelineGitConfiguration { + return &v + }).(PipelineGitConfigurationPtrOutput) +} + +func (o PipelineGitConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[PipelineGitConfiguration] { + return pulumix.Output[PipelineGitConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o PipelineGitConfigurationOutput) Push() PipelineGitPushFilterArrayOutput { + return o.ApplyT(func(v PipelineGitConfiguration) []PipelineGitPushFilter { return v.Push }).(PipelineGitPushFilterArrayOutput) +} + +func (o PipelineGitConfigurationOutput) SourceActionName() pulumi.StringOutput { + return o.ApplyT(func(v PipelineGitConfiguration) string { return v.SourceActionName }).(pulumi.StringOutput) +} + +type PipelineGitConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (PipelineGitConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**PipelineGitConfiguration)(nil)).Elem() +} + +func (o PipelineGitConfigurationPtrOutput) ToPipelineGitConfigurationPtrOutput() PipelineGitConfigurationPtrOutput { + return o +} + +func (o PipelineGitConfigurationPtrOutput) ToPipelineGitConfigurationPtrOutputWithContext(ctx context.Context) PipelineGitConfigurationPtrOutput { + return o +} + +func (o PipelineGitConfigurationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*PipelineGitConfiguration] { + return pulumix.Output[*PipelineGitConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o PipelineGitConfigurationPtrOutput) Elem() PipelineGitConfigurationOutput { + return o.ApplyT(func(v *PipelineGitConfiguration) PipelineGitConfiguration { + if v != nil { + return *v + } + var ret PipelineGitConfiguration + return ret + }).(PipelineGitConfigurationOutput) +} + +func (o PipelineGitConfigurationPtrOutput) Push() PipelineGitPushFilterArrayOutput { + return o.ApplyT(func(v *PipelineGitConfiguration) []PipelineGitPushFilter { + if v == nil { + return nil + } + return v.Push + }).(PipelineGitPushFilterArrayOutput) +} + +func (o PipelineGitConfigurationPtrOutput) SourceActionName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *PipelineGitConfiguration) *string { + if v == nil { + return nil + } + return &v.SourceActionName + }).(pulumi.StringPtrOutput) +} + +type PipelineGitPushFilter struct { + Tags *PipelineGitTagFilterCriteria `pulumi:"tags"` +} + +// PipelineGitPushFilterInput is an input type that accepts PipelineGitPushFilterArgs and PipelineGitPushFilterOutput values. +// You can construct a concrete instance of `PipelineGitPushFilterInput` via: +// +// PipelineGitPushFilterArgs{...} +type PipelineGitPushFilterInput interface { + pulumi.Input + + ToPipelineGitPushFilterOutput() PipelineGitPushFilterOutput + ToPipelineGitPushFilterOutputWithContext(context.Context) PipelineGitPushFilterOutput +} + +type PipelineGitPushFilterArgs struct { + Tags PipelineGitTagFilterCriteriaPtrInput `pulumi:"tags"` +} + +func (PipelineGitPushFilterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineGitPushFilter)(nil)).Elem() +} + +func (i PipelineGitPushFilterArgs) ToPipelineGitPushFilterOutput() PipelineGitPushFilterOutput { + return i.ToPipelineGitPushFilterOutputWithContext(context.Background()) +} + +func (i PipelineGitPushFilterArgs) ToPipelineGitPushFilterOutputWithContext(ctx context.Context) PipelineGitPushFilterOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineGitPushFilterOutput) +} + +func (i PipelineGitPushFilterArgs) ToOutput(ctx context.Context) pulumix.Output[PipelineGitPushFilter] { + return pulumix.Output[PipelineGitPushFilter]{ + OutputState: i.ToPipelineGitPushFilterOutputWithContext(ctx).OutputState, + } +} + +// PipelineGitPushFilterArrayInput is an input type that accepts PipelineGitPushFilterArray and PipelineGitPushFilterArrayOutput values. +// You can construct a concrete instance of `PipelineGitPushFilterArrayInput` via: +// +// PipelineGitPushFilterArray{ PipelineGitPushFilterArgs{...} } +type PipelineGitPushFilterArrayInput interface { + pulumi.Input + + ToPipelineGitPushFilterArrayOutput() PipelineGitPushFilterArrayOutput + ToPipelineGitPushFilterArrayOutputWithContext(context.Context) PipelineGitPushFilterArrayOutput +} + +type PipelineGitPushFilterArray []PipelineGitPushFilterInput + +func (PipelineGitPushFilterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PipelineGitPushFilter)(nil)).Elem() +} + +func (i PipelineGitPushFilterArray) ToPipelineGitPushFilterArrayOutput() PipelineGitPushFilterArrayOutput { + return i.ToPipelineGitPushFilterArrayOutputWithContext(context.Background()) +} + +func (i PipelineGitPushFilterArray) ToPipelineGitPushFilterArrayOutputWithContext(ctx context.Context) PipelineGitPushFilterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineGitPushFilterArrayOutput) +} + +func (i PipelineGitPushFilterArray) ToOutput(ctx context.Context) pulumix.Output[[]PipelineGitPushFilter] { + return pulumix.Output[[]PipelineGitPushFilter]{ + OutputState: i.ToPipelineGitPushFilterArrayOutputWithContext(ctx).OutputState, + } +} + +type PipelineGitPushFilterOutput struct{ *pulumi.OutputState } + +func (PipelineGitPushFilterOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineGitPushFilter)(nil)).Elem() +} + +func (o PipelineGitPushFilterOutput) ToPipelineGitPushFilterOutput() PipelineGitPushFilterOutput { + return o +} + +func (o PipelineGitPushFilterOutput) ToPipelineGitPushFilterOutputWithContext(ctx context.Context) PipelineGitPushFilterOutput { + return o +} + +func (o PipelineGitPushFilterOutput) ToOutput(ctx context.Context) pulumix.Output[PipelineGitPushFilter] { + return pulumix.Output[PipelineGitPushFilter]{ + OutputState: o.OutputState, + } +} + +func (o PipelineGitPushFilterOutput) Tags() PipelineGitTagFilterCriteriaPtrOutput { + return o.ApplyT(func(v PipelineGitPushFilter) *PipelineGitTagFilterCriteria { return v.Tags }).(PipelineGitTagFilterCriteriaPtrOutput) +} + +type PipelineGitPushFilterArrayOutput struct{ *pulumi.OutputState } + +func (PipelineGitPushFilterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PipelineGitPushFilter)(nil)).Elem() +} + +func (o PipelineGitPushFilterArrayOutput) ToPipelineGitPushFilterArrayOutput() PipelineGitPushFilterArrayOutput { + return o +} + +func (o PipelineGitPushFilterArrayOutput) ToPipelineGitPushFilterArrayOutputWithContext(ctx context.Context) PipelineGitPushFilterArrayOutput { + return o +} + +func (o PipelineGitPushFilterArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]PipelineGitPushFilter] { + return pulumix.Output[[]PipelineGitPushFilter]{ + OutputState: o.OutputState, + } +} + +func (o PipelineGitPushFilterArrayOutput) Index(i pulumi.IntInput) PipelineGitPushFilterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PipelineGitPushFilter { + return vs[0].([]PipelineGitPushFilter)[vs[1].(int)] + }).(PipelineGitPushFilterOutput) +} + +type PipelineGitTagFilterCriteria struct { + Excludes []string `pulumi:"excludes"` + Includes []string `pulumi:"includes"` +} + +// PipelineGitTagFilterCriteriaInput is an input type that accepts PipelineGitTagFilterCriteriaArgs and PipelineGitTagFilterCriteriaOutput values. +// You can construct a concrete instance of `PipelineGitTagFilterCriteriaInput` via: +// +// PipelineGitTagFilterCriteriaArgs{...} +type PipelineGitTagFilterCriteriaInput interface { + pulumi.Input + + ToPipelineGitTagFilterCriteriaOutput() PipelineGitTagFilterCriteriaOutput + ToPipelineGitTagFilterCriteriaOutputWithContext(context.Context) PipelineGitTagFilterCriteriaOutput +} + +type PipelineGitTagFilterCriteriaArgs struct { + Excludes pulumi.StringArrayInput `pulumi:"excludes"` + Includes pulumi.StringArrayInput `pulumi:"includes"` +} + +func (PipelineGitTagFilterCriteriaArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineGitTagFilterCriteria)(nil)).Elem() +} + +func (i PipelineGitTagFilterCriteriaArgs) ToPipelineGitTagFilterCriteriaOutput() PipelineGitTagFilterCriteriaOutput { + return i.ToPipelineGitTagFilterCriteriaOutputWithContext(context.Background()) +} + +func (i PipelineGitTagFilterCriteriaArgs) ToPipelineGitTagFilterCriteriaOutputWithContext(ctx context.Context) PipelineGitTagFilterCriteriaOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineGitTagFilterCriteriaOutput) +} + +func (i PipelineGitTagFilterCriteriaArgs) ToOutput(ctx context.Context) pulumix.Output[PipelineGitTagFilterCriteria] { + return pulumix.Output[PipelineGitTagFilterCriteria]{ + OutputState: i.ToPipelineGitTagFilterCriteriaOutputWithContext(ctx).OutputState, + } +} + +func (i PipelineGitTagFilterCriteriaArgs) ToPipelineGitTagFilterCriteriaPtrOutput() PipelineGitTagFilterCriteriaPtrOutput { + return i.ToPipelineGitTagFilterCriteriaPtrOutputWithContext(context.Background()) +} + +func (i PipelineGitTagFilterCriteriaArgs) ToPipelineGitTagFilterCriteriaPtrOutputWithContext(ctx context.Context) PipelineGitTagFilterCriteriaPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineGitTagFilterCriteriaOutput).ToPipelineGitTagFilterCriteriaPtrOutputWithContext(ctx) +} + +// PipelineGitTagFilterCriteriaPtrInput is an input type that accepts PipelineGitTagFilterCriteriaArgs, PipelineGitTagFilterCriteriaPtr and PipelineGitTagFilterCriteriaPtrOutput values. +// You can construct a concrete instance of `PipelineGitTagFilterCriteriaPtrInput` via: +// +// PipelineGitTagFilterCriteriaArgs{...} +// +// or: +// +// nil +type PipelineGitTagFilterCriteriaPtrInput interface { + pulumi.Input + + ToPipelineGitTagFilterCriteriaPtrOutput() PipelineGitTagFilterCriteriaPtrOutput + ToPipelineGitTagFilterCriteriaPtrOutputWithContext(context.Context) PipelineGitTagFilterCriteriaPtrOutput +} + +type pipelineGitTagFilterCriteriaPtrType PipelineGitTagFilterCriteriaArgs + +func PipelineGitTagFilterCriteriaPtr(v *PipelineGitTagFilterCriteriaArgs) PipelineGitTagFilterCriteriaPtrInput { + return (*pipelineGitTagFilterCriteriaPtrType)(v) +} + +func (*pipelineGitTagFilterCriteriaPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**PipelineGitTagFilterCriteria)(nil)).Elem() +} + +func (i *pipelineGitTagFilterCriteriaPtrType) ToPipelineGitTagFilterCriteriaPtrOutput() PipelineGitTagFilterCriteriaPtrOutput { + return i.ToPipelineGitTagFilterCriteriaPtrOutputWithContext(context.Background()) +} + +func (i *pipelineGitTagFilterCriteriaPtrType) ToPipelineGitTagFilterCriteriaPtrOutputWithContext(ctx context.Context) PipelineGitTagFilterCriteriaPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineGitTagFilterCriteriaPtrOutput) +} + +func (i *pipelineGitTagFilterCriteriaPtrType) ToOutput(ctx context.Context) pulumix.Output[*PipelineGitTagFilterCriteria] { + return pulumix.Output[*PipelineGitTagFilterCriteria]{ + OutputState: i.ToPipelineGitTagFilterCriteriaPtrOutputWithContext(ctx).OutputState, + } +} + +type PipelineGitTagFilterCriteriaOutput struct{ *pulumi.OutputState } + +func (PipelineGitTagFilterCriteriaOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineGitTagFilterCriteria)(nil)).Elem() +} + +func (o PipelineGitTagFilterCriteriaOutput) ToPipelineGitTagFilterCriteriaOutput() PipelineGitTagFilterCriteriaOutput { + return o +} + +func (o PipelineGitTagFilterCriteriaOutput) ToPipelineGitTagFilterCriteriaOutputWithContext(ctx context.Context) PipelineGitTagFilterCriteriaOutput { + return o +} + +func (o PipelineGitTagFilterCriteriaOutput) ToPipelineGitTagFilterCriteriaPtrOutput() PipelineGitTagFilterCriteriaPtrOutput { + return o.ToPipelineGitTagFilterCriteriaPtrOutputWithContext(context.Background()) +} + +func (o PipelineGitTagFilterCriteriaOutput) ToPipelineGitTagFilterCriteriaPtrOutputWithContext(ctx context.Context) PipelineGitTagFilterCriteriaPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v PipelineGitTagFilterCriteria) *PipelineGitTagFilterCriteria { + return &v + }).(PipelineGitTagFilterCriteriaPtrOutput) +} + +func (o PipelineGitTagFilterCriteriaOutput) ToOutput(ctx context.Context) pulumix.Output[PipelineGitTagFilterCriteria] { + return pulumix.Output[PipelineGitTagFilterCriteria]{ + OutputState: o.OutputState, + } +} + +func (o PipelineGitTagFilterCriteriaOutput) Excludes() pulumi.StringArrayOutput { + return o.ApplyT(func(v PipelineGitTagFilterCriteria) []string { return v.Excludes }).(pulumi.StringArrayOutput) +} + +func (o PipelineGitTagFilterCriteriaOutput) Includes() pulumi.StringArrayOutput { + return o.ApplyT(func(v PipelineGitTagFilterCriteria) []string { return v.Includes }).(pulumi.StringArrayOutput) +} + +type PipelineGitTagFilterCriteriaPtrOutput struct{ *pulumi.OutputState } + +func (PipelineGitTagFilterCriteriaPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**PipelineGitTagFilterCriteria)(nil)).Elem() +} + +func (o PipelineGitTagFilterCriteriaPtrOutput) ToPipelineGitTagFilterCriteriaPtrOutput() PipelineGitTagFilterCriteriaPtrOutput { + return o +} + +func (o PipelineGitTagFilterCriteriaPtrOutput) ToPipelineGitTagFilterCriteriaPtrOutputWithContext(ctx context.Context) PipelineGitTagFilterCriteriaPtrOutput { + return o +} + +func (o PipelineGitTagFilterCriteriaPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*PipelineGitTagFilterCriteria] { + return pulumix.Output[*PipelineGitTagFilterCriteria]{ + OutputState: o.OutputState, + } +} + +func (o PipelineGitTagFilterCriteriaPtrOutput) Elem() PipelineGitTagFilterCriteriaOutput { + return o.ApplyT(func(v *PipelineGitTagFilterCriteria) PipelineGitTagFilterCriteria { + if v != nil { + return *v + } + var ret PipelineGitTagFilterCriteria + return ret + }).(PipelineGitTagFilterCriteriaOutput) +} + +func (o PipelineGitTagFilterCriteriaPtrOutput) Excludes() pulumi.StringArrayOutput { + return o.ApplyT(func(v *PipelineGitTagFilterCriteria) []string { + if v == nil { + return nil + } + return v.Excludes + }).(pulumi.StringArrayOutput) +} + +func (o PipelineGitTagFilterCriteriaPtrOutput) Includes() pulumi.StringArrayOutput { + return o.ApplyT(func(v *PipelineGitTagFilterCriteria) []string { + if v == nil { + return nil + } + return v.Includes + }).(pulumi.StringArrayOutput) +} + type PipelineInputArtifact struct { Name string `pulumi:"name"` } @@ -2079,6 +2541,260 @@ func (o PipelineTagArrayOutput) Index(i pulumi.IntInput) PipelineTagOutput { }).(PipelineTagOutput) } +type PipelineTriggerDeclaration struct { + GitConfiguration *PipelineGitConfiguration `pulumi:"gitConfiguration"` + ProviderType string `pulumi:"providerType"` +} + +// PipelineTriggerDeclarationInput is an input type that accepts PipelineTriggerDeclarationArgs and PipelineTriggerDeclarationOutput values. +// You can construct a concrete instance of `PipelineTriggerDeclarationInput` via: +// +// PipelineTriggerDeclarationArgs{...} +type PipelineTriggerDeclarationInput interface { + pulumi.Input + + ToPipelineTriggerDeclarationOutput() PipelineTriggerDeclarationOutput + ToPipelineTriggerDeclarationOutputWithContext(context.Context) PipelineTriggerDeclarationOutput +} + +type PipelineTriggerDeclarationArgs struct { + GitConfiguration PipelineGitConfigurationPtrInput `pulumi:"gitConfiguration"` + ProviderType pulumi.StringInput `pulumi:"providerType"` +} + +func (PipelineTriggerDeclarationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineTriggerDeclaration)(nil)).Elem() +} + +func (i PipelineTriggerDeclarationArgs) ToPipelineTriggerDeclarationOutput() PipelineTriggerDeclarationOutput { + return i.ToPipelineTriggerDeclarationOutputWithContext(context.Background()) +} + +func (i PipelineTriggerDeclarationArgs) ToPipelineTriggerDeclarationOutputWithContext(ctx context.Context) PipelineTriggerDeclarationOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineTriggerDeclarationOutput) +} + +func (i PipelineTriggerDeclarationArgs) ToOutput(ctx context.Context) pulumix.Output[PipelineTriggerDeclaration] { + return pulumix.Output[PipelineTriggerDeclaration]{ + OutputState: i.ToPipelineTriggerDeclarationOutputWithContext(ctx).OutputState, + } +} + +// PipelineTriggerDeclarationArrayInput is an input type that accepts PipelineTriggerDeclarationArray and PipelineTriggerDeclarationArrayOutput values. +// You can construct a concrete instance of `PipelineTriggerDeclarationArrayInput` via: +// +// PipelineTriggerDeclarationArray{ PipelineTriggerDeclarationArgs{...} } +type PipelineTriggerDeclarationArrayInput interface { + pulumi.Input + + ToPipelineTriggerDeclarationArrayOutput() PipelineTriggerDeclarationArrayOutput + ToPipelineTriggerDeclarationArrayOutputWithContext(context.Context) PipelineTriggerDeclarationArrayOutput +} + +type PipelineTriggerDeclarationArray []PipelineTriggerDeclarationInput + +func (PipelineTriggerDeclarationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PipelineTriggerDeclaration)(nil)).Elem() +} + +func (i PipelineTriggerDeclarationArray) ToPipelineTriggerDeclarationArrayOutput() PipelineTriggerDeclarationArrayOutput { + return i.ToPipelineTriggerDeclarationArrayOutputWithContext(context.Background()) +} + +func (i PipelineTriggerDeclarationArray) ToPipelineTriggerDeclarationArrayOutputWithContext(ctx context.Context) PipelineTriggerDeclarationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineTriggerDeclarationArrayOutput) +} + +func (i PipelineTriggerDeclarationArray) ToOutput(ctx context.Context) pulumix.Output[[]PipelineTriggerDeclaration] { + return pulumix.Output[[]PipelineTriggerDeclaration]{ + OutputState: i.ToPipelineTriggerDeclarationArrayOutputWithContext(ctx).OutputState, + } +} + +type PipelineTriggerDeclarationOutput struct{ *pulumi.OutputState } + +func (PipelineTriggerDeclarationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineTriggerDeclaration)(nil)).Elem() +} + +func (o PipelineTriggerDeclarationOutput) ToPipelineTriggerDeclarationOutput() PipelineTriggerDeclarationOutput { + return o +} + +func (o PipelineTriggerDeclarationOutput) ToPipelineTriggerDeclarationOutputWithContext(ctx context.Context) PipelineTriggerDeclarationOutput { + return o +} + +func (o PipelineTriggerDeclarationOutput) ToOutput(ctx context.Context) pulumix.Output[PipelineTriggerDeclaration] { + return pulumix.Output[PipelineTriggerDeclaration]{ + OutputState: o.OutputState, + } +} + +func (o PipelineTriggerDeclarationOutput) GitConfiguration() PipelineGitConfigurationPtrOutput { + return o.ApplyT(func(v PipelineTriggerDeclaration) *PipelineGitConfiguration { return v.GitConfiguration }).(PipelineGitConfigurationPtrOutput) +} + +func (o PipelineTriggerDeclarationOutput) ProviderType() pulumi.StringOutput { + return o.ApplyT(func(v PipelineTriggerDeclaration) string { return v.ProviderType }).(pulumi.StringOutput) +} + +type PipelineTriggerDeclarationArrayOutput struct{ *pulumi.OutputState } + +func (PipelineTriggerDeclarationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PipelineTriggerDeclaration)(nil)).Elem() +} + +func (o PipelineTriggerDeclarationArrayOutput) ToPipelineTriggerDeclarationArrayOutput() PipelineTriggerDeclarationArrayOutput { + return o +} + +func (o PipelineTriggerDeclarationArrayOutput) ToPipelineTriggerDeclarationArrayOutputWithContext(ctx context.Context) PipelineTriggerDeclarationArrayOutput { + return o +} + +func (o PipelineTriggerDeclarationArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]PipelineTriggerDeclaration] { + return pulumix.Output[[]PipelineTriggerDeclaration]{ + OutputState: o.OutputState, + } +} + +func (o PipelineTriggerDeclarationArrayOutput) Index(i pulumi.IntInput) PipelineTriggerDeclarationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PipelineTriggerDeclaration { + return vs[0].([]PipelineTriggerDeclaration)[vs[1].(int)] + }).(PipelineTriggerDeclarationOutput) +} + +type PipelineVariableDeclaration struct { + DefaultValue *string `pulumi:"defaultValue"` + Description *string `pulumi:"description"` + Name string `pulumi:"name"` +} + +// PipelineVariableDeclarationInput is an input type that accepts PipelineVariableDeclarationArgs and PipelineVariableDeclarationOutput values. +// You can construct a concrete instance of `PipelineVariableDeclarationInput` via: +// +// PipelineVariableDeclarationArgs{...} +type PipelineVariableDeclarationInput interface { + pulumi.Input + + ToPipelineVariableDeclarationOutput() PipelineVariableDeclarationOutput + ToPipelineVariableDeclarationOutputWithContext(context.Context) PipelineVariableDeclarationOutput +} + +type PipelineVariableDeclarationArgs struct { + DefaultValue pulumi.StringPtrInput `pulumi:"defaultValue"` + Description pulumi.StringPtrInput `pulumi:"description"` + Name pulumi.StringInput `pulumi:"name"` +} + +func (PipelineVariableDeclarationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineVariableDeclaration)(nil)).Elem() +} + +func (i PipelineVariableDeclarationArgs) ToPipelineVariableDeclarationOutput() PipelineVariableDeclarationOutput { + return i.ToPipelineVariableDeclarationOutputWithContext(context.Background()) +} + +func (i PipelineVariableDeclarationArgs) ToPipelineVariableDeclarationOutputWithContext(ctx context.Context) PipelineVariableDeclarationOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineVariableDeclarationOutput) +} + +func (i PipelineVariableDeclarationArgs) ToOutput(ctx context.Context) pulumix.Output[PipelineVariableDeclaration] { + return pulumix.Output[PipelineVariableDeclaration]{ + OutputState: i.ToPipelineVariableDeclarationOutputWithContext(ctx).OutputState, + } +} + +// PipelineVariableDeclarationArrayInput is an input type that accepts PipelineVariableDeclarationArray and PipelineVariableDeclarationArrayOutput values. +// You can construct a concrete instance of `PipelineVariableDeclarationArrayInput` via: +// +// PipelineVariableDeclarationArray{ PipelineVariableDeclarationArgs{...} } +type PipelineVariableDeclarationArrayInput interface { + pulumi.Input + + ToPipelineVariableDeclarationArrayOutput() PipelineVariableDeclarationArrayOutput + ToPipelineVariableDeclarationArrayOutputWithContext(context.Context) PipelineVariableDeclarationArrayOutput +} + +type PipelineVariableDeclarationArray []PipelineVariableDeclarationInput + +func (PipelineVariableDeclarationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]PipelineVariableDeclaration)(nil)).Elem() +} + +func (i PipelineVariableDeclarationArray) ToPipelineVariableDeclarationArrayOutput() PipelineVariableDeclarationArrayOutput { + return i.ToPipelineVariableDeclarationArrayOutputWithContext(context.Background()) +} + +func (i PipelineVariableDeclarationArray) ToPipelineVariableDeclarationArrayOutputWithContext(ctx context.Context) PipelineVariableDeclarationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineVariableDeclarationArrayOutput) +} + +func (i PipelineVariableDeclarationArray) ToOutput(ctx context.Context) pulumix.Output[[]PipelineVariableDeclaration] { + return pulumix.Output[[]PipelineVariableDeclaration]{ + OutputState: i.ToPipelineVariableDeclarationArrayOutputWithContext(ctx).OutputState, + } +} + +type PipelineVariableDeclarationOutput struct{ *pulumi.OutputState } + +func (PipelineVariableDeclarationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineVariableDeclaration)(nil)).Elem() +} + +func (o PipelineVariableDeclarationOutput) ToPipelineVariableDeclarationOutput() PipelineVariableDeclarationOutput { + return o +} + +func (o PipelineVariableDeclarationOutput) ToPipelineVariableDeclarationOutputWithContext(ctx context.Context) PipelineVariableDeclarationOutput { + return o +} + +func (o PipelineVariableDeclarationOutput) ToOutput(ctx context.Context) pulumix.Output[PipelineVariableDeclaration] { + return pulumix.Output[PipelineVariableDeclaration]{ + OutputState: o.OutputState, + } +} + +func (o PipelineVariableDeclarationOutput) DefaultValue() pulumi.StringPtrOutput { + return o.ApplyT(func(v PipelineVariableDeclaration) *string { return v.DefaultValue }).(pulumi.StringPtrOutput) +} + +func (o PipelineVariableDeclarationOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v PipelineVariableDeclaration) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +func (o PipelineVariableDeclarationOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v PipelineVariableDeclaration) string { return v.Name }).(pulumi.StringOutput) +} + +type PipelineVariableDeclarationArrayOutput struct{ *pulumi.OutputState } + +func (PipelineVariableDeclarationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]PipelineVariableDeclaration)(nil)).Elem() +} + +func (o PipelineVariableDeclarationArrayOutput) ToPipelineVariableDeclarationArrayOutput() PipelineVariableDeclarationArrayOutput { + return o +} + +func (o PipelineVariableDeclarationArrayOutput) ToPipelineVariableDeclarationArrayOutputWithContext(ctx context.Context) PipelineVariableDeclarationArrayOutput { + return o +} + +func (o PipelineVariableDeclarationArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]PipelineVariableDeclaration] { + return pulumix.Output[[]PipelineVariableDeclaration]{ + OutputState: o.OutputState, + } +} + +func (o PipelineVariableDeclarationArrayOutput) Index(i pulumi.IntInput) PipelineVariableDeclarationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) PipelineVariableDeclaration { + return vs[0].([]PipelineVariableDeclaration)[vs[1].(int)] + }).(PipelineVariableDeclarationOutput) +} + type WebhookAuthConfiguration struct { AllowedIpRange *string `pulumi:"allowedIpRange"` SecretToken *string `pulumi:"secretToken"` @@ -2337,6 +3053,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*PipelineBlockerDeclarationArrayInput)(nil)).Elem(), PipelineBlockerDeclarationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineEncryptionKeyInput)(nil)).Elem(), PipelineEncryptionKeyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineEncryptionKeyPtrInput)(nil)).Elem(), PipelineEncryptionKeyArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineGitConfigurationInput)(nil)).Elem(), PipelineGitConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineGitConfigurationPtrInput)(nil)).Elem(), PipelineGitConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineGitPushFilterInput)(nil)).Elem(), PipelineGitPushFilterArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineGitPushFilterArrayInput)(nil)).Elem(), PipelineGitPushFilterArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineGitTagFilterCriteriaInput)(nil)).Elem(), PipelineGitTagFilterCriteriaArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineGitTagFilterCriteriaPtrInput)(nil)).Elem(), PipelineGitTagFilterCriteriaArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineInputArtifactInput)(nil)).Elem(), PipelineInputArtifactArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineInputArtifactArrayInput)(nil)).Elem(), PipelineInputArtifactArray{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineOutputArtifactInput)(nil)).Elem(), PipelineOutputArtifactArgs{}) @@ -2347,6 +3069,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*PipelineStageTransitionArrayInput)(nil)).Elem(), PipelineStageTransitionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineTagInput)(nil)).Elem(), PipelineTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineTagArrayInput)(nil)).Elem(), PipelineTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineTriggerDeclarationInput)(nil)).Elem(), PipelineTriggerDeclarationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineTriggerDeclarationArrayInput)(nil)).Elem(), PipelineTriggerDeclarationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineVariableDeclarationInput)(nil)).Elem(), PipelineVariableDeclarationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineVariableDeclarationArrayInput)(nil)).Elem(), PipelineVariableDeclarationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*WebhookAuthConfigurationInput)(nil)).Elem(), WebhookAuthConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*WebhookFilterRuleInput)(nil)).Elem(), WebhookFilterRuleArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*WebhookFilterRuleArrayInput)(nil)).Elem(), WebhookFilterRuleArray{}) @@ -2368,6 +3094,12 @@ func init() { pulumi.RegisterOutputType(PipelineBlockerDeclarationArrayOutput{}) pulumi.RegisterOutputType(PipelineEncryptionKeyOutput{}) pulumi.RegisterOutputType(PipelineEncryptionKeyPtrOutput{}) + pulumi.RegisterOutputType(PipelineGitConfigurationOutput{}) + pulumi.RegisterOutputType(PipelineGitConfigurationPtrOutput{}) + pulumi.RegisterOutputType(PipelineGitPushFilterOutput{}) + pulumi.RegisterOutputType(PipelineGitPushFilterArrayOutput{}) + pulumi.RegisterOutputType(PipelineGitTagFilterCriteriaOutput{}) + pulumi.RegisterOutputType(PipelineGitTagFilterCriteriaPtrOutput{}) pulumi.RegisterOutputType(PipelineInputArtifactOutput{}) pulumi.RegisterOutputType(PipelineInputArtifactArrayOutput{}) pulumi.RegisterOutputType(PipelineOutputArtifactOutput{}) @@ -2378,6 +3110,10 @@ func init() { pulumi.RegisterOutputType(PipelineStageTransitionArrayOutput{}) pulumi.RegisterOutputType(PipelineTagOutput{}) pulumi.RegisterOutputType(PipelineTagArrayOutput{}) + pulumi.RegisterOutputType(PipelineTriggerDeclarationOutput{}) + pulumi.RegisterOutputType(PipelineTriggerDeclarationArrayOutput{}) + pulumi.RegisterOutputType(PipelineVariableDeclarationOutput{}) + pulumi.RegisterOutputType(PipelineVariableDeclarationArrayOutput{}) pulumi.RegisterOutputType(WebhookAuthConfigurationOutput{}) pulumi.RegisterOutputType(WebhookAuthConfigurationPtrOutput{}) pulumi.RegisterOutputType(WebhookFilterRuleOutput{}) diff --git a/sdk/go/aws/configuration/configurationRecorder.go b/sdk/go/aws/configuration/configurationRecorder.go index 51f45f78fc..457abeb90a 100644 --- a/sdk/go/aws/configuration/configurationRecorder.go +++ b/sdk/go/aws/configuration/configurationRecorder.go @@ -21,6 +21,7 @@ type ConfigurationRecorder struct { Name pulumi.StringPtrOutput `pulumi:"name"` RecordingGroup ConfigurationRecorderRecordingGroupPtrOutput `pulumi:"recordingGroup"` + RecordingMode ConfigurationRecorderRecordingModePtrOutput `pulumi:"recordingMode"` RoleArn pulumi.StringOutput `pulumi:"roleArn"` } @@ -73,6 +74,7 @@ func (ConfigurationRecorderState) ElementType() reflect.Type { type configurationRecorderArgs struct { Name *string `pulumi:"name"` RecordingGroup *ConfigurationRecorderRecordingGroup `pulumi:"recordingGroup"` + RecordingMode *ConfigurationRecorderRecordingMode `pulumi:"recordingMode"` RoleArn string `pulumi:"roleArn"` } @@ -80,6 +82,7 @@ type configurationRecorderArgs struct { type ConfigurationRecorderArgs struct { Name pulumi.StringPtrInput RecordingGroup ConfigurationRecorderRecordingGroupPtrInput + RecordingMode ConfigurationRecorderRecordingModePtrInput RoleArn pulumi.StringInput } @@ -140,6 +143,10 @@ func (o ConfigurationRecorderOutput) RecordingGroup() ConfigurationRecorderRecor return o.ApplyT(func(v *ConfigurationRecorder) ConfigurationRecorderRecordingGroupPtrOutput { return v.RecordingGroup }).(ConfigurationRecorderRecordingGroupPtrOutput) } +func (o ConfigurationRecorderOutput) RecordingMode() ConfigurationRecorderRecordingModePtrOutput { + return o.ApplyT(func(v *ConfigurationRecorder) ConfigurationRecorderRecordingModePtrOutput { return v.RecordingMode }).(ConfigurationRecorderRecordingModePtrOutput) +} + func (o ConfigurationRecorderOutput) RoleArn() pulumi.StringOutput { return o.ApplyT(func(v *ConfigurationRecorder) pulumi.StringOutput { return v.RoleArn }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/configuration/getConfigurationRecorder.go b/sdk/go/aws/configuration/getConfigurationRecorder.go index fe578dcb6b..21a2b5a25d 100644 --- a/sdk/go/aws/configuration/getConfigurationRecorder.go +++ b/sdk/go/aws/configuration/getConfigurationRecorder.go @@ -30,6 +30,7 @@ type LookupConfigurationRecorderArgs struct { type LookupConfigurationRecorderResult struct { Id *string `pulumi:"id"` RecordingGroup *ConfigurationRecorderRecordingGroup `pulumi:"recordingGroup"` + RecordingMode *ConfigurationRecorderRecordingMode `pulumi:"recordingMode"` RoleArn *string `pulumi:"roleArn"` } @@ -84,6 +85,10 @@ func (o LookupConfigurationRecorderResultOutput) RecordingGroup() ConfigurationR }).(ConfigurationRecorderRecordingGroupPtrOutput) } +func (o LookupConfigurationRecorderResultOutput) RecordingMode() ConfigurationRecorderRecordingModePtrOutput { + return o.ApplyT(func(v LookupConfigurationRecorderResult) *ConfigurationRecorderRecordingMode { return v.RecordingMode }).(ConfigurationRecorderRecordingModePtrOutput) +} + func (o LookupConfigurationRecorderResultOutput) RoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupConfigurationRecorderResult) *string { return v.RoleArn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/configuration/pulumiTypes.go b/sdk/go/aws/configuration/pulumiTypes.go index fe7ea97531..3b9f03dcec 100644 --- a/sdk/go/aws/configuration/pulumiTypes.go +++ b/sdk/go/aws/configuration/pulumiTypes.go @@ -1992,6 +1992,310 @@ func (o ConfigurationRecorderRecordingGroupPtrOutput) ResourceTypes() pulumi.Str }).(pulumi.StringArrayOutput) } +type ConfigurationRecorderRecordingMode struct { + RecordingFrequency string `pulumi:"recordingFrequency"` + RecordingModeOverrides []ConfigurationRecorderRecordingModeOverride `pulumi:"recordingModeOverrides"` +} + +// ConfigurationRecorderRecordingModeInput is an input type that accepts ConfigurationRecorderRecordingModeArgs and ConfigurationRecorderRecordingModeOutput values. +// You can construct a concrete instance of `ConfigurationRecorderRecordingModeInput` via: +// +// ConfigurationRecorderRecordingModeArgs{...} +type ConfigurationRecorderRecordingModeInput interface { + pulumi.Input + + ToConfigurationRecorderRecordingModeOutput() ConfigurationRecorderRecordingModeOutput + ToConfigurationRecorderRecordingModeOutputWithContext(context.Context) ConfigurationRecorderRecordingModeOutput +} + +type ConfigurationRecorderRecordingModeArgs struct { + RecordingFrequency pulumi.StringInput `pulumi:"recordingFrequency"` + RecordingModeOverrides ConfigurationRecorderRecordingModeOverrideArrayInput `pulumi:"recordingModeOverrides"` +} + +func (ConfigurationRecorderRecordingModeArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ConfigurationRecorderRecordingMode)(nil)).Elem() +} + +func (i ConfigurationRecorderRecordingModeArgs) ToConfigurationRecorderRecordingModeOutput() ConfigurationRecorderRecordingModeOutput { + return i.ToConfigurationRecorderRecordingModeOutputWithContext(context.Background()) +} + +func (i ConfigurationRecorderRecordingModeArgs) ToConfigurationRecorderRecordingModeOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModeOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfigurationRecorderRecordingModeOutput) +} + +func (i ConfigurationRecorderRecordingModeArgs) ToOutput(ctx context.Context) pulumix.Output[ConfigurationRecorderRecordingMode] { + return pulumix.Output[ConfigurationRecorderRecordingMode]{ + OutputState: i.ToConfigurationRecorderRecordingModeOutputWithContext(ctx).OutputState, + } +} + +func (i ConfigurationRecorderRecordingModeArgs) ToConfigurationRecorderRecordingModePtrOutput() ConfigurationRecorderRecordingModePtrOutput { + return i.ToConfigurationRecorderRecordingModePtrOutputWithContext(context.Background()) +} + +func (i ConfigurationRecorderRecordingModeArgs) ToConfigurationRecorderRecordingModePtrOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfigurationRecorderRecordingModeOutput).ToConfigurationRecorderRecordingModePtrOutputWithContext(ctx) +} + +// ConfigurationRecorderRecordingModePtrInput is an input type that accepts ConfigurationRecorderRecordingModeArgs, ConfigurationRecorderRecordingModePtr and ConfigurationRecorderRecordingModePtrOutput values. +// You can construct a concrete instance of `ConfigurationRecorderRecordingModePtrInput` via: +// +// ConfigurationRecorderRecordingModeArgs{...} +// +// or: +// +// nil +type ConfigurationRecorderRecordingModePtrInput interface { + pulumi.Input + + ToConfigurationRecorderRecordingModePtrOutput() ConfigurationRecorderRecordingModePtrOutput + ToConfigurationRecorderRecordingModePtrOutputWithContext(context.Context) ConfigurationRecorderRecordingModePtrOutput +} + +type configurationRecorderRecordingModePtrType ConfigurationRecorderRecordingModeArgs + +func ConfigurationRecorderRecordingModePtr(v *ConfigurationRecorderRecordingModeArgs) ConfigurationRecorderRecordingModePtrInput { + return (*configurationRecorderRecordingModePtrType)(v) +} + +func (*configurationRecorderRecordingModePtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ConfigurationRecorderRecordingMode)(nil)).Elem() +} + +func (i *configurationRecorderRecordingModePtrType) ToConfigurationRecorderRecordingModePtrOutput() ConfigurationRecorderRecordingModePtrOutput { + return i.ToConfigurationRecorderRecordingModePtrOutputWithContext(context.Background()) +} + +func (i *configurationRecorderRecordingModePtrType) ToConfigurationRecorderRecordingModePtrOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModePtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfigurationRecorderRecordingModePtrOutput) +} + +func (i *configurationRecorderRecordingModePtrType) ToOutput(ctx context.Context) pulumix.Output[*ConfigurationRecorderRecordingMode] { + return pulumix.Output[*ConfigurationRecorderRecordingMode]{ + OutputState: i.ToConfigurationRecorderRecordingModePtrOutputWithContext(ctx).OutputState, + } +} + +type ConfigurationRecorderRecordingModeOutput struct{ *pulumi.OutputState } + +func (ConfigurationRecorderRecordingModeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfigurationRecorderRecordingMode)(nil)).Elem() +} + +func (o ConfigurationRecorderRecordingModeOutput) ToConfigurationRecorderRecordingModeOutput() ConfigurationRecorderRecordingModeOutput { + return o +} + +func (o ConfigurationRecorderRecordingModeOutput) ToConfigurationRecorderRecordingModeOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModeOutput { + return o +} + +func (o ConfigurationRecorderRecordingModeOutput) ToConfigurationRecorderRecordingModePtrOutput() ConfigurationRecorderRecordingModePtrOutput { + return o.ToConfigurationRecorderRecordingModePtrOutputWithContext(context.Background()) +} + +func (o ConfigurationRecorderRecordingModeOutput) ToConfigurationRecorderRecordingModePtrOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ConfigurationRecorderRecordingMode) *ConfigurationRecorderRecordingMode { + return &v + }).(ConfigurationRecorderRecordingModePtrOutput) +} + +func (o ConfigurationRecorderRecordingModeOutput) ToOutput(ctx context.Context) pulumix.Output[ConfigurationRecorderRecordingMode] { + return pulumix.Output[ConfigurationRecorderRecordingMode]{ + OutputState: o.OutputState, + } +} + +func (o ConfigurationRecorderRecordingModeOutput) RecordingFrequency() pulumi.StringOutput { + return o.ApplyT(func(v ConfigurationRecorderRecordingMode) string { return v.RecordingFrequency }).(pulumi.StringOutput) +} + +func (o ConfigurationRecorderRecordingModeOutput) RecordingModeOverrides() ConfigurationRecorderRecordingModeOverrideArrayOutput { + return o.ApplyT(func(v ConfigurationRecorderRecordingMode) []ConfigurationRecorderRecordingModeOverride { + return v.RecordingModeOverrides + }).(ConfigurationRecorderRecordingModeOverrideArrayOutput) +} + +type ConfigurationRecorderRecordingModePtrOutput struct{ *pulumi.OutputState } + +func (ConfigurationRecorderRecordingModePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ConfigurationRecorderRecordingMode)(nil)).Elem() +} + +func (o ConfigurationRecorderRecordingModePtrOutput) ToConfigurationRecorderRecordingModePtrOutput() ConfigurationRecorderRecordingModePtrOutput { + return o +} + +func (o ConfigurationRecorderRecordingModePtrOutput) ToConfigurationRecorderRecordingModePtrOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModePtrOutput { + return o +} + +func (o ConfigurationRecorderRecordingModePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ConfigurationRecorderRecordingMode] { + return pulumix.Output[*ConfigurationRecorderRecordingMode]{ + OutputState: o.OutputState, + } +} + +func (o ConfigurationRecorderRecordingModePtrOutput) Elem() ConfigurationRecorderRecordingModeOutput { + return o.ApplyT(func(v *ConfigurationRecorderRecordingMode) ConfigurationRecorderRecordingMode { + if v != nil { + return *v + } + var ret ConfigurationRecorderRecordingMode + return ret + }).(ConfigurationRecorderRecordingModeOutput) +} + +func (o ConfigurationRecorderRecordingModePtrOutput) RecordingFrequency() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ConfigurationRecorderRecordingMode) *string { + if v == nil { + return nil + } + return &v.RecordingFrequency + }).(pulumi.StringPtrOutput) +} + +func (o ConfigurationRecorderRecordingModePtrOutput) RecordingModeOverrides() ConfigurationRecorderRecordingModeOverrideArrayOutput { + return o.ApplyT(func(v *ConfigurationRecorderRecordingMode) []ConfigurationRecorderRecordingModeOverride { + if v == nil { + return nil + } + return v.RecordingModeOverrides + }).(ConfigurationRecorderRecordingModeOverrideArrayOutput) +} + +type ConfigurationRecorderRecordingModeOverride struct { + Description *string `pulumi:"description"` + RecordingFrequency string `pulumi:"recordingFrequency"` + ResourceTypes []string `pulumi:"resourceTypes"` +} + +// ConfigurationRecorderRecordingModeOverrideInput is an input type that accepts ConfigurationRecorderRecordingModeOverrideArgs and ConfigurationRecorderRecordingModeOverrideOutput values. +// You can construct a concrete instance of `ConfigurationRecorderRecordingModeOverrideInput` via: +// +// ConfigurationRecorderRecordingModeOverrideArgs{...} +type ConfigurationRecorderRecordingModeOverrideInput interface { + pulumi.Input + + ToConfigurationRecorderRecordingModeOverrideOutput() ConfigurationRecorderRecordingModeOverrideOutput + ToConfigurationRecorderRecordingModeOverrideOutputWithContext(context.Context) ConfigurationRecorderRecordingModeOverrideOutput +} + +type ConfigurationRecorderRecordingModeOverrideArgs struct { + Description pulumi.StringPtrInput `pulumi:"description"` + RecordingFrequency pulumi.StringInput `pulumi:"recordingFrequency"` + ResourceTypes pulumi.StringArrayInput `pulumi:"resourceTypes"` +} + +func (ConfigurationRecorderRecordingModeOverrideArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ConfigurationRecorderRecordingModeOverride)(nil)).Elem() +} + +func (i ConfigurationRecorderRecordingModeOverrideArgs) ToConfigurationRecorderRecordingModeOverrideOutput() ConfigurationRecorderRecordingModeOverrideOutput { + return i.ToConfigurationRecorderRecordingModeOverrideOutputWithContext(context.Background()) +} + +func (i ConfigurationRecorderRecordingModeOverrideArgs) ToConfigurationRecorderRecordingModeOverrideOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModeOverrideOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfigurationRecorderRecordingModeOverrideOutput) +} + +func (i ConfigurationRecorderRecordingModeOverrideArgs) ToOutput(ctx context.Context) pulumix.Output[ConfigurationRecorderRecordingModeOverride] { + return pulumix.Output[ConfigurationRecorderRecordingModeOverride]{ + OutputState: i.ToConfigurationRecorderRecordingModeOverrideOutputWithContext(ctx).OutputState, + } +} + +// ConfigurationRecorderRecordingModeOverrideArrayInput is an input type that accepts ConfigurationRecorderRecordingModeOverrideArray and ConfigurationRecorderRecordingModeOverrideArrayOutput values. +// You can construct a concrete instance of `ConfigurationRecorderRecordingModeOverrideArrayInput` via: +// +// ConfigurationRecorderRecordingModeOverrideArray{ ConfigurationRecorderRecordingModeOverrideArgs{...} } +type ConfigurationRecorderRecordingModeOverrideArrayInput interface { + pulumi.Input + + ToConfigurationRecorderRecordingModeOverrideArrayOutput() ConfigurationRecorderRecordingModeOverrideArrayOutput + ToConfigurationRecorderRecordingModeOverrideArrayOutputWithContext(context.Context) ConfigurationRecorderRecordingModeOverrideArrayOutput +} + +type ConfigurationRecorderRecordingModeOverrideArray []ConfigurationRecorderRecordingModeOverrideInput + +func (ConfigurationRecorderRecordingModeOverrideArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ConfigurationRecorderRecordingModeOverride)(nil)).Elem() +} + +func (i ConfigurationRecorderRecordingModeOverrideArray) ToConfigurationRecorderRecordingModeOverrideArrayOutput() ConfigurationRecorderRecordingModeOverrideArrayOutput { + return i.ToConfigurationRecorderRecordingModeOverrideArrayOutputWithContext(context.Background()) +} + +func (i ConfigurationRecorderRecordingModeOverrideArray) ToConfigurationRecorderRecordingModeOverrideArrayOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModeOverrideArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ConfigurationRecorderRecordingModeOverrideArrayOutput) +} + +func (i ConfigurationRecorderRecordingModeOverrideArray) ToOutput(ctx context.Context) pulumix.Output[[]ConfigurationRecorderRecordingModeOverride] { + return pulumix.Output[[]ConfigurationRecorderRecordingModeOverride]{ + OutputState: i.ToConfigurationRecorderRecordingModeOverrideArrayOutputWithContext(ctx).OutputState, + } +} + +type ConfigurationRecorderRecordingModeOverrideOutput struct{ *pulumi.OutputState } + +func (ConfigurationRecorderRecordingModeOverrideOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ConfigurationRecorderRecordingModeOverride)(nil)).Elem() +} + +func (o ConfigurationRecorderRecordingModeOverrideOutput) ToConfigurationRecorderRecordingModeOverrideOutput() ConfigurationRecorderRecordingModeOverrideOutput { + return o +} + +func (o ConfigurationRecorderRecordingModeOverrideOutput) ToConfigurationRecorderRecordingModeOverrideOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModeOverrideOutput { + return o +} + +func (o ConfigurationRecorderRecordingModeOverrideOutput) ToOutput(ctx context.Context) pulumix.Output[ConfigurationRecorderRecordingModeOverride] { + return pulumix.Output[ConfigurationRecorderRecordingModeOverride]{ + OutputState: o.OutputState, + } +} + +func (o ConfigurationRecorderRecordingModeOverrideOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v ConfigurationRecorderRecordingModeOverride) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +func (o ConfigurationRecorderRecordingModeOverrideOutput) RecordingFrequency() pulumi.StringOutput { + return o.ApplyT(func(v ConfigurationRecorderRecordingModeOverride) string { return v.RecordingFrequency }).(pulumi.StringOutput) +} + +func (o ConfigurationRecorderRecordingModeOverrideOutput) ResourceTypes() pulumi.StringArrayOutput { + return o.ApplyT(func(v ConfigurationRecorderRecordingModeOverride) []string { return v.ResourceTypes }).(pulumi.StringArrayOutput) +} + +type ConfigurationRecorderRecordingModeOverrideArrayOutput struct{ *pulumi.OutputState } + +func (ConfigurationRecorderRecordingModeOverrideArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ConfigurationRecorderRecordingModeOverride)(nil)).Elem() +} + +func (o ConfigurationRecorderRecordingModeOverrideArrayOutput) ToConfigurationRecorderRecordingModeOverrideArrayOutput() ConfigurationRecorderRecordingModeOverrideArrayOutput { + return o +} + +func (o ConfigurationRecorderRecordingModeOverrideArrayOutput) ToConfigurationRecorderRecordingModeOverrideArrayOutputWithContext(ctx context.Context) ConfigurationRecorderRecordingModeOverrideArrayOutput { + return o +} + +func (o ConfigurationRecorderRecordingModeOverrideArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ConfigurationRecorderRecordingModeOverride] { + return pulumix.Output[[]ConfigurationRecorderRecordingModeOverride]{ + OutputState: o.OutputState, + } +} + +func (o ConfigurationRecorderRecordingModeOverrideArrayOutput) Index(i pulumi.IntInput) ConfigurationRecorderRecordingModeOverrideOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ConfigurationRecorderRecordingModeOverride { + return vs[0].([]ConfigurationRecorderRecordingModeOverride)[vs[1].(int)] + }).(ConfigurationRecorderRecordingModeOverrideOutput) +} + type ConfigurationRecorderRecordingStrategy struct { UseOnly string `pulumi:"useOnly"` } @@ -4083,6 +4387,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderExclusionByResourceTypesPtrInput)(nil)).Elem(), ConfigurationRecorderExclusionByResourceTypesArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderRecordingGroupInput)(nil)).Elem(), ConfigurationRecorderRecordingGroupArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderRecordingGroupPtrInput)(nil)).Elem(), ConfigurationRecorderRecordingGroupArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderRecordingModeInput)(nil)).Elem(), ConfigurationRecorderRecordingModeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderRecordingModePtrInput)(nil)).Elem(), ConfigurationRecorderRecordingModeArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderRecordingModeOverrideInput)(nil)).Elem(), ConfigurationRecorderRecordingModeOverrideArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderRecordingModeOverrideArrayInput)(nil)).Elem(), ConfigurationRecorderRecordingModeOverrideArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderRecordingStrategyInput)(nil)).Elem(), ConfigurationRecorderRecordingStrategyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConfigurationRecorderRecordingStrategyPtrInput)(nil)).Elem(), ConfigurationRecorderRecordingStrategyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ConformancePackInputParameterInput)(nil)).Elem(), ConformancePackInputParameterArgs{}) @@ -4129,6 +4437,10 @@ func init() { pulumi.RegisterOutputType(ConfigurationRecorderExclusionByResourceTypesPtrOutput{}) pulumi.RegisterOutputType(ConfigurationRecorderRecordingGroupOutput{}) pulumi.RegisterOutputType(ConfigurationRecorderRecordingGroupPtrOutput{}) + pulumi.RegisterOutputType(ConfigurationRecorderRecordingModeOutput{}) + pulumi.RegisterOutputType(ConfigurationRecorderRecordingModePtrOutput{}) + pulumi.RegisterOutputType(ConfigurationRecorderRecordingModeOverrideOutput{}) + pulumi.RegisterOutputType(ConfigurationRecorderRecordingModeOverrideArrayOutput{}) pulumi.RegisterOutputType(ConfigurationRecorderRecordingStrategyOutput{}) pulumi.RegisterOutputType(ConfigurationRecorderRecordingStrategyPtrOutput{}) pulumi.RegisterOutputType(ConformancePackInputParameterOutput{}) diff --git a/sdk/go/aws/connect/getInstance.go b/sdk/go/aws/connect/getInstance.go index 22f27786ec..a4263032e3 100644 --- a/sdk/go/aws/connect/getInstance.go +++ b/sdk/go/aws/connect/getInstance.go @@ -41,6 +41,8 @@ type LookupInstanceResult struct { InstanceStatus *InstanceStatus `pulumi:"instanceStatus"` // Service linked role created as part of instance creation. ServiceRole *string `pulumi:"serviceRole"` + // An array of key-value pairs to apply to this resource. + Tags []InstanceTag `pulumi:"tags"` } func LookupInstanceOutput(ctx *pulumi.Context, args LookupInstanceOutputArgs, opts ...pulumi.InvokeOption) LookupInstanceResultOutput { @@ -115,6 +117,11 @@ func (o LookupInstanceResultOutput) ServiceRole() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupInstanceResult) *string { return v.ServiceRole }).(pulumi.StringPtrOutput) } +// An array of key-value pairs to apply to this resource. +func (o LookupInstanceResultOutput) Tags() InstanceTagArrayOutput { + return o.ApplyT(func(v LookupInstanceResult) []InstanceTag { return v.Tags }).(InstanceTagArrayOutput) +} + func init() { pulumi.RegisterOutputType(LookupInstanceResultOutput{}) } diff --git a/sdk/go/aws/connect/instance.go b/sdk/go/aws/connect/instance.go index c796144508..dcb0caca17 100644 --- a/sdk/go/aws/connect/instance.go +++ b/sdk/go/aws/connect/instance.go @@ -33,6 +33,8 @@ type Instance struct { InstanceStatus InstanceStatusOutput `pulumi:"instanceStatus"` // Service linked role created as part of instance creation. ServiceRole pulumi.StringOutput `pulumi:"serviceRole"` + // An array of key-value pairs to apply to this resource. + Tags InstanceTagArrayOutput `pulumi:"tags"` } // NewInstance registers a new resource with the given unique name, arguments, and options. @@ -95,6 +97,8 @@ type instanceArgs struct { IdentityManagementType InstanceIdentityManagementType `pulumi:"identityManagementType"` // Alias of the new directory created as part of new instance creation. InstanceAlias *string `pulumi:"instanceAlias"` + // An array of key-value pairs to apply to this resource. + Tags []InstanceTag `pulumi:"tags"` } // The set of arguments for constructing a Instance resource. @@ -107,6 +111,8 @@ type InstanceArgs struct { IdentityManagementType InstanceIdentityManagementTypeInput // Alias of the new directory created as part of new instance creation. InstanceAlias pulumi.StringPtrInput + // An array of key-value pairs to apply to this resource. + Tags InstanceTagArrayInput } func (InstanceArgs) ElementType() reflect.Type { @@ -198,6 +204,11 @@ func (o InstanceOutput) ServiceRole() pulumi.StringOutput { return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.ServiceRole }).(pulumi.StringOutput) } +// An array of key-value pairs to apply to this resource. +func (o InstanceOutput) Tags() InstanceTagArrayOutput { + return o.ApplyT(func(v *Instance) InstanceTagArrayOutput { return v.Tags }).(InstanceTagArrayOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*InstanceInput)(nil)).Elem(), &Instance{}) pulumi.RegisterOutputType(InstanceOutput{}) diff --git a/sdk/go/aws/connect/pulumiEnums.go b/sdk/go/aws/connect/pulumiEnums.go index b75ffd5864..e1298064b8 100644 --- a/sdk/go/aws/connect/pulumiEnums.go +++ b/sdk/go/aws/connect/pulumiEnums.go @@ -2708,6 +2708,7 @@ type IntegrationAssociationIntegrationType string const ( IntegrationAssociationIntegrationTypeLexBot = IntegrationAssociationIntegrationType("LEX_BOT") IntegrationAssociationIntegrationTypeLambdaFunction = IntegrationAssociationIntegrationType("LAMBDA_FUNCTION") + IntegrationAssociationIntegrationTypeApplication = IntegrationAssociationIntegrationType("APPLICATION") ) func (IntegrationAssociationIntegrationType) ElementType() reflect.Type { @@ -4465,6 +4466,8 @@ const ( RuleTriggerEventSourceEventSourceNameOnZendeskTicketStatusUpdate = RuleTriggerEventSourceEventSourceName("OnZendeskTicketStatusUpdate") RuleTriggerEventSourceEventSourceNameOnSalesforceCaseCreate = RuleTriggerEventSourceEventSourceName("OnSalesforceCaseCreate") RuleTriggerEventSourceEventSourceNameOnMetricDataUpdate = RuleTriggerEventSourceEventSourceName("OnMetricDataUpdate") + RuleTriggerEventSourceEventSourceNameOnCaseCreate = RuleTriggerEventSourceEventSourceName("OnCaseCreate") + RuleTriggerEventSourceEventSourceNameOnCasesUpdate = RuleTriggerEventSourceEventSourceName("OnCasesUpdate") ) func (RuleTriggerEventSourceEventSourceName) ElementType() reflect.Type { diff --git a/sdk/go/aws/connect/pulumiTypes.go b/sdk/go/aws/connect/pulumiTypes.go index 39fbe3cb85..f9477e32f9 100644 --- a/sdk/go/aws/connect/pulumiTypes.go +++ b/sdk/go/aws/connect/pulumiTypes.go @@ -4243,9 +4243,9 @@ func (o InstanceStorageConfigKinesisStreamConfigPtrOutput) StreamArn() pulumi.St } type InstanceStorageConfigKinesisVideoStreamConfig struct { - EncryptionConfig *InstanceStorageConfigEncryptionConfig `pulumi:"encryptionConfig"` - Prefix string `pulumi:"prefix"` - RetentionPeriodHours float64 `pulumi:"retentionPeriodHours"` + EncryptionConfig InstanceStorageConfigEncryptionConfig `pulumi:"encryptionConfig"` + Prefix string `pulumi:"prefix"` + RetentionPeriodHours float64 `pulumi:"retentionPeriodHours"` } // InstanceStorageConfigKinesisVideoStreamConfigInput is an input type that accepts InstanceStorageConfigKinesisVideoStreamConfigArgs and InstanceStorageConfigKinesisVideoStreamConfigOutput values. @@ -4260,9 +4260,9 @@ type InstanceStorageConfigKinesisVideoStreamConfigInput interface { } type InstanceStorageConfigKinesisVideoStreamConfigArgs struct { - EncryptionConfig InstanceStorageConfigEncryptionConfigPtrInput `pulumi:"encryptionConfig"` - Prefix pulumi.StringInput `pulumi:"prefix"` - RetentionPeriodHours pulumi.Float64Input `pulumi:"retentionPeriodHours"` + EncryptionConfig InstanceStorageConfigEncryptionConfigInput `pulumi:"encryptionConfig"` + Prefix pulumi.StringInput `pulumi:"prefix"` + RetentionPeriodHours pulumi.Float64Input `pulumi:"retentionPeriodHours"` } func (InstanceStorageConfigKinesisVideoStreamConfigArgs) ElementType() reflect.Type { @@ -4360,10 +4360,10 @@ func (o InstanceStorageConfigKinesisVideoStreamConfigOutput) ToOutput(ctx contex } } -func (o InstanceStorageConfigKinesisVideoStreamConfigOutput) EncryptionConfig() InstanceStorageConfigEncryptionConfigPtrOutput { - return o.ApplyT(func(v InstanceStorageConfigKinesisVideoStreamConfig) *InstanceStorageConfigEncryptionConfig { +func (o InstanceStorageConfigKinesisVideoStreamConfigOutput) EncryptionConfig() InstanceStorageConfigEncryptionConfigOutput { + return o.ApplyT(func(v InstanceStorageConfigKinesisVideoStreamConfig) InstanceStorageConfigEncryptionConfig { return v.EncryptionConfig - }).(InstanceStorageConfigEncryptionConfigPtrOutput) + }).(InstanceStorageConfigEncryptionConfigOutput) } func (o InstanceStorageConfigKinesisVideoStreamConfigOutput) Prefix() pulumi.StringOutput { @@ -4409,7 +4409,7 @@ func (o InstanceStorageConfigKinesisVideoStreamConfigPtrOutput) EncryptionConfig if v == nil { return nil } - return v.EncryptionConfig + return &v.EncryptionConfig }).(InstanceStorageConfigEncryptionConfigPtrOutput) } @@ -4620,6 +4620,139 @@ func (o InstanceStorageConfigS3ConfigPtrOutput) EncryptionConfig() InstanceStora }).(InstanceStorageConfigEncryptionConfigPtrOutput) } +// A key-value pair to associate with a resource. +type InstanceTag 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"` +} + +// InstanceTagInput is an input type that accepts InstanceTagArgs and InstanceTagOutput values. +// You can construct a concrete instance of `InstanceTagInput` via: +// +// InstanceTagArgs{...} +type InstanceTagInput interface { + pulumi.Input + + ToInstanceTagOutput() InstanceTagOutput + ToInstanceTagOutputWithContext(context.Context) InstanceTagOutput +} + +// A key-value pair to associate with a resource. +type InstanceTagArgs 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 (InstanceTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*InstanceTag)(nil)).Elem() +} + +func (i InstanceTagArgs) ToInstanceTagOutput() InstanceTagOutput { + return i.ToInstanceTagOutputWithContext(context.Background()) +} + +func (i InstanceTagArgs) ToInstanceTagOutputWithContext(ctx context.Context) InstanceTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceTagOutput) +} + +func (i InstanceTagArgs) ToOutput(ctx context.Context) pulumix.Output[InstanceTag] { + return pulumix.Output[InstanceTag]{ + OutputState: i.ToInstanceTagOutputWithContext(ctx).OutputState, + } +} + +// InstanceTagArrayInput is an input type that accepts InstanceTagArray and InstanceTagArrayOutput values. +// You can construct a concrete instance of `InstanceTagArrayInput` via: +// +// InstanceTagArray{ InstanceTagArgs{...} } +type InstanceTagArrayInput interface { + pulumi.Input + + ToInstanceTagArrayOutput() InstanceTagArrayOutput + ToInstanceTagArrayOutputWithContext(context.Context) InstanceTagArrayOutput +} + +type InstanceTagArray []InstanceTagInput + +func (InstanceTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]InstanceTag)(nil)).Elem() +} + +func (i InstanceTagArray) ToInstanceTagArrayOutput() InstanceTagArrayOutput { + return i.ToInstanceTagArrayOutputWithContext(context.Background()) +} + +func (i InstanceTagArray) ToInstanceTagArrayOutputWithContext(ctx context.Context) InstanceTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceTagArrayOutput) +} + +func (i InstanceTagArray) ToOutput(ctx context.Context) pulumix.Output[[]InstanceTag] { + return pulumix.Output[[]InstanceTag]{ + OutputState: i.ToInstanceTagArrayOutputWithContext(ctx).OutputState, + } +} + +// A key-value pair to associate with a resource. +type InstanceTagOutput struct{ *pulumi.OutputState } + +func (InstanceTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*InstanceTag)(nil)).Elem() +} + +func (o InstanceTagOutput) ToInstanceTagOutput() InstanceTagOutput { + return o +} + +func (o InstanceTagOutput) ToInstanceTagOutputWithContext(ctx context.Context) InstanceTagOutput { + return o +} + +func (o InstanceTagOutput) ToOutput(ctx context.Context) pulumix.Output[InstanceTag] { + return pulumix.Output[InstanceTag]{ + OutputState: o.OutputState, + } +} + +// 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 InstanceTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v InstanceTag) 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 InstanceTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v InstanceTag) string { return v.Value }).(pulumi.StringOutput) +} + +type InstanceTagArrayOutput struct{ *pulumi.OutputState } + +func (InstanceTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]InstanceTag)(nil)).Elem() +} + +func (o InstanceTagArrayOutput) ToInstanceTagArrayOutput() InstanceTagArrayOutput { + return o +} + +func (o InstanceTagArrayOutput) ToInstanceTagArrayOutputWithContext(ctx context.Context) InstanceTagArrayOutput { + return o +} + +func (o InstanceTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]InstanceTag] { + return pulumix.Output[[]InstanceTag]{ + OutputState: o.OutputState, + } +} + +func (o InstanceTagArrayOutput) Index(i pulumi.IntInput) InstanceTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) InstanceTag { + return vs[0].([]InstanceTag)[vs[1].(int)] + }).(InstanceTagOutput) +} + // A key-value pair to associate with a resource. type PhoneNumberTag 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 -. @@ -6628,9 +6761,12 @@ func (o RoutingProfileTagArrayOutput) Index(i pulumi.IntInput) RoutingProfileTag // The list of actions that will be executed when a rule is triggered. type RuleActions struct { AssignContactCategoryActions []RuleAssignContactCategoryAction `pulumi:"assignContactCategoryActions"` + CreateCaseActions []RuleCreateCaseAction `pulumi:"createCaseActions"` + EndAssociatedTaskActions []RuleEndAssociatedTasksAction `pulumi:"endAssociatedTaskActions"` EventBridgeActions []RuleEventBridgeAction `pulumi:"eventBridgeActions"` SendNotificationActions []RuleSendNotificationAction `pulumi:"sendNotificationActions"` TaskActions []RuleTaskAction `pulumi:"taskActions"` + UpdateCaseActions []RuleUpdateCaseAction `pulumi:"updateCaseActions"` } // RuleActionsInput is an input type that accepts RuleActionsArgs and RuleActionsOutput values. @@ -6647,9 +6783,12 @@ type RuleActionsInput interface { // The list of actions that will be executed when a rule is triggered. type RuleActionsArgs struct { AssignContactCategoryActions RuleAssignContactCategoryActionArrayInput `pulumi:"assignContactCategoryActions"` + CreateCaseActions RuleCreateCaseActionArrayInput `pulumi:"createCaseActions"` + EndAssociatedTaskActions RuleEndAssociatedTasksActionArrayInput `pulumi:"endAssociatedTaskActions"` EventBridgeActions RuleEventBridgeActionArrayInput `pulumi:"eventBridgeActions"` SendNotificationActions RuleSendNotificationActionArrayInput `pulumi:"sendNotificationActions"` TaskActions RuleTaskActionArrayInput `pulumi:"taskActions"` + UpdateCaseActions RuleUpdateCaseActionArrayInput `pulumi:"updateCaseActions"` } func (RuleActionsArgs) ElementType() reflect.Type { @@ -6695,6 +6834,14 @@ func (o RuleActionsOutput) AssignContactCategoryActions() RuleAssignContactCateg return o.ApplyT(func(v RuleActions) []RuleAssignContactCategoryAction { return v.AssignContactCategoryActions }).(RuleAssignContactCategoryActionArrayOutput) } +func (o RuleActionsOutput) CreateCaseActions() RuleCreateCaseActionArrayOutput { + return o.ApplyT(func(v RuleActions) []RuleCreateCaseAction { return v.CreateCaseActions }).(RuleCreateCaseActionArrayOutput) +} + +func (o RuleActionsOutput) EndAssociatedTaskActions() RuleEndAssociatedTasksActionArrayOutput { + return o.ApplyT(func(v RuleActions) []RuleEndAssociatedTasksAction { return v.EndAssociatedTaskActions }).(RuleEndAssociatedTasksActionArrayOutput) +} + func (o RuleActionsOutput) EventBridgeActions() RuleEventBridgeActionArrayOutput { return o.ApplyT(func(v RuleActions) []RuleEventBridgeAction { return v.EventBridgeActions }).(RuleEventBridgeActionArrayOutput) } @@ -6707,6 +6854,10 @@ func (o RuleActionsOutput) TaskActions() RuleTaskActionArrayOutput { return o.ApplyT(func(v RuleActions) []RuleTaskAction { return v.TaskActions }).(RuleTaskActionArrayOutput) } +func (o RuleActionsOutput) UpdateCaseActions() RuleUpdateCaseActionArrayOutput { + return o.ApplyT(func(v RuleActions) []RuleUpdateCaseAction { return v.UpdateCaseActions }).(RuleUpdateCaseActionArrayOutput) +} + type RuleActionsPtrOutput struct{ *pulumi.OutputState } func (RuleActionsPtrOutput) ElementType() reflect.Type { @@ -6746,6 +6897,24 @@ func (o RuleActionsPtrOutput) AssignContactCategoryActions() RuleAssignContactCa }).(RuleAssignContactCategoryActionArrayOutput) } +func (o RuleActionsPtrOutput) CreateCaseActions() RuleCreateCaseActionArrayOutput { + return o.ApplyT(func(v *RuleActions) []RuleCreateCaseAction { + if v == nil { + return nil + } + return v.CreateCaseActions + }).(RuleCreateCaseActionArrayOutput) +} + +func (o RuleActionsPtrOutput) EndAssociatedTaskActions() RuleEndAssociatedTasksActionArrayOutput { + return o.ApplyT(func(v *RuleActions) []RuleEndAssociatedTasksAction { + if v == nil { + return nil + } + return v.EndAssociatedTaskActions + }).(RuleEndAssociatedTasksActionArrayOutput) +} + func (o RuleActionsPtrOutput) EventBridgeActions() RuleEventBridgeActionArrayOutput { return o.ApplyT(func(v *RuleActions) []RuleEventBridgeAction { if v == nil { @@ -6773,6 +6942,15 @@ func (o RuleActionsPtrOutput) TaskActions() RuleTaskActionArrayOutput { }).(RuleTaskActionArrayOutput) } +func (o RuleActionsPtrOutput) UpdateCaseActions() RuleUpdateCaseActionArrayOutput { + return o.ApplyT(func(v *RuleActions) []RuleUpdateCaseAction { + if v == nil { + return nil + } + return v.UpdateCaseActions + }).(RuleUpdateCaseActionArrayOutput) +} + // The definition for assigning contact category action. type RuleAssignContactCategoryAction struct { } @@ -6888,6 +7066,251 @@ 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"` +} + +// RuleCreateCaseActionInput is an input type that accepts RuleCreateCaseActionArgs and RuleCreateCaseActionOutput values. +// You can construct a concrete instance of `RuleCreateCaseActionInput` via: +// +// RuleCreateCaseActionArgs{...} +type RuleCreateCaseActionInput interface { + pulumi.Input + + ToRuleCreateCaseActionOutput() RuleCreateCaseActionOutput + 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"` +} + +func (RuleCreateCaseActionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RuleCreateCaseAction)(nil)).Elem() +} + +func (i RuleCreateCaseActionArgs) ToRuleCreateCaseActionOutput() RuleCreateCaseActionOutput { + return i.ToRuleCreateCaseActionOutputWithContext(context.Background()) +} + +func (i RuleCreateCaseActionArgs) ToRuleCreateCaseActionOutputWithContext(ctx context.Context) RuleCreateCaseActionOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleCreateCaseActionOutput) +} + +func (i RuleCreateCaseActionArgs) ToOutput(ctx context.Context) pulumix.Output[RuleCreateCaseAction] { + return pulumix.Output[RuleCreateCaseAction]{ + OutputState: i.ToRuleCreateCaseActionOutputWithContext(ctx).OutputState, + } +} + +// RuleCreateCaseActionArrayInput is an input type that accepts RuleCreateCaseActionArray and RuleCreateCaseActionArrayOutput values. +// You can construct a concrete instance of `RuleCreateCaseActionArrayInput` via: +// +// RuleCreateCaseActionArray{ RuleCreateCaseActionArgs{...} } +type RuleCreateCaseActionArrayInput interface { + pulumi.Input + + ToRuleCreateCaseActionArrayOutput() RuleCreateCaseActionArrayOutput + ToRuleCreateCaseActionArrayOutputWithContext(context.Context) RuleCreateCaseActionArrayOutput +} + +type RuleCreateCaseActionArray []RuleCreateCaseActionInput + +func (RuleCreateCaseActionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RuleCreateCaseAction)(nil)).Elem() +} + +func (i RuleCreateCaseActionArray) ToRuleCreateCaseActionArrayOutput() RuleCreateCaseActionArrayOutput { + return i.ToRuleCreateCaseActionArrayOutputWithContext(context.Background()) +} + +func (i RuleCreateCaseActionArray) ToRuleCreateCaseActionArrayOutputWithContext(ctx context.Context) RuleCreateCaseActionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleCreateCaseActionArrayOutput) +} + +func (i RuleCreateCaseActionArray) ToOutput(ctx context.Context) pulumix.Output[[]RuleCreateCaseAction] { + return pulumix.Output[[]RuleCreateCaseAction]{ + OutputState: i.ToRuleCreateCaseActionArrayOutputWithContext(ctx).OutputState, + } +} + +// The definition for create case action. +type RuleCreateCaseActionOutput struct{ *pulumi.OutputState } + +func (RuleCreateCaseActionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RuleCreateCaseAction)(nil)).Elem() +} + +func (o RuleCreateCaseActionOutput) ToRuleCreateCaseActionOutput() RuleCreateCaseActionOutput { + return o +} + +func (o RuleCreateCaseActionOutput) ToRuleCreateCaseActionOutputWithContext(ctx context.Context) RuleCreateCaseActionOutput { + return o +} + +func (o RuleCreateCaseActionOutput) ToOutput(ctx context.Context) pulumix.Output[RuleCreateCaseAction] { + return pulumix.Output[RuleCreateCaseAction]{ + OutputState: o.OutputState, + } +} + +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) +} + +type RuleCreateCaseActionArrayOutput struct{ *pulumi.OutputState } + +func (RuleCreateCaseActionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RuleCreateCaseAction)(nil)).Elem() +} + +func (o RuleCreateCaseActionArrayOutput) ToRuleCreateCaseActionArrayOutput() RuleCreateCaseActionArrayOutput { + return o +} + +func (o RuleCreateCaseActionArrayOutput) ToRuleCreateCaseActionArrayOutputWithContext(ctx context.Context) RuleCreateCaseActionArrayOutput { + return o +} + +func (o RuleCreateCaseActionArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]RuleCreateCaseAction] { + return pulumix.Output[[]RuleCreateCaseAction]{ + OutputState: o.OutputState, + } +} + +func (o RuleCreateCaseActionArrayOutput) Index(i pulumi.IntInput) RuleCreateCaseActionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RuleCreateCaseAction { + return vs[0].([]RuleCreateCaseAction)[vs[1].(int)] + }).(RuleCreateCaseActionOutput) +} + +// The definition for ending associated task action. +type RuleEndAssociatedTasksAction struct { +} + +// RuleEndAssociatedTasksActionInput is an input type that accepts RuleEndAssociatedTasksActionArgs and RuleEndAssociatedTasksActionOutput values. +// You can construct a concrete instance of `RuleEndAssociatedTasksActionInput` via: +// +// RuleEndAssociatedTasksActionArgs{...} +type RuleEndAssociatedTasksActionInput interface { + pulumi.Input + + ToRuleEndAssociatedTasksActionOutput() RuleEndAssociatedTasksActionOutput + ToRuleEndAssociatedTasksActionOutputWithContext(context.Context) RuleEndAssociatedTasksActionOutput +} + +// The definition for ending associated task action. +type RuleEndAssociatedTasksActionArgs struct { +} + +func (RuleEndAssociatedTasksActionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RuleEndAssociatedTasksAction)(nil)).Elem() +} + +func (i RuleEndAssociatedTasksActionArgs) ToRuleEndAssociatedTasksActionOutput() RuleEndAssociatedTasksActionOutput { + return i.ToRuleEndAssociatedTasksActionOutputWithContext(context.Background()) +} + +func (i RuleEndAssociatedTasksActionArgs) ToRuleEndAssociatedTasksActionOutputWithContext(ctx context.Context) RuleEndAssociatedTasksActionOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleEndAssociatedTasksActionOutput) +} + +func (i RuleEndAssociatedTasksActionArgs) ToOutput(ctx context.Context) pulumix.Output[RuleEndAssociatedTasksAction] { + return pulumix.Output[RuleEndAssociatedTasksAction]{ + OutputState: i.ToRuleEndAssociatedTasksActionOutputWithContext(ctx).OutputState, + } +} + +// RuleEndAssociatedTasksActionArrayInput is an input type that accepts RuleEndAssociatedTasksActionArray and RuleEndAssociatedTasksActionArrayOutput values. +// You can construct a concrete instance of `RuleEndAssociatedTasksActionArrayInput` via: +// +// RuleEndAssociatedTasksActionArray{ RuleEndAssociatedTasksActionArgs{...} } +type RuleEndAssociatedTasksActionArrayInput interface { + pulumi.Input + + ToRuleEndAssociatedTasksActionArrayOutput() RuleEndAssociatedTasksActionArrayOutput + ToRuleEndAssociatedTasksActionArrayOutputWithContext(context.Context) RuleEndAssociatedTasksActionArrayOutput +} + +type RuleEndAssociatedTasksActionArray []RuleEndAssociatedTasksActionInput + +func (RuleEndAssociatedTasksActionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RuleEndAssociatedTasksAction)(nil)).Elem() +} + +func (i RuleEndAssociatedTasksActionArray) ToRuleEndAssociatedTasksActionArrayOutput() RuleEndAssociatedTasksActionArrayOutput { + return i.ToRuleEndAssociatedTasksActionArrayOutputWithContext(context.Background()) +} + +func (i RuleEndAssociatedTasksActionArray) ToRuleEndAssociatedTasksActionArrayOutputWithContext(ctx context.Context) RuleEndAssociatedTasksActionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleEndAssociatedTasksActionArrayOutput) +} + +func (i RuleEndAssociatedTasksActionArray) ToOutput(ctx context.Context) pulumix.Output[[]RuleEndAssociatedTasksAction] { + return pulumix.Output[[]RuleEndAssociatedTasksAction]{ + OutputState: i.ToRuleEndAssociatedTasksActionArrayOutputWithContext(ctx).OutputState, + } +} + +// The definition for ending associated task action. +type RuleEndAssociatedTasksActionOutput struct{ *pulumi.OutputState } + +func (RuleEndAssociatedTasksActionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RuleEndAssociatedTasksAction)(nil)).Elem() +} + +func (o RuleEndAssociatedTasksActionOutput) ToRuleEndAssociatedTasksActionOutput() RuleEndAssociatedTasksActionOutput { + return o +} + +func (o RuleEndAssociatedTasksActionOutput) ToRuleEndAssociatedTasksActionOutputWithContext(ctx context.Context) RuleEndAssociatedTasksActionOutput { + return o +} + +func (o RuleEndAssociatedTasksActionOutput) ToOutput(ctx context.Context) pulumix.Output[RuleEndAssociatedTasksAction] { + return pulumix.Output[RuleEndAssociatedTasksAction]{ + OutputState: o.OutputState, + } +} + +type RuleEndAssociatedTasksActionArrayOutput struct{ *pulumi.OutputState } + +func (RuleEndAssociatedTasksActionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RuleEndAssociatedTasksAction)(nil)).Elem() +} + +func (o RuleEndAssociatedTasksActionArrayOutput) ToRuleEndAssociatedTasksActionArrayOutput() RuleEndAssociatedTasksActionArrayOutput { + return o +} + +func (o RuleEndAssociatedTasksActionArrayOutput) ToRuleEndAssociatedTasksActionArrayOutputWithContext(ctx context.Context) RuleEndAssociatedTasksActionArrayOutput { + return o +} + +func (o RuleEndAssociatedTasksActionArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]RuleEndAssociatedTasksAction] { + return pulumix.Output[[]RuleEndAssociatedTasksAction]{ + OutputState: o.OutputState, + } +} + +func (o RuleEndAssociatedTasksActionArrayOutput) Index(i pulumi.IntInput) RuleEndAssociatedTasksActionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RuleEndAssociatedTasksAction { + return vs[0].([]RuleEndAssociatedTasksAction)[vs[1].(int)] + }).(RuleEndAssociatedTasksActionOutput) +} + // The definition for event bridge action. type RuleEventBridgeAction struct { // The name of the event bridge action. @@ -7012,6 +7435,218 @@ 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"` +} + +// RuleFieldInput is an input type that accepts RuleFieldArgs and RuleFieldOutput values. +// You can construct a concrete instance of `RuleFieldInput` via: +// +// RuleFieldArgs{...} +type RuleFieldInput interface { + pulumi.Input + + ToRuleFieldOutput() RuleFieldOutput + 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"` +} + +func (RuleFieldArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RuleField)(nil)).Elem() +} + +func (i RuleFieldArgs) ToRuleFieldOutput() RuleFieldOutput { + return i.ToRuleFieldOutputWithContext(context.Background()) +} + +func (i RuleFieldArgs) ToRuleFieldOutputWithContext(ctx context.Context) RuleFieldOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleFieldOutput) +} + +func (i RuleFieldArgs) ToOutput(ctx context.Context) pulumix.Output[RuleField] { + return pulumix.Output[RuleField]{ + OutputState: i.ToRuleFieldOutputWithContext(ctx).OutputState, + } +} + +// RuleFieldArrayInput is an input type that accepts RuleFieldArray and RuleFieldArrayOutput values. +// You can construct a concrete instance of `RuleFieldArrayInput` via: +// +// RuleFieldArray{ RuleFieldArgs{...} } +type RuleFieldArrayInput interface { + pulumi.Input + + ToRuleFieldArrayOutput() RuleFieldArrayOutput + ToRuleFieldArrayOutputWithContext(context.Context) RuleFieldArrayOutput +} + +type RuleFieldArray []RuleFieldInput + +func (RuleFieldArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RuleField)(nil)).Elem() +} + +func (i RuleFieldArray) ToRuleFieldArrayOutput() RuleFieldArrayOutput { + return i.ToRuleFieldArrayOutputWithContext(context.Background()) +} + +func (i RuleFieldArray) ToRuleFieldArrayOutputWithContext(ctx context.Context) RuleFieldArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleFieldArrayOutput) +} + +func (i RuleFieldArray) ToOutput(ctx context.Context) pulumix.Output[[]RuleField] { + return pulumix.Output[[]RuleField]{ + OutputState: i.ToRuleFieldArrayOutputWithContext(ctx).OutputState, + } +} + +// The field of the case. +type RuleFieldOutput struct{ *pulumi.OutputState } + +func (RuleFieldOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RuleField)(nil)).Elem() +} + +func (o RuleFieldOutput) ToRuleFieldOutput() RuleFieldOutput { + return o +} + +func (o RuleFieldOutput) ToRuleFieldOutputWithContext(ctx context.Context) RuleFieldOutput { + return o +} + +func (o RuleFieldOutput) ToOutput(ctx context.Context) pulumix.Output[RuleField] { + return pulumix.Output[RuleField]{ + OutputState: o.OutputState, + } +} + +// The Id of the field +func (o RuleFieldOutput) Id() pulumi.StringOutput { + return o.ApplyT(func(v RuleField) string { return v.Id }).(pulumi.StringOutput) +} + +func (o RuleFieldOutput) Value() RuleFieldValueOutput { + return o.ApplyT(func(v RuleField) RuleFieldValue { return v.Value }).(RuleFieldValueOutput) +} + +type RuleFieldArrayOutput struct{ *pulumi.OutputState } + +func (RuleFieldArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RuleField)(nil)).Elem() +} + +func (o RuleFieldArrayOutput) ToRuleFieldArrayOutput() RuleFieldArrayOutput { + return o +} + +func (o RuleFieldArrayOutput) ToRuleFieldArrayOutputWithContext(ctx context.Context) RuleFieldArrayOutput { + return o +} + +func (o RuleFieldArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]RuleField] { + return pulumix.Output[[]RuleField]{ + OutputState: o.OutputState, + } +} + +func (o RuleFieldArrayOutput) Index(i pulumi.IntInput) RuleFieldOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RuleField { + return vs[0].([]RuleField)[vs[1].(int)] + }).(RuleFieldOutput) +} + +// The value of the field. +type RuleFieldValue struct { + BooleanValue *bool `pulumi:"booleanValue"` + DoubleValue *float64 `pulumi:"doubleValue"` + EmptyValue interface{} `pulumi:"emptyValue"` + StringValue *string `pulumi:"stringValue"` +} + +// RuleFieldValueInput is an input type that accepts RuleFieldValueArgs and RuleFieldValueOutput values. +// You can construct a concrete instance of `RuleFieldValueInput` via: +// +// RuleFieldValueArgs{...} +type RuleFieldValueInput interface { + pulumi.Input + + ToRuleFieldValueOutput() RuleFieldValueOutput + ToRuleFieldValueOutputWithContext(context.Context) RuleFieldValueOutput +} + +// The value of the field. +type RuleFieldValueArgs struct { + BooleanValue pulumi.BoolPtrInput `pulumi:"booleanValue"` + DoubleValue pulumi.Float64PtrInput `pulumi:"doubleValue"` + EmptyValue pulumi.Input `pulumi:"emptyValue"` + StringValue pulumi.StringPtrInput `pulumi:"stringValue"` +} + +func (RuleFieldValueArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RuleFieldValue)(nil)).Elem() +} + +func (i RuleFieldValueArgs) ToRuleFieldValueOutput() RuleFieldValueOutput { + return i.ToRuleFieldValueOutputWithContext(context.Background()) +} + +func (i RuleFieldValueArgs) ToRuleFieldValueOutputWithContext(ctx context.Context) RuleFieldValueOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleFieldValueOutput) +} + +func (i RuleFieldValueArgs) ToOutput(ctx context.Context) pulumix.Output[RuleFieldValue] { + return pulumix.Output[RuleFieldValue]{ + OutputState: i.ToRuleFieldValueOutputWithContext(ctx).OutputState, + } +} + +// The value of the field. +type RuleFieldValueOutput struct{ *pulumi.OutputState } + +func (RuleFieldValueOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RuleFieldValue)(nil)).Elem() +} + +func (o RuleFieldValueOutput) ToRuleFieldValueOutput() RuleFieldValueOutput { + return o +} + +func (o RuleFieldValueOutput) ToRuleFieldValueOutputWithContext(ctx context.Context) RuleFieldValueOutput { + return o +} + +func (o RuleFieldValueOutput) ToOutput(ctx context.Context) pulumix.Output[RuleFieldValue] { + return pulumix.Output[RuleFieldValue]{ + OutputState: o.OutputState, + } +} + +func (o RuleFieldValueOutput) BooleanValue() pulumi.BoolPtrOutput { + return o.ApplyT(func(v RuleFieldValue) *bool { return v.BooleanValue }).(pulumi.BoolPtrOutput) +} + +func (o RuleFieldValueOutput) DoubleValue() pulumi.Float64PtrOutput { + return o.ApplyT(func(v RuleFieldValue) *float64 { return v.DoubleValue }).(pulumi.Float64PtrOutput) +} + +func (o RuleFieldValueOutput) EmptyValue() pulumi.AnyOutput { + return o.ApplyT(func(v RuleFieldValue) interface{} { return v.EmptyValue }).(pulumi.AnyOutput) +} + +func (o RuleFieldValueOutput) StringValue() pulumi.StringPtrOutput { + return o.ApplyT(func(v RuleFieldValue) *string { return v.StringValue }).(pulumi.StringPtrOutput) +} + // The type of notification recipient. type RuleNotificationRecipientType struct { // The list of recipients by user arns. @@ -7605,6 +8240,127 @@ func (o RuleTriggerEventSourceOutput) IntegrationAssociationArn() pulumi.StringP 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"` +} + +// RuleUpdateCaseActionInput is an input type that accepts RuleUpdateCaseActionArgs and RuleUpdateCaseActionOutput values. +// You can construct a concrete instance of `RuleUpdateCaseActionInput` via: +// +// RuleUpdateCaseActionArgs{...} +type RuleUpdateCaseActionInput interface { + pulumi.Input + + ToRuleUpdateCaseActionOutput() RuleUpdateCaseActionOutput + ToRuleUpdateCaseActionOutputWithContext(context.Context) RuleUpdateCaseActionOutput +} + +// The definition for update case action. +type RuleUpdateCaseActionArgs struct { + Fields RuleFieldArrayInput `pulumi:"fields"` +} + +func (RuleUpdateCaseActionArgs) ElementType() reflect.Type { + return reflect.TypeOf((*RuleUpdateCaseAction)(nil)).Elem() +} + +func (i RuleUpdateCaseActionArgs) ToRuleUpdateCaseActionOutput() RuleUpdateCaseActionOutput { + return i.ToRuleUpdateCaseActionOutputWithContext(context.Background()) +} + +func (i RuleUpdateCaseActionArgs) ToRuleUpdateCaseActionOutputWithContext(ctx context.Context) RuleUpdateCaseActionOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleUpdateCaseActionOutput) +} + +func (i RuleUpdateCaseActionArgs) ToOutput(ctx context.Context) pulumix.Output[RuleUpdateCaseAction] { + return pulumix.Output[RuleUpdateCaseAction]{ + OutputState: i.ToRuleUpdateCaseActionOutputWithContext(ctx).OutputState, + } +} + +// RuleUpdateCaseActionArrayInput is an input type that accepts RuleUpdateCaseActionArray and RuleUpdateCaseActionArrayOutput values. +// You can construct a concrete instance of `RuleUpdateCaseActionArrayInput` via: +// +// RuleUpdateCaseActionArray{ RuleUpdateCaseActionArgs{...} } +type RuleUpdateCaseActionArrayInput interface { + pulumi.Input + + ToRuleUpdateCaseActionArrayOutput() RuleUpdateCaseActionArrayOutput + ToRuleUpdateCaseActionArrayOutputWithContext(context.Context) RuleUpdateCaseActionArrayOutput +} + +type RuleUpdateCaseActionArray []RuleUpdateCaseActionInput + +func (RuleUpdateCaseActionArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]RuleUpdateCaseAction)(nil)).Elem() +} + +func (i RuleUpdateCaseActionArray) ToRuleUpdateCaseActionArrayOutput() RuleUpdateCaseActionArrayOutput { + return i.ToRuleUpdateCaseActionArrayOutputWithContext(context.Background()) +} + +func (i RuleUpdateCaseActionArray) ToRuleUpdateCaseActionArrayOutputWithContext(ctx context.Context) RuleUpdateCaseActionArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(RuleUpdateCaseActionArrayOutput) +} + +func (i RuleUpdateCaseActionArray) ToOutput(ctx context.Context) pulumix.Output[[]RuleUpdateCaseAction] { + return pulumix.Output[[]RuleUpdateCaseAction]{ + OutputState: i.ToRuleUpdateCaseActionArrayOutputWithContext(ctx).OutputState, + } +} + +// The definition for update case action. +type RuleUpdateCaseActionOutput struct{ *pulumi.OutputState } + +func (RuleUpdateCaseActionOutput) ElementType() reflect.Type { + return reflect.TypeOf((*RuleUpdateCaseAction)(nil)).Elem() +} + +func (o RuleUpdateCaseActionOutput) ToRuleUpdateCaseActionOutput() RuleUpdateCaseActionOutput { + return o +} + +func (o RuleUpdateCaseActionOutput) ToRuleUpdateCaseActionOutputWithContext(ctx context.Context) RuleUpdateCaseActionOutput { + return o +} + +func (o RuleUpdateCaseActionOutput) ToOutput(ctx context.Context) pulumix.Output[RuleUpdateCaseAction] { + return pulumix.Output[RuleUpdateCaseAction]{ + OutputState: o.OutputState, + } +} + +func (o RuleUpdateCaseActionOutput) Fields() RuleFieldArrayOutput { + return o.ApplyT(func(v RuleUpdateCaseAction) []RuleField { return v.Fields }).(RuleFieldArrayOutput) +} + +type RuleUpdateCaseActionArrayOutput struct{ *pulumi.OutputState } + +func (RuleUpdateCaseActionArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]RuleUpdateCaseAction)(nil)).Elem() +} + +func (o RuleUpdateCaseActionArrayOutput) ToRuleUpdateCaseActionArrayOutput() RuleUpdateCaseActionArrayOutput { + return o +} + +func (o RuleUpdateCaseActionArrayOutput) ToRuleUpdateCaseActionArrayOutputWithContext(ctx context.Context) RuleUpdateCaseActionArrayOutput { + return o +} + +func (o RuleUpdateCaseActionArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]RuleUpdateCaseAction] { + return pulumix.Output[[]RuleUpdateCaseAction]{ + OutputState: o.OutputState, + } +} + +func (o RuleUpdateCaseActionArrayOutput) Index(i pulumi.IntInput) RuleUpdateCaseActionOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) RuleUpdateCaseAction { + return vs[0].([]RuleUpdateCaseAction)[vs[1].(int)] + }).(RuleUpdateCaseActionOutput) +} + // A key-value pair to associate with a resource. type SecurityProfileTag 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 -. @@ -9527,6 +10283,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*InstanceStorageConfigKinesisVideoStreamConfigPtrInput)(nil)).Elem(), InstanceStorageConfigKinesisVideoStreamConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstanceStorageConfigS3ConfigInput)(nil)).Elem(), InstanceStorageConfigS3ConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstanceStorageConfigS3ConfigPtrInput)(nil)).Elem(), InstanceStorageConfigS3ConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceTagInput)(nil)).Elem(), InstanceTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceTagArrayInput)(nil)).Elem(), InstanceTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*PhoneNumberTagInput)(nil)).Elem(), PhoneNumberTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PhoneNumberTagArrayInput)(nil)).Elem(), PhoneNumberTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*PromptTagInput)(nil)).Elem(), PromptTagArgs{}) @@ -9556,8 +10314,15 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*RuleActionsInput)(nil)).Elem(), RuleActionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleAssignContactCategoryActionInput)(nil)).Elem(), RuleAssignContactCategoryActionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleAssignContactCategoryActionArrayInput)(nil)).Elem(), RuleAssignContactCategoryActionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleCreateCaseActionInput)(nil)).Elem(), RuleCreateCaseActionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleCreateCaseActionArrayInput)(nil)).Elem(), RuleCreateCaseActionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleEndAssociatedTasksActionInput)(nil)).Elem(), RuleEndAssociatedTasksActionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleEndAssociatedTasksActionArrayInput)(nil)).Elem(), RuleEndAssociatedTasksActionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleEventBridgeActionInput)(nil)).Elem(), RuleEventBridgeActionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleEventBridgeActionArrayInput)(nil)).Elem(), RuleEventBridgeActionArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleFieldInput)(nil)).Elem(), RuleFieldArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleFieldArrayInput)(nil)).Elem(), RuleFieldArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleFieldValueInput)(nil)).Elem(), RuleFieldValueArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleNotificationRecipientTypeInput)(nil)).Elem(), RuleNotificationRecipientTypeArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleSendNotificationActionInput)(nil)).Elem(), RuleSendNotificationActionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleSendNotificationActionArrayInput)(nil)).Elem(), RuleSendNotificationActionArray{}) @@ -9566,6 +10331,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*RuleTaskActionInput)(nil)).Elem(), RuleTaskActionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleTaskActionArrayInput)(nil)).Elem(), RuleTaskActionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*RuleTriggerEventSourceInput)(nil)).Elem(), RuleTriggerEventSourceArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleUpdateCaseActionInput)(nil)).Elem(), RuleUpdateCaseActionArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*RuleUpdateCaseActionArrayInput)(nil)).Elem(), RuleUpdateCaseActionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SecurityProfileTagInput)(nil)).Elem(), SecurityProfileTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SecurityProfileTagArrayInput)(nil)).Elem(), SecurityProfileTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*TaskTemplateDefaultFieldValueInput)(nil)).Elem(), TaskTemplateDefaultFieldValueArgs{}) @@ -9646,6 +10413,8 @@ func init() { pulumi.RegisterOutputType(InstanceStorageConfigKinesisVideoStreamConfigPtrOutput{}) pulumi.RegisterOutputType(InstanceStorageConfigS3ConfigOutput{}) pulumi.RegisterOutputType(InstanceStorageConfigS3ConfigPtrOutput{}) + pulumi.RegisterOutputType(InstanceTagOutput{}) + pulumi.RegisterOutputType(InstanceTagArrayOutput{}) pulumi.RegisterOutputType(PhoneNumberTagOutput{}) pulumi.RegisterOutputType(PhoneNumberTagArrayOutput{}) pulumi.RegisterOutputType(PromptTagOutput{}) @@ -9677,8 +10446,15 @@ func init() { pulumi.RegisterOutputType(RuleActionsPtrOutput{}) pulumi.RegisterOutputType(RuleAssignContactCategoryActionOutput{}) pulumi.RegisterOutputType(RuleAssignContactCategoryActionArrayOutput{}) + pulumi.RegisterOutputType(RuleCreateCaseActionOutput{}) + pulumi.RegisterOutputType(RuleCreateCaseActionArrayOutput{}) + pulumi.RegisterOutputType(RuleEndAssociatedTasksActionOutput{}) + pulumi.RegisterOutputType(RuleEndAssociatedTasksActionArrayOutput{}) pulumi.RegisterOutputType(RuleEventBridgeActionOutput{}) pulumi.RegisterOutputType(RuleEventBridgeActionArrayOutput{}) + pulumi.RegisterOutputType(RuleFieldOutput{}) + pulumi.RegisterOutputType(RuleFieldArrayOutput{}) + pulumi.RegisterOutputType(RuleFieldValueOutput{}) pulumi.RegisterOutputType(RuleNotificationRecipientTypeOutput{}) pulumi.RegisterOutputType(RuleSendNotificationActionOutput{}) pulumi.RegisterOutputType(RuleSendNotificationActionArrayOutput{}) @@ -9687,6 +10463,8 @@ func init() { pulumi.RegisterOutputType(RuleTaskActionOutput{}) pulumi.RegisterOutputType(RuleTaskActionArrayOutput{}) pulumi.RegisterOutputType(RuleTriggerEventSourceOutput{}) + pulumi.RegisterOutputType(RuleUpdateCaseActionOutput{}) + pulumi.RegisterOutputType(RuleUpdateCaseActionArrayOutput{}) pulumi.RegisterOutputType(SecurityProfileTagOutput{}) pulumi.RegisterOutputType(SecurityProfileTagArrayOutput{}) pulumi.RegisterOutputType(TaskTemplateDefaultFieldValueOutput{}) diff --git a/sdk/go/aws/dms/dataProvider.go b/sdk/go/aws/dms/dataProvider.go new file mode 100644 index 0000000000..a36952f28c --- /dev/null +++ b/sdk/go/aws/dms/dataProvider.go @@ -0,0 +1,214 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package dms + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::DMS::DataProvider +type DataProvider struct { + pulumi.CustomResourceState + + // The data provider ARN. + DataProviderArn pulumi.StringOutput `pulumi:"dataProviderArn"` + // The data provider creation time. + DataProviderCreationTime pulumi.StringOutput `pulumi:"dataProviderCreationTime"` + // The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + DataProviderIdentifier pulumi.StringPtrOutput `pulumi:"dataProviderIdentifier"` + // The property describes a name to identify the data provider. + DataProviderName pulumi.StringPtrOutput `pulumi:"dataProviderName"` + // The optional description of the data provider. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The property describes a data engine for the data provider. + Engine DataProviderEngineOutput `pulumi:"engine"` + // The property describes the exact settings which can be modified + ExactSettings pulumi.BoolPtrOutput `pulumi:"exactSettings"` + // The property identifies the exact type of settings for the data provider. + Settings pulumi.AnyOutput `pulumi:"settings"` + // An array of key-value pairs to apply to this resource. + Tags DataProviderTagArrayOutput `pulumi:"tags"` +} + +// NewDataProvider registers a new resource with the given unique name, arguments, and options. +func NewDataProvider(ctx *pulumi.Context, + name string, args *DataProviderArgs, opts ...pulumi.ResourceOption) (*DataProvider, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Engine == nil { + return nil, errors.New("invalid value for required argument 'Engine'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource DataProvider + err := ctx.RegisterResource("aws-native:dms:DataProvider", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetDataProvider gets an existing DataProvider 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 GetDataProvider(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *DataProviderState, opts ...pulumi.ResourceOption) (*DataProvider, error) { + var resource DataProvider + err := ctx.ReadResource("aws-native:dms:DataProvider", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering DataProvider resources. +type dataProviderState struct { +} + +type DataProviderState struct { +} + +func (DataProviderState) ElementType() reflect.Type { + return reflect.TypeOf((*dataProviderState)(nil)).Elem() +} + +type dataProviderArgs struct { + // The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + DataProviderIdentifier *string `pulumi:"dataProviderIdentifier"` + // The property describes a name to identify the data provider. + DataProviderName *string `pulumi:"dataProviderName"` + // The optional description of the data provider. + Description *string `pulumi:"description"` + // The property describes a data engine for the data provider. + Engine DataProviderEngine `pulumi:"engine"` + // The property describes the exact settings which can be modified + ExactSettings *bool `pulumi:"exactSettings"` + // The property identifies the exact type of settings for the data provider. + Settings interface{} `pulumi:"settings"` + // An array of key-value pairs to apply to this resource. + Tags []DataProviderTag `pulumi:"tags"` +} + +// The set of arguments for constructing a DataProvider resource. +type DataProviderArgs struct { + // The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + DataProviderIdentifier pulumi.StringPtrInput + // The property describes a name to identify the data provider. + DataProviderName pulumi.StringPtrInput + // The optional description of the data provider. + Description pulumi.StringPtrInput + // The property describes a data engine for the data provider. + Engine DataProviderEngineInput + // The property describes the exact settings which can be modified + ExactSettings pulumi.BoolPtrInput + // The property identifies the exact type of settings for the data provider. + Settings pulumi.Input + // An array of key-value pairs to apply to this resource. + Tags DataProviderTagArrayInput +} + +func (DataProviderArgs) ElementType() reflect.Type { + return reflect.TypeOf((*dataProviderArgs)(nil)).Elem() +} + +type DataProviderInput interface { + pulumi.Input + + ToDataProviderOutput() DataProviderOutput + ToDataProviderOutputWithContext(ctx context.Context) DataProviderOutput +} + +func (*DataProvider) ElementType() reflect.Type { + return reflect.TypeOf((**DataProvider)(nil)).Elem() +} + +func (i *DataProvider) ToDataProviderOutput() DataProviderOutput { + return i.ToDataProviderOutputWithContext(context.Background()) +} + +func (i *DataProvider) ToDataProviderOutputWithContext(ctx context.Context) DataProviderOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataProviderOutput) +} + +func (i *DataProvider) ToOutput(ctx context.Context) pulumix.Output[*DataProvider] { + return pulumix.Output[*DataProvider]{ + OutputState: i.ToDataProviderOutputWithContext(ctx).OutputState, + } +} + +type DataProviderOutput struct{ *pulumi.OutputState } + +func (DataProviderOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DataProvider)(nil)).Elem() +} + +func (o DataProviderOutput) ToDataProviderOutput() DataProviderOutput { + return o +} + +func (o DataProviderOutput) ToDataProviderOutputWithContext(ctx context.Context) DataProviderOutput { + return o +} + +func (o DataProviderOutput) ToOutput(ctx context.Context) pulumix.Output[*DataProvider] { + return pulumix.Output[*DataProvider]{ + OutputState: o.OutputState, + } +} + +// The data provider ARN. +func (o DataProviderOutput) DataProviderArn() pulumi.StringOutput { + return o.ApplyT(func(v *DataProvider) pulumi.StringOutput { return v.DataProviderArn }).(pulumi.StringOutput) +} + +// The data provider creation time. +func (o DataProviderOutput) DataProviderCreationTime() pulumi.StringOutput { + return o.ApplyT(func(v *DataProvider) pulumi.StringOutput { return v.DataProviderCreationTime }).(pulumi.StringOutput) +} + +// The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn +func (o DataProviderOutput) DataProviderIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataProvider) pulumi.StringPtrOutput { return v.DataProviderIdentifier }).(pulumi.StringPtrOutput) +} + +// The property describes a name to identify the data provider. +func (o DataProviderOutput) DataProviderName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataProvider) pulumi.StringPtrOutput { return v.DataProviderName }).(pulumi.StringPtrOutput) +} + +// The optional description of the data provider. +func (o DataProviderOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DataProvider) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// The property describes a data engine for the data provider. +func (o DataProviderOutput) Engine() DataProviderEngineOutput { + return o.ApplyT(func(v *DataProvider) DataProviderEngineOutput { return v.Engine }).(DataProviderEngineOutput) +} + +// The property describes the exact settings which can be modified +func (o DataProviderOutput) ExactSettings() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DataProvider) pulumi.BoolPtrOutput { return v.ExactSettings }).(pulumi.BoolPtrOutput) +} + +// The property identifies the exact type of settings for the data provider. +func (o DataProviderOutput) Settings() pulumi.AnyOutput { + return o.ApplyT(func(v *DataProvider) pulumi.AnyOutput { return v.Settings }).(pulumi.AnyOutput) +} + +// An array of key-value pairs to apply to this resource. +func (o DataProviderOutput) Tags() DataProviderTagArrayOutput { + return o.ApplyT(func(v *DataProvider) DataProviderTagArrayOutput { return v.Tags }).(DataProviderTagArrayOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*DataProviderInput)(nil)).Elem(), &DataProvider{}) + pulumi.RegisterOutputType(DataProviderOutput{}) +} diff --git a/sdk/go/aws/dms/getDataProvider.go b/sdk/go/aws/dms/getDataProvider.go new file mode 100644 index 0000000000..e19236f847 --- /dev/null +++ b/sdk/go/aws/dms/getDataProvider.go @@ -0,0 +1,127 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package dms + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::DMS::DataProvider +func LookupDataProvider(ctx *pulumi.Context, args *LookupDataProviderArgs, opts ...pulumi.InvokeOption) (*LookupDataProviderResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupDataProviderResult + err := ctx.Invoke("aws-native:dms:getDataProvider", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupDataProviderArgs struct { + // The data provider ARN. + DataProviderArn string `pulumi:"dataProviderArn"` +} + +type LookupDataProviderResult struct { + // The data provider ARN. + DataProviderArn *string `pulumi:"dataProviderArn"` + // The data provider creation time. + DataProviderCreationTime *string `pulumi:"dataProviderCreationTime"` + // The property describes a name to identify the data provider. + DataProviderName *string `pulumi:"dataProviderName"` + // The optional description of the data provider. + Description *string `pulumi:"description"` + // The property describes a data engine for the data provider. + Engine *DataProviderEngine `pulumi:"engine"` + // The property identifies the exact type of settings for the data provider. + Settings interface{} `pulumi:"settings"` + // An array of key-value pairs to apply to this resource. + Tags []DataProviderTag `pulumi:"tags"` +} + +func LookupDataProviderOutput(ctx *pulumi.Context, args LookupDataProviderOutputArgs, opts ...pulumi.InvokeOption) LookupDataProviderResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupDataProviderResult, error) { + args := v.(LookupDataProviderArgs) + r, err := LookupDataProvider(ctx, &args, opts...) + var s LookupDataProviderResult + if r != nil { + s = *r + } + return s, err + }).(LookupDataProviderResultOutput) +} + +type LookupDataProviderOutputArgs struct { + // The data provider ARN. + DataProviderArn pulumi.StringInput `pulumi:"dataProviderArn"` +} + +func (LookupDataProviderOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDataProviderArgs)(nil)).Elem() +} + +type LookupDataProviderResultOutput struct{ *pulumi.OutputState } + +func (LookupDataProviderResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupDataProviderResult)(nil)).Elem() +} + +func (o LookupDataProviderResultOutput) ToLookupDataProviderResultOutput() LookupDataProviderResultOutput { + return o +} + +func (o LookupDataProviderResultOutput) ToLookupDataProviderResultOutputWithContext(ctx context.Context) LookupDataProviderResultOutput { + return o +} + +func (o LookupDataProviderResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupDataProviderResult] { + return pulumix.Output[LookupDataProviderResult]{ + OutputState: o.OutputState, + } +} + +// The data provider ARN. +func (o LookupDataProviderResultOutput) DataProviderArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDataProviderResult) *string { return v.DataProviderArn }).(pulumi.StringPtrOutput) +} + +// The data provider creation time. +func (o LookupDataProviderResultOutput) DataProviderCreationTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDataProviderResult) *string { return v.DataProviderCreationTime }).(pulumi.StringPtrOutput) +} + +// The property describes a name to identify the data provider. +func (o LookupDataProviderResultOutput) DataProviderName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDataProviderResult) *string { return v.DataProviderName }).(pulumi.StringPtrOutput) +} + +// The optional description of the data provider. +func (o LookupDataProviderResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDataProviderResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// The property describes a data engine for the data provider. +func (o LookupDataProviderResultOutput) Engine() DataProviderEnginePtrOutput { + return o.ApplyT(func(v LookupDataProviderResult) *DataProviderEngine { return v.Engine }).(DataProviderEnginePtrOutput) +} + +// The property identifies the exact type of settings for the data provider. +func (o LookupDataProviderResultOutput) Settings() pulumi.AnyOutput { + return o.ApplyT(func(v LookupDataProviderResult) interface{} { return v.Settings }).(pulumi.AnyOutput) +} + +// An array of key-value pairs to apply to this resource. +func (o LookupDataProviderResultOutput) Tags() DataProviderTagArrayOutput { + return o.ApplyT(func(v LookupDataProviderResult) []DataProviderTag { return v.Tags }).(DataProviderTagArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupDataProviderResultOutput{}) +} diff --git a/sdk/go/aws/dms/getInstanceProfile.go b/sdk/go/aws/dms/getInstanceProfile.go new file mode 100644 index 0000000000..443b63798f --- /dev/null +++ b/sdk/go/aws/dms/getInstanceProfile.go @@ -0,0 +1,155 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package dms + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::DMS::InstanceProfile. +func LookupInstanceProfile(ctx *pulumi.Context, args *LookupInstanceProfileArgs, opts ...pulumi.InvokeOption) (*LookupInstanceProfileResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupInstanceProfileResult + err := ctx.Invoke("aws-native:dms:getInstanceProfile", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupInstanceProfileArgs struct { + // The property describes an ARN of the instance profile. + InstanceProfileArn string `pulumi:"instanceProfileArn"` +} + +type LookupInstanceProfileResult struct { + // The property describes an availability zone of the instance profile. + AvailabilityZone *string `pulumi:"availabilityZone"` + // The optional description of the instance profile. + Description *string `pulumi:"description"` + // The property describes an ARN of the instance profile. + InstanceProfileArn *string `pulumi:"instanceProfileArn"` + // The property describes a creating time of the instance profile. + InstanceProfileCreationTime *string `pulumi:"instanceProfileCreationTime"` + // The property describes a name for the instance profile. + InstanceProfileName *string `pulumi:"instanceProfileName"` + // The property describes kms key arn for the instance profile. + KmsKeyArn *string `pulumi:"kmsKeyArn"` + // The property describes a network type for the instance profile. + NetworkType *InstanceProfileNetworkType `pulumi:"networkType"` + // The property describes the publicly accessible of the instance profile + PubliclyAccessible *bool `pulumi:"publiclyAccessible"` + // The property describes a subnet group identifier for the instance profile. + SubnetGroupIdentifier *string `pulumi:"subnetGroupIdentifier"` + // An array of key-value pairs to apply to this resource. + Tags []InstanceProfileTag `pulumi:"tags"` + // The property describes vps security groups for the instance profile. + VpcSecurityGroups []string `pulumi:"vpcSecurityGroups"` +} + +func LookupInstanceProfileOutput(ctx *pulumi.Context, args LookupInstanceProfileOutputArgs, opts ...pulumi.InvokeOption) LookupInstanceProfileResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupInstanceProfileResult, error) { + args := v.(LookupInstanceProfileArgs) + r, err := LookupInstanceProfile(ctx, &args, opts...) + var s LookupInstanceProfileResult + if r != nil { + s = *r + } + return s, err + }).(LookupInstanceProfileResultOutput) +} + +type LookupInstanceProfileOutputArgs struct { + // The property describes an ARN of the instance profile. + InstanceProfileArn pulumi.StringInput `pulumi:"instanceProfileArn"` +} + +func (LookupInstanceProfileOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupInstanceProfileArgs)(nil)).Elem() +} + +type LookupInstanceProfileResultOutput struct{ *pulumi.OutputState } + +func (LookupInstanceProfileResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupInstanceProfileResult)(nil)).Elem() +} + +func (o LookupInstanceProfileResultOutput) ToLookupInstanceProfileResultOutput() LookupInstanceProfileResultOutput { + return o +} + +func (o LookupInstanceProfileResultOutput) ToLookupInstanceProfileResultOutputWithContext(ctx context.Context) LookupInstanceProfileResultOutput { + return o +} + +func (o LookupInstanceProfileResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupInstanceProfileResult] { + return pulumix.Output[LookupInstanceProfileResult]{ + OutputState: o.OutputState, + } +} + +// The property describes an availability zone of the instance profile. +func (o LookupInstanceProfileResultOutput) AvailabilityZone() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *string { return v.AvailabilityZone }).(pulumi.StringPtrOutput) +} + +// The optional description of the instance profile. +func (o LookupInstanceProfileResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// The property describes an ARN of the instance profile. +func (o LookupInstanceProfileResultOutput) InstanceProfileArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *string { return v.InstanceProfileArn }).(pulumi.StringPtrOutput) +} + +// The property describes a creating time of the instance profile. +func (o LookupInstanceProfileResultOutput) InstanceProfileCreationTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *string { return v.InstanceProfileCreationTime }).(pulumi.StringPtrOutput) +} + +// The property describes a name for the instance profile. +func (o LookupInstanceProfileResultOutput) InstanceProfileName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *string { return v.InstanceProfileName }).(pulumi.StringPtrOutput) +} + +// The property describes kms key arn for the instance profile. +func (o LookupInstanceProfileResultOutput) KmsKeyArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *string { return v.KmsKeyArn }).(pulumi.StringPtrOutput) +} + +// The property describes a network type for the instance profile. +func (o LookupInstanceProfileResultOutput) NetworkType() InstanceProfileNetworkTypePtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *InstanceProfileNetworkType { return v.NetworkType }).(InstanceProfileNetworkTypePtrOutput) +} + +// The property describes the publicly accessible of the instance profile +func (o LookupInstanceProfileResultOutput) PubliclyAccessible() pulumi.BoolPtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *bool { return v.PubliclyAccessible }).(pulumi.BoolPtrOutput) +} + +// The property describes a subnet group identifier for the instance profile. +func (o LookupInstanceProfileResultOutput) SubnetGroupIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) *string { return v.SubnetGroupIdentifier }).(pulumi.StringPtrOutput) +} + +// An array of key-value pairs to apply to this resource. +func (o LookupInstanceProfileResultOutput) Tags() InstanceProfileTagArrayOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) []InstanceProfileTag { return v.Tags }).(InstanceProfileTagArrayOutput) +} + +// The property describes vps security groups for the instance profile. +func (o LookupInstanceProfileResultOutput) VpcSecurityGroups() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupInstanceProfileResult) []string { return v.VpcSecurityGroups }).(pulumi.StringArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupInstanceProfileResultOutput{}) +} diff --git a/sdk/go/aws/dms/getMigrationProject.go b/sdk/go/aws/dms/getMigrationProject.go new file mode 100644 index 0000000000..9ad767f18a --- /dev/null +++ b/sdk/go/aws/dms/getMigrationProject.go @@ -0,0 +1,161 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package dms + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::DMS::MigrationProject +func LookupMigrationProject(ctx *pulumi.Context, args *LookupMigrationProjectArgs, opts ...pulumi.InvokeOption) (*LookupMigrationProjectResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupMigrationProjectResult + err := ctx.Invoke("aws-native:dms:getMigrationProject", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupMigrationProjectArgs struct { + // The property describes an ARN of the migration project. + MigrationProjectArn string `pulumi:"migrationProjectArn"` +} + +type LookupMigrationProjectResult struct { + // The optional description of the migration project. + Description *string `pulumi:"description"` + // The property describes an instance profile arn for the migration project. For read + InstanceProfileArn *string `pulumi:"instanceProfileArn"` + // The property describes an instance profile name for the migration project. For read + InstanceProfileName *string `pulumi:"instanceProfileName"` + // The property describes an ARN of the migration project. + MigrationProjectArn *string `pulumi:"migrationProjectArn"` + // The property describes a creating time of the migration project. + MigrationProjectCreationTime *string `pulumi:"migrationProjectCreationTime"` + // The property describes a name to identify the migration project. + MigrationProjectName *string `pulumi:"migrationProjectName"` + // The property describes schema conversion application attributes for the migration project. + SchemaConversionApplicationAttributes *SchemaConversionApplicationAttributesProperties `pulumi:"schemaConversionApplicationAttributes"` + // The property describes source data provider descriptors for the migration project. + SourceDataProviderDescriptors []MigrationProjectDataProviderDescriptor `pulumi:"sourceDataProviderDescriptors"` + // An array of key-value pairs to apply to this resource. + Tags []MigrationProjectTag `pulumi:"tags"` + // The property describes target data provider descriptors for the migration project. + TargetDataProviderDescriptors []MigrationProjectDataProviderDescriptor `pulumi:"targetDataProviderDescriptors"` + // The property describes transformation rules for the migration project. + TransformationRules *string `pulumi:"transformationRules"` +} + +func LookupMigrationProjectOutput(ctx *pulumi.Context, args LookupMigrationProjectOutputArgs, opts ...pulumi.InvokeOption) LookupMigrationProjectResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupMigrationProjectResult, error) { + args := v.(LookupMigrationProjectArgs) + r, err := LookupMigrationProject(ctx, &args, opts...) + var s LookupMigrationProjectResult + if r != nil { + s = *r + } + return s, err + }).(LookupMigrationProjectResultOutput) +} + +type LookupMigrationProjectOutputArgs struct { + // The property describes an ARN of the migration project. + MigrationProjectArn pulumi.StringInput `pulumi:"migrationProjectArn"` +} + +func (LookupMigrationProjectOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupMigrationProjectArgs)(nil)).Elem() +} + +type LookupMigrationProjectResultOutput struct{ *pulumi.OutputState } + +func (LookupMigrationProjectResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupMigrationProjectResult)(nil)).Elem() +} + +func (o LookupMigrationProjectResultOutput) ToLookupMigrationProjectResultOutput() LookupMigrationProjectResultOutput { + return o +} + +func (o LookupMigrationProjectResultOutput) ToLookupMigrationProjectResultOutputWithContext(ctx context.Context) LookupMigrationProjectResultOutput { + return o +} + +func (o LookupMigrationProjectResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupMigrationProjectResult] { + return pulumix.Output[LookupMigrationProjectResult]{ + OutputState: o.OutputState, + } +} + +// The optional description of the migration project. +func (o LookupMigrationProjectResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +// The property describes an instance profile arn for the migration project. For read +func (o LookupMigrationProjectResultOutput) InstanceProfileArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) *string { return v.InstanceProfileArn }).(pulumi.StringPtrOutput) +} + +// The property describes an instance profile name for the migration project. For read +func (o LookupMigrationProjectResultOutput) InstanceProfileName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) *string { return v.InstanceProfileName }).(pulumi.StringPtrOutput) +} + +// The property describes an ARN of the migration project. +func (o LookupMigrationProjectResultOutput) MigrationProjectArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) *string { return v.MigrationProjectArn }).(pulumi.StringPtrOutput) +} + +// The property describes a creating time of the migration project. +func (o LookupMigrationProjectResultOutput) MigrationProjectCreationTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) *string { return v.MigrationProjectCreationTime }).(pulumi.StringPtrOutput) +} + +// The property describes a name to identify the migration project. +func (o LookupMigrationProjectResultOutput) MigrationProjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) *string { return v.MigrationProjectName }).(pulumi.StringPtrOutput) +} + +// The property describes schema conversion application attributes for the migration project. +func (o LookupMigrationProjectResultOutput) SchemaConversionApplicationAttributes() SchemaConversionApplicationAttributesPropertiesPtrOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) *SchemaConversionApplicationAttributesProperties { + return v.SchemaConversionApplicationAttributes + }).(SchemaConversionApplicationAttributesPropertiesPtrOutput) +} + +// The property describes source data provider descriptors for the migration project. +func (o LookupMigrationProjectResultOutput) SourceDataProviderDescriptors() MigrationProjectDataProviderDescriptorArrayOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) []MigrationProjectDataProviderDescriptor { + return v.SourceDataProviderDescriptors + }).(MigrationProjectDataProviderDescriptorArrayOutput) +} + +// An array of key-value pairs to apply to this resource. +func (o LookupMigrationProjectResultOutput) Tags() MigrationProjectTagArrayOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) []MigrationProjectTag { return v.Tags }).(MigrationProjectTagArrayOutput) +} + +// The property describes target data provider descriptors for the migration project. +func (o LookupMigrationProjectResultOutput) TargetDataProviderDescriptors() MigrationProjectDataProviderDescriptorArrayOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) []MigrationProjectDataProviderDescriptor { + return v.TargetDataProviderDescriptors + }).(MigrationProjectDataProviderDescriptorArrayOutput) +} + +// The property describes transformation rules for the migration project. +func (o LookupMigrationProjectResultOutput) TransformationRules() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupMigrationProjectResult) *string { return v.TransformationRules }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupMigrationProjectResultOutput{}) +} diff --git a/sdk/go/aws/dms/getReplicationConfig.go b/sdk/go/aws/dms/getReplicationConfig.go index c1f882e9f0..ecd57b2fd6 100644 --- a/sdk/go/aws/dms/getReplicationConfig.go +++ b/sdk/go/aws/dms/getReplicationConfig.go @@ -38,8 +38,6 @@ type LookupReplicationConfigResult struct { ReplicationSettings interface{} `pulumi:"replicationSettings"` // The type of AWS DMS Serverless replication to provision using this replication configuration ReplicationType *ReplicationConfigReplicationType `pulumi:"replicationType"` - // A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource - ResourceIdentifier *string `pulumi:"resourceIdentifier"` // The Amazon Resource Name (ARN) of the source endpoint for this AWS DMS Serverless replication configuration SourceEndpointArn *string `pulumi:"sourceEndpointArn"` // JSON settings for specifying supplemental data @@ -118,11 +116,6 @@ func (o LookupReplicationConfigResultOutput) ReplicationType() ReplicationConfig return o.ApplyT(func(v LookupReplicationConfigResult) *ReplicationConfigReplicationType { return v.ReplicationType }).(ReplicationConfigReplicationTypePtrOutput) } -// A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource -func (o LookupReplicationConfigResultOutput) ResourceIdentifier() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupReplicationConfigResult) *string { return v.ResourceIdentifier }).(pulumi.StringPtrOutput) -} - // The Amazon Resource Name (ARN) of the source endpoint for this AWS DMS Serverless replication configuration func (o LookupReplicationConfigResultOutput) SourceEndpointArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupReplicationConfigResult) *string { return v.SourceEndpointArn }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/dms/init.go b/sdk/go/aws/dms/init.go index 92ba1ad8ac..53336b1c4c 100644 --- a/sdk/go/aws/dms/init.go +++ b/sdk/go/aws/dms/init.go @@ -23,10 +23,16 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi switch typ { case "aws-native:dms:Certificate": r = &Certificate{} + case "aws-native:dms:DataProvider": + r = &DataProvider{} case "aws-native:dms:Endpoint": r = &Endpoint{} case "aws-native:dms:EventSubscription": r = &EventSubscription{} + case "aws-native:dms:InstanceProfile": + r = &InstanceProfile{} + case "aws-native:dms:MigrationProject": + r = &MigrationProject{} case "aws-native:dms:ReplicationConfig": r = &ReplicationConfig{} case "aws-native:dms:ReplicationInstance": diff --git a/sdk/go/aws/dms/instanceProfile.go b/sdk/go/aws/dms/instanceProfile.go new file mode 100644 index 0000000000..4f2f181d9e --- /dev/null +++ b/sdk/go/aws/dms/instanceProfile.go @@ -0,0 +1,243 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package dms + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::DMS::InstanceProfile. +type InstanceProfile struct { + pulumi.CustomResourceState + + // The property describes an availability zone of the instance profile. + AvailabilityZone pulumi.StringPtrOutput `pulumi:"availabilityZone"` + // The optional description of the instance profile. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The property describes an ARN of the instance profile. + InstanceProfileArn pulumi.StringOutput `pulumi:"instanceProfileArn"` + // The property describes a creating time of the instance profile. + InstanceProfileCreationTime pulumi.StringOutput `pulumi:"instanceProfileCreationTime"` + // The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + InstanceProfileIdentifier pulumi.StringPtrOutput `pulumi:"instanceProfileIdentifier"` + // The property describes a name for the instance profile. + InstanceProfileName pulumi.StringPtrOutput `pulumi:"instanceProfileName"` + // The property describes kms key arn for the instance profile. + KmsKeyArn pulumi.StringPtrOutput `pulumi:"kmsKeyArn"` + // The property describes a network type for the instance profile. + NetworkType InstanceProfileNetworkTypePtrOutput `pulumi:"networkType"` + // The property describes the publicly accessible of the instance profile + PubliclyAccessible pulumi.BoolPtrOutput `pulumi:"publiclyAccessible"` + // The property describes a subnet group identifier for the instance profile. + SubnetGroupIdentifier pulumi.StringPtrOutput `pulumi:"subnetGroupIdentifier"` + // An array of key-value pairs to apply to this resource. + Tags InstanceProfileTagArrayOutput `pulumi:"tags"` + // The property describes vps security groups for the instance profile. + VpcSecurityGroups pulumi.StringArrayOutput `pulumi:"vpcSecurityGroups"` +} + +// NewInstanceProfile registers a new resource with the given unique name, arguments, and options. +func NewInstanceProfile(ctx *pulumi.Context, + name string, args *InstanceProfileArgs, opts ...pulumi.ResourceOption) (*InstanceProfile, error) { + if args == nil { + args = &InstanceProfileArgs{} + } + + opts = internal.PkgResourceDefaultOpts(opts) + var resource InstanceProfile + err := ctx.RegisterResource("aws-native:dms:InstanceProfile", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetInstanceProfile gets an existing InstanceProfile 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 GetInstanceProfile(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *InstanceProfileState, opts ...pulumi.ResourceOption) (*InstanceProfile, error) { + var resource InstanceProfile + err := ctx.ReadResource("aws-native:dms:InstanceProfile", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering InstanceProfile resources. +type instanceProfileState struct { +} + +type InstanceProfileState struct { +} + +func (InstanceProfileState) ElementType() reflect.Type { + return reflect.TypeOf((*instanceProfileState)(nil)).Elem() +} + +type instanceProfileArgs struct { + // The property describes an availability zone of the instance profile. + AvailabilityZone *string `pulumi:"availabilityZone"` + // The optional description of the instance profile. + Description *string `pulumi:"description"` + // The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + InstanceProfileIdentifier *string `pulumi:"instanceProfileIdentifier"` + // The property describes a name for the instance profile. + InstanceProfileName *string `pulumi:"instanceProfileName"` + // The property describes kms key arn for the instance profile. + KmsKeyArn *string `pulumi:"kmsKeyArn"` + // The property describes a network type for the instance profile. + NetworkType *InstanceProfileNetworkType `pulumi:"networkType"` + // The property describes the publicly accessible of the instance profile + PubliclyAccessible *bool `pulumi:"publiclyAccessible"` + // The property describes a subnet group identifier for the instance profile. + SubnetGroupIdentifier *string `pulumi:"subnetGroupIdentifier"` + // An array of key-value pairs to apply to this resource. + Tags []InstanceProfileTag `pulumi:"tags"` + // The property describes vps security groups for the instance profile. + VpcSecurityGroups []string `pulumi:"vpcSecurityGroups"` +} + +// The set of arguments for constructing a InstanceProfile resource. +type InstanceProfileArgs struct { + // The property describes an availability zone of the instance profile. + AvailabilityZone pulumi.StringPtrInput + // The optional description of the instance profile. + Description pulumi.StringPtrInput + // The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + InstanceProfileIdentifier pulumi.StringPtrInput + // The property describes a name for the instance profile. + InstanceProfileName pulumi.StringPtrInput + // The property describes kms key arn for the instance profile. + KmsKeyArn pulumi.StringPtrInput + // The property describes a network type for the instance profile. + NetworkType InstanceProfileNetworkTypePtrInput + // The property describes the publicly accessible of the instance profile + PubliclyAccessible pulumi.BoolPtrInput + // The property describes a subnet group identifier for the instance profile. + SubnetGroupIdentifier pulumi.StringPtrInput + // An array of key-value pairs to apply to this resource. + Tags InstanceProfileTagArrayInput + // The property describes vps security groups for the instance profile. + VpcSecurityGroups pulumi.StringArrayInput +} + +func (InstanceProfileArgs) ElementType() reflect.Type { + return reflect.TypeOf((*instanceProfileArgs)(nil)).Elem() +} + +type InstanceProfileInput interface { + pulumi.Input + + ToInstanceProfileOutput() InstanceProfileOutput + ToInstanceProfileOutputWithContext(ctx context.Context) InstanceProfileOutput +} + +func (*InstanceProfile) ElementType() reflect.Type { + return reflect.TypeOf((**InstanceProfile)(nil)).Elem() +} + +func (i *InstanceProfile) ToInstanceProfileOutput() InstanceProfileOutput { + return i.ToInstanceProfileOutputWithContext(context.Background()) +} + +func (i *InstanceProfile) ToInstanceProfileOutputWithContext(ctx context.Context) InstanceProfileOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceProfileOutput) +} + +func (i *InstanceProfile) ToOutput(ctx context.Context) pulumix.Output[*InstanceProfile] { + return pulumix.Output[*InstanceProfile]{ + OutputState: i.ToInstanceProfileOutputWithContext(ctx).OutputState, + } +} + +type InstanceProfileOutput struct{ *pulumi.OutputState } + +func (InstanceProfileOutput) ElementType() reflect.Type { + return reflect.TypeOf((**InstanceProfile)(nil)).Elem() +} + +func (o InstanceProfileOutput) ToInstanceProfileOutput() InstanceProfileOutput { + return o +} + +func (o InstanceProfileOutput) ToInstanceProfileOutputWithContext(ctx context.Context) InstanceProfileOutput { + return o +} + +func (o InstanceProfileOutput) ToOutput(ctx context.Context) pulumix.Output[*InstanceProfile] { + return pulumix.Output[*InstanceProfile]{ + OutputState: o.OutputState, + } +} + +// The property describes an availability zone of the instance profile. +func (o InstanceProfileOutput) AvailabilityZone() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringPtrOutput { return v.AvailabilityZone }).(pulumi.StringPtrOutput) +} + +// The optional description of the instance profile. +func (o InstanceProfileOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// The property describes an ARN of the instance profile. +func (o InstanceProfileOutput) InstanceProfileArn() pulumi.StringOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringOutput { return v.InstanceProfileArn }).(pulumi.StringOutput) +} + +// The property describes a creating time of the instance profile. +func (o InstanceProfileOutput) InstanceProfileCreationTime() pulumi.StringOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringOutput { return v.InstanceProfileCreationTime }).(pulumi.StringOutput) +} + +// The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn +func (o InstanceProfileOutput) InstanceProfileIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringPtrOutput { return v.InstanceProfileIdentifier }).(pulumi.StringPtrOutput) +} + +// The property describes a name for the instance profile. +func (o InstanceProfileOutput) InstanceProfileName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringPtrOutput { return v.InstanceProfileName }).(pulumi.StringPtrOutput) +} + +// The property describes kms key arn for the instance profile. +func (o InstanceProfileOutput) KmsKeyArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringPtrOutput { return v.KmsKeyArn }).(pulumi.StringPtrOutput) +} + +// The property describes a network type for the instance profile. +func (o InstanceProfileOutput) NetworkType() InstanceProfileNetworkTypePtrOutput { + return o.ApplyT(func(v *InstanceProfile) InstanceProfileNetworkTypePtrOutput { return v.NetworkType }).(InstanceProfileNetworkTypePtrOutput) +} + +// The property describes the publicly accessible of the instance profile +func (o InstanceProfileOutput) PubliclyAccessible() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.BoolPtrOutput { return v.PubliclyAccessible }).(pulumi.BoolPtrOutput) +} + +// The property describes a subnet group identifier for the instance profile. +func (o InstanceProfileOutput) SubnetGroupIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringPtrOutput { return v.SubnetGroupIdentifier }).(pulumi.StringPtrOutput) +} + +// An array of key-value pairs to apply to this resource. +func (o InstanceProfileOutput) Tags() InstanceProfileTagArrayOutput { + return o.ApplyT(func(v *InstanceProfile) InstanceProfileTagArrayOutput { return v.Tags }).(InstanceProfileTagArrayOutput) +} + +// The property describes vps security groups for the instance profile. +func (o InstanceProfileOutput) VpcSecurityGroups() pulumi.StringArrayOutput { + return o.ApplyT(func(v *InstanceProfile) pulumi.StringArrayOutput { return v.VpcSecurityGroups }).(pulumi.StringArrayOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*InstanceProfileInput)(nil)).Elem(), &InstanceProfile{}) + pulumi.RegisterOutputType(InstanceProfileOutput{}) +} diff --git a/sdk/go/aws/dms/migrationProject.go b/sdk/go/aws/dms/migrationProject.go new file mode 100644 index 0000000000..2c47e4a66b --- /dev/null +++ b/sdk/go/aws/dms/migrationProject.go @@ -0,0 +1,264 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package dms + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::DMS::MigrationProject +type MigrationProject struct { + pulumi.CustomResourceState + + // The optional description of the migration project. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The property describes an instance profile arn for the migration project. For read + InstanceProfileArn pulumi.StringPtrOutput `pulumi:"instanceProfileArn"` + // The property describes an instance profile identifier for the migration project. For create + InstanceProfileIdentifier pulumi.StringPtrOutput `pulumi:"instanceProfileIdentifier"` + // The property describes an instance profile name for the migration project. For read + InstanceProfileName pulumi.StringPtrOutput `pulumi:"instanceProfileName"` + // The property describes an ARN of the migration project. + MigrationProjectArn pulumi.StringOutput `pulumi:"migrationProjectArn"` + // The property describes a creating time of the migration project. + MigrationProjectCreationTime pulumi.StringPtrOutput `pulumi:"migrationProjectCreationTime"` + // The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + MigrationProjectIdentifier pulumi.StringPtrOutput `pulumi:"migrationProjectIdentifier"` + // The property describes a name to identify the migration project. + MigrationProjectName pulumi.StringPtrOutput `pulumi:"migrationProjectName"` + // The property describes schema conversion application attributes for the migration project. + SchemaConversionApplicationAttributes SchemaConversionApplicationAttributesPropertiesPtrOutput `pulumi:"schemaConversionApplicationAttributes"` + // The property describes source data provider descriptors for the migration project. + SourceDataProviderDescriptors MigrationProjectDataProviderDescriptorArrayOutput `pulumi:"sourceDataProviderDescriptors"` + // An array of key-value pairs to apply to this resource. + Tags MigrationProjectTagArrayOutput `pulumi:"tags"` + // The property describes target data provider descriptors for the migration project. + TargetDataProviderDescriptors MigrationProjectDataProviderDescriptorArrayOutput `pulumi:"targetDataProviderDescriptors"` + // The property describes transformation rules for the migration project. + TransformationRules pulumi.StringPtrOutput `pulumi:"transformationRules"` +} + +// NewMigrationProject registers a new resource with the given unique name, arguments, and options. +func NewMigrationProject(ctx *pulumi.Context, + name string, args *MigrationProjectArgs, opts ...pulumi.ResourceOption) (*MigrationProject, error) { + if args == nil { + args = &MigrationProjectArgs{} + } + + opts = internal.PkgResourceDefaultOpts(opts) + var resource MigrationProject + err := ctx.RegisterResource("aws-native:dms:MigrationProject", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetMigrationProject gets an existing MigrationProject 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 GetMigrationProject(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *MigrationProjectState, opts ...pulumi.ResourceOption) (*MigrationProject, error) { + var resource MigrationProject + err := ctx.ReadResource("aws-native:dms:MigrationProject", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering MigrationProject resources. +type migrationProjectState struct { +} + +type MigrationProjectState struct { +} + +func (MigrationProjectState) ElementType() reflect.Type { + return reflect.TypeOf((*migrationProjectState)(nil)).Elem() +} + +type migrationProjectArgs struct { + // The optional description of the migration project. + Description *string `pulumi:"description"` + // The property describes an instance profile arn for the migration project. For read + InstanceProfileArn *string `pulumi:"instanceProfileArn"` + // The property describes an instance profile identifier for the migration project. For create + InstanceProfileIdentifier *string `pulumi:"instanceProfileIdentifier"` + // The property describes an instance profile name for the migration project. For read + InstanceProfileName *string `pulumi:"instanceProfileName"` + // The property describes a creating time of the migration project. + MigrationProjectCreationTime *string `pulumi:"migrationProjectCreationTime"` + // The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + MigrationProjectIdentifier *string `pulumi:"migrationProjectIdentifier"` + // The property describes a name to identify the migration project. + MigrationProjectName *string `pulumi:"migrationProjectName"` + // The property describes schema conversion application attributes for the migration project. + SchemaConversionApplicationAttributes *SchemaConversionApplicationAttributesProperties `pulumi:"schemaConversionApplicationAttributes"` + // The property describes source data provider descriptors for the migration project. + SourceDataProviderDescriptors []MigrationProjectDataProviderDescriptor `pulumi:"sourceDataProviderDescriptors"` + // An array of key-value pairs to apply to this resource. + Tags []MigrationProjectTag `pulumi:"tags"` + // The property describes target data provider descriptors for the migration project. + TargetDataProviderDescriptors []MigrationProjectDataProviderDescriptor `pulumi:"targetDataProviderDescriptors"` + // The property describes transformation rules for the migration project. + TransformationRules *string `pulumi:"transformationRules"` +} + +// The set of arguments for constructing a MigrationProject resource. +type MigrationProjectArgs struct { + // The optional description of the migration project. + Description pulumi.StringPtrInput + // The property describes an instance profile arn for the migration project. For read + InstanceProfileArn pulumi.StringPtrInput + // The property describes an instance profile identifier for the migration project. For create + InstanceProfileIdentifier pulumi.StringPtrInput + // The property describes an instance profile name for the migration project. For read + InstanceProfileName pulumi.StringPtrInput + // The property describes a creating time of the migration project. + MigrationProjectCreationTime pulumi.StringPtrInput + // The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + MigrationProjectIdentifier pulumi.StringPtrInput + // The property describes a name to identify the migration project. + MigrationProjectName pulumi.StringPtrInput + // The property describes schema conversion application attributes for the migration project. + SchemaConversionApplicationAttributes SchemaConversionApplicationAttributesPropertiesPtrInput + // The property describes source data provider descriptors for the migration project. + SourceDataProviderDescriptors MigrationProjectDataProviderDescriptorArrayInput + // An array of key-value pairs to apply to this resource. + Tags MigrationProjectTagArrayInput + // The property describes target data provider descriptors for the migration project. + TargetDataProviderDescriptors MigrationProjectDataProviderDescriptorArrayInput + // The property describes transformation rules for the migration project. + TransformationRules pulumi.StringPtrInput +} + +func (MigrationProjectArgs) ElementType() reflect.Type { + return reflect.TypeOf((*migrationProjectArgs)(nil)).Elem() +} + +type MigrationProjectInput interface { + pulumi.Input + + ToMigrationProjectOutput() MigrationProjectOutput + ToMigrationProjectOutputWithContext(ctx context.Context) MigrationProjectOutput +} + +func (*MigrationProject) ElementType() reflect.Type { + return reflect.TypeOf((**MigrationProject)(nil)).Elem() +} + +func (i *MigrationProject) ToMigrationProjectOutput() MigrationProjectOutput { + return i.ToMigrationProjectOutputWithContext(context.Background()) +} + +func (i *MigrationProject) ToMigrationProjectOutputWithContext(ctx context.Context) MigrationProjectOutput { + return pulumi.ToOutputWithContext(ctx, i).(MigrationProjectOutput) +} + +func (i *MigrationProject) ToOutput(ctx context.Context) pulumix.Output[*MigrationProject] { + return pulumix.Output[*MigrationProject]{ + OutputState: i.ToMigrationProjectOutputWithContext(ctx).OutputState, + } +} + +type MigrationProjectOutput struct{ *pulumi.OutputState } + +func (MigrationProjectOutput) ElementType() reflect.Type { + return reflect.TypeOf((**MigrationProject)(nil)).Elem() +} + +func (o MigrationProjectOutput) ToMigrationProjectOutput() MigrationProjectOutput { + return o +} + +func (o MigrationProjectOutput) ToMigrationProjectOutputWithContext(ctx context.Context) MigrationProjectOutput { + return o +} + +func (o MigrationProjectOutput) ToOutput(ctx context.Context) pulumix.Output[*MigrationProject] { + return pulumix.Output[*MigrationProject]{ + OutputState: o.OutputState, + } +} + +// The optional description of the migration project. +func (o MigrationProjectOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// The property describes an instance profile arn for the migration project. For read +func (o MigrationProjectOutput) InstanceProfileArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringPtrOutput { return v.InstanceProfileArn }).(pulumi.StringPtrOutput) +} + +// The property describes an instance profile identifier for the migration project. For create +func (o MigrationProjectOutput) InstanceProfileIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringPtrOutput { return v.InstanceProfileIdentifier }).(pulumi.StringPtrOutput) +} + +// The property describes an instance profile name for the migration project. For read +func (o MigrationProjectOutput) InstanceProfileName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringPtrOutput { return v.InstanceProfileName }).(pulumi.StringPtrOutput) +} + +// The property describes an ARN of the migration project. +func (o MigrationProjectOutput) MigrationProjectArn() pulumi.StringOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringOutput { return v.MigrationProjectArn }).(pulumi.StringOutput) +} + +// The property describes a creating time of the migration project. +func (o MigrationProjectOutput) MigrationProjectCreationTime() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringPtrOutput { return v.MigrationProjectCreationTime }).(pulumi.StringPtrOutput) +} + +// The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn +func (o MigrationProjectOutput) MigrationProjectIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringPtrOutput { return v.MigrationProjectIdentifier }).(pulumi.StringPtrOutput) +} + +// The property describes a name to identify the migration project. +func (o MigrationProjectOutput) MigrationProjectName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringPtrOutput { return v.MigrationProjectName }).(pulumi.StringPtrOutput) +} + +// The property describes schema conversion application attributes for the migration project. +func (o MigrationProjectOutput) SchemaConversionApplicationAttributes() SchemaConversionApplicationAttributesPropertiesPtrOutput { + return o.ApplyT(func(v *MigrationProject) SchemaConversionApplicationAttributesPropertiesPtrOutput { + return v.SchemaConversionApplicationAttributes + }).(SchemaConversionApplicationAttributesPropertiesPtrOutput) +} + +// The property describes source data provider descriptors for the migration project. +func (o MigrationProjectOutput) SourceDataProviderDescriptors() MigrationProjectDataProviderDescriptorArrayOutput { + return o.ApplyT(func(v *MigrationProject) MigrationProjectDataProviderDescriptorArrayOutput { + return v.SourceDataProviderDescriptors + }).(MigrationProjectDataProviderDescriptorArrayOutput) +} + +// An array of key-value pairs to apply to this resource. +func (o MigrationProjectOutput) Tags() MigrationProjectTagArrayOutput { + return o.ApplyT(func(v *MigrationProject) MigrationProjectTagArrayOutput { return v.Tags }).(MigrationProjectTagArrayOutput) +} + +// The property describes target data provider descriptors for the migration project. +func (o MigrationProjectOutput) TargetDataProviderDescriptors() MigrationProjectDataProviderDescriptorArrayOutput { + return o.ApplyT(func(v *MigrationProject) MigrationProjectDataProviderDescriptorArrayOutput { + return v.TargetDataProviderDescriptors + }).(MigrationProjectDataProviderDescriptorArrayOutput) +} + +// The property describes transformation rules for the migration project. +func (o MigrationProjectOutput) TransformationRules() pulumi.StringPtrOutput { + return o.ApplyT(func(v *MigrationProject) pulumi.StringPtrOutput { return v.TransformationRules }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*MigrationProjectInput)(nil)).Elem(), &MigrationProject{}) + pulumi.RegisterOutputType(MigrationProjectOutput{}) +} diff --git a/sdk/go/aws/dms/pulumiEnums.go b/sdk/go/aws/dms/pulumiEnums.go index 7b8eaad65c..7e1a26c23d 100644 --- a/sdk/go/aws/dms/pulumiEnums.go +++ b/sdk/go/aws/dms/pulumiEnums.go @@ -11,6 +11,386 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) +type DataProviderDmsSslModeValue string + +const ( + DataProviderDmsSslModeValueNone = DataProviderDmsSslModeValue("none") + DataProviderDmsSslModeValueRequire = DataProviderDmsSslModeValue("require") + DataProviderDmsSslModeValueVerifyCa = DataProviderDmsSslModeValue("verify_ca") + DataProviderDmsSslModeValueVerifyFull = DataProviderDmsSslModeValue("verify_full") +) + +// The property describes a data engine for the data provider. +type DataProviderEngine string + +const ( + DataProviderEnginePostgresql = DataProviderEngine("postgresql") + DataProviderEngineMysql = DataProviderEngine("mysql") + DataProviderEngineOracle = DataProviderEngine("oracle") + DataProviderEngineSqlserver = DataProviderEngine("sqlserver") + DataProviderEngineAurora = DataProviderEngine("aurora") + DataProviderEngineAuroraPostgresql = DataProviderEngine("aurora_postgresql") +) + +func (DataProviderEngine) ElementType() reflect.Type { + return reflect.TypeOf((*DataProviderEngine)(nil)).Elem() +} + +func (e DataProviderEngine) ToDataProviderEngineOutput() DataProviderEngineOutput { + return pulumi.ToOutput(e).(DataProviderEngineOutput) +} + +func (e DataProviderEngine) ToDataProviderEngineOutputWithContext(ctx context.Context) DataProviderEngineOutput { + return pulumi.ToOutputWithContext(ctx, e).(DataProviderEngineOutput) +} + +func (e DataProviderEngine) ToDataProviderEnginePtrOutput() DataProviderEnginePtrOutput { + return e.ToDataProviderEnginePtrOutputWithContext(context.Background()) +} + +func (e DataProviderEngine) ToDataProviderEnginePtrOutputWithContext(ctx context.Context) DataProviderEnginePtrOutput { + return DataProviderEngine(e).ToDataProviderEngineOutputWithContext(ctx).ToDataProviderEnginePtrOutputWithContext(ctx) +} + +func (e DataProviderEngine) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DataProviderEngine) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DataProviderEngine) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DataProviderEngine) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DataProviderEngineOutput struct{ *pulumi.OutputState } + +func (DataProviderEngineOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DataProviderEngine)(nil)).Elem() +} + +func (o DataProviderEngineOutput) ToDataProviderEngineOutput() DataProviderEngineOutput { + return o +} + +func (o DataProviderEngineOutput) ToDataProviderEngineOutputWithContext(ctx context.Context) DataProviderEngineOutput { + return o +} + +func (o DataProviderEngineOutput) ToDataProviderEnginePtrOutput() DataProviderEnginePtrOutput { + return o.ToDataProviderEnginePtrOutputWithContext(context.Background()) +} + +func (o DataProviderEngineOutput) ToDataProviderEnginePtrOutputWithContext(ctx context.Context) DataProviderEnginePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DataProviderEngine) *DataProviderEngine { + return &v + }).(DataProviderEnginePtrOutput) +} + +func (o DataProviderEngineOutput) ToOutput(ctx context.Context) pulumix.Output[DataProviderEngine] { + return pulumix.Output[DataProviderEngine]{ + OutputState: o.OutputState, + } +} + +func (o DataProviderEngineOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DataProviderEngineOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DataProviderEngine) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DataProviderEngineOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DataProviderEngineOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DataProviderEngine) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DataProviderEnginePtrOutput struct{ *pulumi.OutputState } + +func (DataProviderEnginePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DataProviderEngine)(nil)).Elem() +} + +func (o DataProviderEnginePtrOutput) ToDataProviderEnginePtrOutput() DataProviderEnginePtrOutput { + return o +} + +func (o DataProviderEnginePtrOutput) ToDataProviderEnginePtrOutputWithContext(ctx context.Context) DataProviderEnginePtrOutput { + return o +} + +func (o DataProviderEnginePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DataProviderEngine] { + return pulumix.Output[*DataProviderEngine]{ + OutputState: o.OutputState, + } +} + +func (o DataProviderEnginePtrOutput) Elem() DataProviderEngineOutput { + return o.ApplyT(func(v *DataProviderEngine) DataProviderEngine { + if v != nil { + return *v + } + var ret DataProviderEngine + return ret + }).(DataProviderEngineOutput) +} + +func (o DataProviderEnginePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DataProviderEnginePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DataProviderEngine) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DataProviderEngineInput is an input type that accepts DataProviderEngineArgs and DataProviderEngineOutput values. +// You can construct a concrete instance of `DataProviderEngineInput` via: +// +// DataProviderEngineArgs{...} +type DataProviderEngineInput interface { + pulumi.Input + + ToDataProviderEngineOutput() DataProviderEngineOutput + ToDataProviderEngineOutputWithContext(context.Context) DataProviderEngineOutput +} + +var dataProviderEnginePtrType = reflect.TypeOf((**DataProviderEngine)(nil)).Elem() + +type DataProviderEnginePtrInput interface { + pulumi.Input + + ToDataProviderEnginePtrOutput() DataProviderEnginePtrOutput + ToDataProviderEnginePtrOutputWithContext(context.Context) DataProviderEnginePtrOutput +} + +type dataProviderEnginePtr string + +func DataProviderEnginePtr(v string) DataProviderEnginePtrInput { + return (*dataProviderEnginePtr)(&v) +} + +func (*dataProviderEnginePtr) ElementType() reflect.Type { + return dataProviderEnginePtrType +} + +func (in *dataProviderEnginePtr) ToDataProviderEnginePtrOutput() DataProviderEnginePtrOutput { + return pulumi.ToOutput(in).(DataProviderEnginePtrOutput) +} + +func (in *dataProviderEnginePtr) ToDataProviderEnginePtrOutputWithContext(ctx context.Context) DataProviderEnginePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DataProviderEnginePtrOutput) +} + +func (in *dataProviderEnginePtr) ToOutput(ctx context.Context) pulumix.Output[*DataProviderEngine] { + return pulumix.Output[*DataProviderEngine]{ + OutputState: in.ToDataProviderEnginePtrOutputWithContext(ctx).OutputState, + } +} + +// The property describes a network type for the instance profile. +type InstanceProfileNetworkType string + +const ( + InstanceProfileNetworkTypeIpv4 = InstanceProfileNetworkType("IPV4") + InstanceProfileNetworkTypeIpv6 = InstanceProfileNetworkType("IPV6") + InstanceProfileNetworkTypeDual = InstanceProfileNetworkType("DUAL") +) + +func (InstanceProfileNetworkType) ElementType() reflect.Type { + return reflect.TypeOf((*InstanceProfileNetworkType)(nil)).Elem() +} + +func (e InstanceProfileNetworkType) ToInstanceProfileNetworkTypeOutput() InstanceProfileNetworkTypeOutput { + return pulumi.ToOutput(e).(InstanceProfileNetworkTypeOutput) +} + +func (e InstanceProfileNetworkType) ToInstanceProfileNetworkTypeOutputWithContext(ctx context.Context) InstanceProfileNetworkTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(InstanceProfileNetworkTypeOutput) +} + +func (e InstanceProfileNetworkType) ToInstanceProfileNetworkTypePtrOutput() InstanceProfileNetworkTypePtrOutput { + return e.ToInstanceProfileNetworkTypePtrOutputWithContext(context.Background()) +} + +func (e InstanceProfileNetworkType) ToInstanceProfileNetworkTypePtrOutputWithContext(ctx context.Context) InstanceProfileNetworkTypePtrOutput { + return InstanceProfileNetworkType(e).ToInstanceProfileNetworkTypeOutputWithContext(ctx).ToInstanceProfileNetworkTypePtrOutputWithContext(ctx) +} + +func (e InstanceProfileNetworkType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e InstanceProfileNetworkType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e InstanceProfileNetworkType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e InstanceProfileNetworkType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type InstanceProfileNetworkTypeOutput struct{ *pulumi.OutputState } + +func (InstanceProfileNetworkTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*InstanceProfileNetworkType)(nil)).Elem() +} + +func (o InstanceProfileNetworkTypeOutput) ToInstanceProfileNetworkTypeOutput() InstanceProfileNetworkTypeOutput { + return o +} + +func (o InstanceProfileNetworkTypeOutput) ToInstanceProfileNetworkTypeOutputWithContext(ctx context.Context) InstanceProfileNetworkTypeOutput { + return o +} + +func (o InstanceProfileNetworkTypeOutput) ToInstanceProfileNetworkTypePtrOutput() InstanceProfileNetworkTypePtrOutput { + return o.ToInstanceProfileNetworkTypePtrOutputWithContext(context.Background()) +} + +func (o InstanceProfileNetworkTypeOutput) ToInstanceProfileNetworkTypePtrOutputWithContext(ctx context.Context) InstanceProfileNetworkTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v InstanceProfileNetworkType) *InstanceProfileNetworkType { + return &v + }).(InstanceProfileNetworkTypePtrOutput) +} + +func (o InstanceProfileNetworkTypeOutput) ToOutput(ctx context.Context) pulumix.Output[InstanceProfileNetworkType] { + return pulumix.Output[InstanceProfileNetworkType]{ + OutputState: o.OutputState, + } +} + +func (o InstanceProfileNetworkTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o InstanceProfileNetworkTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e InstanceProfileNetworkType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o InstanceProfileNetworkTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o InstanceProfileNetworkTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e InstanceProfileNetworkType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type InstanceProfileNetworkTypePtrOutput struct{ *pulumi.OutputState } + +func (InstanceProfileNetworkTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**InstanceProfileNetworkType)(nil)).Elem() +} + +func (o InstanceProfileNetworkTypePtrOutput) ToInstanceProfileNetworkTypePtrOutput() InstanceProfileNetworkTypePtrOutput { + return o +} + +func (o InstanceProfileNetworkTypePtrOutput) ToInstanceProfileNetworkTypePtrOutputWithContext(ctx context.Context) InstanceProfileNetworkTypePtrOutput { + return o +} + +func (o InstanceProfileNetworkTypePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*InstanceProfileNetworkType] { + return pulumix.Output[*InstanceProfileNetworkType]{ + OutputState: o.OutputState, + } +} + +func (o InstanceProfileNetworkTypePtrOutput) Elem() InstanceProfileNetworkTypeOutput { + return o.ApplyT(func(v *InstanceProfileNetworkType) InstanceProfileNetworkType { + if v != nil { + return *v + } + var ret InstanceProfileNetworkType + return ret + }).(InstanceProfileNetworkTypeOutput) +} + +func (o InstanceProfileNetworkTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o InstanceProfileNetworkTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *InstanceProfileNetworkType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// InstanceProfileNetworkTypeInput is an input type that accepts InstanceProfileNetworkTypeArgs and InstanceProfileNetworkTypeOutput values. +// You can construct a concrete instance of `InstanceProfileNetworkTypeInput` via: +// +// InstanceProfileNetworkTypeArgs{...} +type InstanceProfileNetworkTypeInput interface { + pulumi.Input + + ToInstanceProfileNetworkTypeOutput() InstanceProfileNetworkTypeOutput + ToInstanceProfileNetworkTypeOutputWithContext(context.Context) InstanceProfileNetworkTypeOutput +} + +var instanceProfileNetworkTypePtrType = reflect.TypeOf((**InstanceProfileNetworkType)(nil)).Elem() + +type InstanceProfileNetworkTypePtrInput interface { + pulumi.Input + + ToInstanceProfileNetworkTypePtrOutput() InstanceProfileNetworkTypePtrOutput + ToInstanceProfileNetworkTypePtrOutputWithContext(context.Context) InstanceProfileNetworkTypePtrOutput +} + +type instanceProfileNetworkTypePtr string + +func InstanceProfileNetworkTypePtr(v string) InstanceProfileNetworkTypePtrInput { + return (*instanceProfileNetworkTypePtr)(&v) +} + +func (*instanceProfileNetworkTypePtr) ElementType() reflect.Type { + return instanceProfileNetworkTypePtrType +} + +func (in *instanceProfileNetworkTypePtr) ToInstanceProfileNetworkTypePtrOutput() InstanceProfileNetworkTypePtrOutput { + return pulumi.ToOutput(in).(InstanceProfileNetworkTypePtrOutput) +} + +func (in *instanceProfileNetworkTypePtr) ToInstanceProfileNetworkTypePtrOutputWithContext(ctx context.Context) InstanceProfileNetworkTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(InstanceProfileNetworkTypePtrOutput) +} + +func (in *instanceProfileNetworkTypePtr) ToOutput(ctx context.Context) pulumix.Output[*InstanceProfileNetworkType] { + return pulumix.Output[*InstanceProfileNetworkType]{ + OutputState: in.ToInstanceProfileNetworkTypePtrOutputWithContext(ctx).OutputState, + } +} + // The type of AWS DMS Serverless replication to provision using this replication configuration type ReplicationConfigReplicationType string @@ -196,8 +576,16 @@ func (in *replicationConfigReplicationTypePtr) ToOutput(ctx context.Context) pul } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*DataProviderEngineInput)(nil)).Elem(), DataProviderEngine("postgresql")) + pulumi.RegisterInputType(reflect.TypeOf((*DataProviderEnginePtrInput)(nil)).Elem(), DataProviderEngine("postgresql")) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceProfileNetworkTypeInput)(nil)).Elem(), InstanceProfileNetworkType("IPV4")) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceProfileNetworkTypePtrInput)(nil)).Elem(), InstanceProfileNetworkType("IPV4")) pulumi.RegisterInputType(reflect.TypeOf((*ReplicationConfigReplicationTypeInput)(nil)).Elem(), ReplicationConfigReplicationType("full-load")) pulumi.RegisterInputType(reflect.TypeOf((*ReplicationConfigReplicationTypePtrInput)(nil)).Elem(), ReplicationConfigReplicationType("full-load")) + pulumi.RegisterOutputType(DataProviderEngineOutput{}) + pulumi.RegisterOutputType(DataProviderEnginePtrOutput{}) + pulumi.RegisterOutputType(InstanceProfileNetworkTypeOutput{}) + pulumi.RegisterOutputType(InstanceProfileNetworkTypePtrOutput{}) pulumi.RegisterOutputType(ReplicationConfigReplicationTypeOutput{}) pulumi.RegisterOutputType(ReplicationConfigReplicationTypePtrOutput{}) } diff --git a/sdk/go/aws/dms/pulumiTypes.go b/sdk/go/aws/dms/pulumiTypes.go index 39ba9b936b..d2960032af 100644 --- a/sdk/go/aws/dms/pulumiTypes.go +++ b/sdk/go/aws/dms/pulumiTypes.go @@ -14,6 +14,139 @@ import ( var _ = internal.GetEnvOrDefault +// A key-value pair to associate with a resource. +type DataProviderTag 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"` +} + +// DataProviderTagInput is an input type that accepts DataProviderTagArgs and DataProviderTagOutput values. +// You can construct a concrete instance of `DataProviderTagInput` via: +// +// DataProviderTagArgs{...} +type DataProviderTagInput interface { + pulumi.Input + + ToDataProviderTagOutput() DataProviderTagOutput + ToDataProviderTagOutputWithContext(context.Context) DataProviderTagOutput +} + +// A key-value pair to associate with a resource. +type DataProviderTagArgs 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 (DataProviderTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DataProviderTag)(nil)).Elem() +} + +func (i DataProviderTagArgs) ToDataProviderTagOutput() DataProviderTagOutput { + return i.ToDataProviderTagOutputWithContext(context.Background()) +} + +func (i DataProviderTagArgs) ToDataProviderTagOutputWithContext(ctx context.Context) DataProviderTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataProviderTagOutput) +} + +func (i DataProviderTagArgs) ToOutput(ctx context.Context) pulumix.Output[DataProviderTag] { + return pulumix.Output[DataProviderTag]{ + OutputState: i.ToDataProviderTagOutputWithContext(ctx).OutputState, + } +} + +// DataProviderTagArrayInput is an input type that accepts DataProviderTagArray and DataProviderTagArrayOutput values. +// You can construct a concrete instance of `DataProviderTagArrayInput` via: +// +// DataProviderTagArray{ DataProviderTagArgs{...} } +type DataProviderTagArrayInput interface { + pulumi.Input + + ToDataProviderTagArrayOutput() DataProviderTagArrayOutput + ToDataProviderTagArrayOutputWithContext(context.Context) DataProviderTagArrayOutput +} + +type DataProviderTagArray []DataProviderTagInput + +func (DataProviderTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DataProviderTag)(nil)).Elem() +} + +func (i DataProviderTagArray) ToDataProviderTagArrayOutput() DataProviderTagArrayOutput { + return i.ToDataProviderTagArrayOutputWithContext(context.Background()) +} + +func (i DataProviderTagArray) ToDataProviderTagArrayOutputWithContext(ctx context.Context) DataProviderTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DataProviderTagArrayOutput) +} + +func (i DataProviderTagArray) ToOutput(ctx context.Context) pulumix.Output[[]DataProviderTag] { + return pulumix.Output[[]DataProviderTag]{ + OutputState: i.ToDataProviderTagArrayOutputWithContext(ctx).OutputState, + } +} + +// A key-value pair to associate with a resource. +type DataProviderTagOutput struct{ *pulumi.OutputState } + +func (DataProviderTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DataProviderTag)(nil)).Elem() +} + +func (o DataProviderTagOutput) ToDataProviderTagOutput() DataProviderTagOutput { + return o +} + +func (o DataProviderTagOutput) ToDataProviderTagOutputWithContext(ctx context.Context) DataProviderTagOutput { + return o +} + +func (o DataProviderTagOutput) ToOutput(ctx context.Context) pulumix.Output[DataProviderTag] { + return pulumix.Output[DataProviderTag]{ + OutputState: o.OutputState, + } +} + +// 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 DataProviderTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v DataProviderTag) 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 DataProviderTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v DataProviderTag) string { return v.Value }).(pulumi.StringOutput) +} + +type DataProviderTagArrayOutput struct{ *pulumi.OutputState } + +func (DataProviderTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DataProviderTag)(nil)).Elem() +} + +func (o DataProviderTagArrayOutput) ToDataProviderTagArrayOutput() DataProviderTagArrayOutput { + return o +} + +func (o DataProviderTagArrayOutput) ToDataProviderTagArrayOutputWithContext(ctx context.Context) DataProviderTagArrayOutput { + return o +} + +func (o DataProviderTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]DataProviderTag] { + return pulumix.Output[[]DataProviderTag]{ + OutputState: o.OutputState, + } +} + +func (o DataProviderTagArrayOutput) Index(i pulumi.IntInput) DataProviderTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DataProviderTag { + return vs[0].([]DataProviderTag)[vs[1].(int)] + }).(DataProviderTagOutput) +} + type EndpointDocDbSettings struct { DocsToInvestigate *int `pulumi:"docsToInvestigate"` ExtractDocId *bool `pulumi:"extractDocId"` @@ -929,10 +1062,14 @@ func (o EndpointGcpMySqlSettingsPtrOutput) Username() pulumi.StringPtrOutput { type EndpointIbmDb2Settings struct { CurrentLsn *string `pulumi:"currentLsn"` + KeepCsvFiles *bool `pulumi:"keepCsvFiles"` + LoadTimeout *int `pulumi:"loadTimeout"` + MaxFileSize *int `pulumi:"maxFileSize"` MaxKBytesPerRead *int `pulumi:"maxKBytesPerRead"` SecretsManagerAccessRoleArn *string `pulumi:"secretsManagerAccessRoleArn"` SecretsManagerSecretId *string `pulumi:"secretsManagerSecretId"` SetDataCaptureChanges *bool `pulumi:"setDataCaptureChanges"` + WriteBufferSize *int `pulumi:"writeBufferSize"` } // EndpointIbmDb2SettingsInput is an input type that accepts EndpointIbmDb2SettingsArgs and EndpointIbmDb2SettingsOutput values. @@ -948,10 +1085,14 @@ type EndpointIbmDb2SettingsInput interface { type EndpointIbmDb2SettingsArgs struct { CurrentLsn pulumi.StringPtrInput `pulumi:"currentLsn"` + KeepCsvFiles pulumi.BoolPtrInput `pulumi:"keepCsvFiles"` + LoadTimeout pulumi.IntPtrInput `pulumi:"loadTimeout"` + MaxFileSize pulumi.IntPtrInput `pulumi:"maxFileSize"` MaxKBytesPerRead pulumi.IntPtrInput `pulumi:"maxKBytesPerRead"` SecretsManagerAccessRoleArn pulumi.StringPtrInput `pulumi:"secretsManagerAccessRoleArn"` SecretsManagerSecretId pulumi.StringPtrInput `pulumi:"secretsManagerSecretId"` SetDataCaptureChanges pulumi.BoolPtrInput `pulumi:"setDataCaptureChanges"` + WriteBufferSize pulumi.IntPtrInput `pulumi:"writeBufferSize"` } func (EndpointIbmDb2SettingsArgs) ElementType() reflect.Type { @@ -1053,6 +1194,18 @@ func (o EndpointIbmDb2SettingsOutput) CurrentLsn() pulumi.StringPtrOutput { return o.ApplyT(func(v EndpointIbmDb2Settings) *string { return v.CurrentLsn }).(pulumi.StringPtrOutput) } +func (o EndpointIbmDb2SettingsOutput) KeepCsvFiles() pulumi.BoolPtrOutput { + return o.ApplyT(func(v EndpointIbmDb2Settings) *bool { return v.KeepCsvFiles }).(pulumi.BoolPtrOutput) +} + +func (o EndpointIbmDb2SettingsOutput) LoadTimeout() pulumi.IntPtrOutput { + return o.ApplyT(func(v EndpointIbmDb2Settings) *int { return v.LoadTimeout }).(pulumi.IntPtrOutput) +} + +func (o EndpointIbmDb2SettingsOutput) MaxFileSize() pulumi.IntPtrOutput { + return o.ApplyT(func(v EndpointIbmDb2Settings) *int { return v.MaxFileSize }).(pulumi.IntPtrOutput) +} + func (o EndpointIbmDb2SettingsOutput) MaxKBytesPerRead() pulumi.IntPtrOutput { return o.ApplyT(func(v EndpointIbmDb2Settings) *int { return v.MaxKBytesPerRead }).(pulumi.IntPtrOutput) } @@ -1069,6 +1222,10 @@ func (o EndpointIbmDb2SettingsOutput) SetDataCaptureChanges() pulumi.BoolPtrOutp return o.ApplyT(func(v EndpointIbmDb2Settings) *bool { return v.SetDataCaptureChanges }).(pulumi.BoolPtrOutput) } +func (o EndpointIbmDb2SettingsOutput) WriteBufferSize() pulumi.IntPtrOutput { + return o.ApplyT(func(v EndpointIbmDb2Settings) *int { return v.WriteBufferSize }).(pulumi.IntPtrOutput) +} + type EndpointIbmDb2SettingsPtrOutput struct{ *pulumi.OutputState } func (EndpointIbmDb2SettingsPtrOutput) ElementType() reflect.Type { @@ -1108,6 +1265,33 @@ func (o EndpointIbmDb2SettingsPtrOutput) CurrentLsn() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +func (o EndpointIbmDb2SettingsPtrOutput) KeepCsvFiles() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *EndpointIbmDb2Settings) *bool { + if v == nil { + return nil + } + return v.KeepCsvFiles + }).(pulumi.BoolPtrOutput) +} + +func (o EndpointIbmDb2SettingsPtrOutput) LoadTimeout() pulumi.IntPtrOutput { + return o.ApplyT(func(v *EndpointIbmDb2Settings) *int { + if v == nil { + return nil + } + return v.LoadTimeout + }).(pulumi.IntPtrOutput) +} + +func (o EndpointIbmDb2SettingsPtrOutput) MaxFileSize() pulumi.IntPtrOutput { + return o.ApplyT(func(v *EndpointIbmDb2Settings) *int { + if v == nil { + return nil + } + return v.MaxFileSize + }).(pulumi.IntPtrOutput) +} + func (o EndpointIbmDb2SettingsPtrOutput) MaxKBytesPerRead() pulumi.IntPtrOutput { return o.ApplyT(func(v *EndpointIbmDb2Settings) *int { if v == nil { @@ -1144,6 +1328,15 @@ func (o EndpointIbmDb2SettingsPtrOutput) SetDataCaptureChanges() pulumi.BoolPtrO }).(pulumi.BoolPtrOutput) } +func (o EndpointIbmDb2SettingsPtrOutput) WriteBufferSize() pulumi.IntPtrOutput { + return o.ApplyT(func(v *EndpointIbmDb2Settings) *int { + if v == nil { + return nil + } + return v.WriteBufferSize + }).(pulumi.IntPtrOutput) +} + type EndpointKafkaSettings struct { Broker *string `pulumi:"broker"` IncludeControlDetails *bool `pulumi:"includeControlDetails"` @@ -6111,6 +6304,417 @@ func (o EventSubscriptionTagArrayOutput) Index(i pulumi.IntInput) EventSubscript }).(EventSubscriptionTagOutput) } +// A key-value pair to associate with a resource. +type InstanceProfileTag 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"` +} + +// InstanceProfileTagInput is an input type that accepts InstanceProfileTagArgs and InstanceProfileTagOutput values. +// You can construct a concrete instance of `InstanceProfileTagInput` via: +// +// InstanceProfileTagArgs{...} +type InstanceProfileTagInput interface { + pulumi.Input + + ToInstanceProfileTagOutput() InstanceProfileTagOutput + ToInstanceProfileTagOutputWithContext(context.Context) InstanceProfileTagOutput +} + +// A key-value pair to associate with a resource. +type InstanceProfileTagArgs 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 (InstanceProfileTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*InstanceProfileTag)(nil)).Elem() +} + +func (i InstanceProfileTagArgs) ToInstanceProfileTagOutput() InstanceProfileTagOutput { + return i.ToInstanceProfileTagOutputWithContext(context.Background()) +} + +func (i InstanceProfileTagArgs) ToInstanceProfileTagOutputWithContext(ctx context.Context) InstanceProfileTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceProfileTagOutput) +} + +func (i InstanceProfileTagArgs) ToOutput(ctx context.Context) pulumix.Output[InstanceProfileTag] { + return pulumix.Output[InstanceProfileTag]{ + OutputState: i.ToInstanceProfileTagOutputWithContext(ctx).OutputState, + } +} + +// InstanceProfileTagArrayInput is an input type that accepts InstanceProfileTagArray and InstanceProfileTagArrayOutput values. +// You can construct a concrete instance of `InstanceProfileTagArrayInput` via: +// +// InstanceProfileTagArray{ InstanceProfileTagArgs{...} } +type InstanceProfileTagArrayInput interface { + pulumi.Input + + ToInstanceProfileTagArrayOutput() InstanceProfileTagArrayOutput + ToInstanceProfileTagArrayOutputWithContext(context.Context) InstanceProfileTagArrayOutput +} + +type InstanceProfileTagArray []InstanceProfileTagInput + +func (InstanceProfileTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]InstanceProfileTag)(nil)).Elem() +} + +func (i InstanceProfileTagArray) ToInstanceProfileTagArrayOutput() InstanceProfileTagArrayOutput { + return i.ToInstanceProfileTagArrayOutputWithContext(context.Background()) +} + +func (i InstanceProfileTagArray) ToInstanceProfileTagArrayOutputWithContext(ctx context.Context) InstanceProfileTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(InstanceProfileTagArrayOutput) +} + +func (i InstanceProfileTagArray) ToOutput(ctx context.Context) pulumix.Output[[]InstanceProfileTag] { + return pulumix.Output[[]InstanceProfileTag]{ + OutputState: i.ToInstanceProfileTagArrayOutputWithContext(ctx).OutputState, + } +} + +// A key-value pair to associate with a resource. +type InstanceProfileTagOutput struct{ *pulumi.OutputState } + +func (InstanceProfileTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*InstanceProfileTag)(nil)).Elem() +} + +func (o InstanceProfileTagOutput) ToInstanceProfileTagOutput() InstanceProfileTagOutput { + return o +} + +func (o InstanceProfileTagOutput) ToInstanceProfileTagOutputWithContext(ctx context.Context) InstanceProfileTagOutput { + return o +} + +func (o InstanceProfileTagOutput) ToOutput(ctx context.Context) pulumix.Output[InstanceProfileTag] { + return pulumix.Output[InstanceProfileTag]{ + OutputState: o.OutputState, + } +} + +// 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 InstanceProfileTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v InstanceProfileTag) 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 InstanceProfileTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v InstanceProfileTag) string { return v.Value }).(pulumi.StringOutput) +} + +type InstanceProfileTagArrayOutput struct{ *pulumi.OutputState } + +func (InstanceProfileTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]InstanceProfileTag)(nil)).Elem() +} + +func (o InstanceProfileTagArrayOutput) ToInstanceProfileTagArrayOutput() InstanceProfileTagArrayOutput { + return o +} + +func (o InstanceProfileTagArrayOutput) ToInstanceProfileTagArrayOutputWithContext(ctx context.Context) InstanceProfileTagArrayOutput { + return o +} + +func (o InstanceProfileTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]InstanceProfileTag] { + return pulumix.Output[[]InstanceProfileTag]{ + OutputState: o.OutputState, + } +} + +func (o InstanceProfileTagArrayOutput) Index(i pulumi.IntInput) InstanceProfileTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) InstanceProfileTag { + return vs[0].([]InstanceProfileTag)[vs[1].(int)] + }).(InstanceProfileTagOutput) +} + +// It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject +type MigrationProjectDataProviderDescriptor struct { + DataProviderArn *string `pulumi:"dataProviderArn"` + DataProviderIdentifier *string `pulumi:"dataProviderIdentifier"` + DataProviderName *string `pulumi:"dataProviderName"` + SecretsManagerAccessRoleArn *string `pulumi:"secretsManagerAccessRoleArn"` + SecretsManagerSecretId *string `pulumi:"secretsManagerSecretId"` +} + +// MigrationProjectDataProviderDescriptorInput is an input type that accepts MigrationProjectDataProviderDescriptorArgs and MigrationProjectDataProviderDescriptorOutput values. +// You can construct a concrete instance of `MigrationProjectDataProviderDescriptorInput` via: +// +// MigrationProjectDataProviderDescriptorArgs{...} +type MigrationProjectDataProviderDescriptorInput interface { + pulumi.Input + + ToMigrationProjectDataProviderDescriptorOutput() MigrationProjectDataProviderDescriptorOutput + ToMigrationProjectDataProviderDescriptorOutputWithContext(context.Context) MigrationProjectDataProviderDescriptorOutput +} + +// It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject +type MigrationProjectDataProviderDescriptorArgs struct { + DataProviderArn pulumi.StringPtrInput `pulumi:"dataProviderArn"` + DataProviderIdentifier pulumi.StringPtrInput `pulumi:"dataProviderIdentifier"` + DataProviderName pulumi.StringPtrInput `pulumi:"dataProviderName"` + SecretsManagerAccessRoleArn pulumi.StringPtrInput `pulumi:"secretsManagerAccessRoleArn"` + SecretsManagerSecretId pulumi.StringPtrInput `pulumi:"secretsManagerSecretId"` +} + +func (MigrationProjectDataProviderDescriptorArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MigrationProjectDataProviderDescriptor)(nil)).Elem() +} + +func (i MigrationProjectDataProviderDescriptorArgs) ToMigrationProjectDataProviderDescriptorOutput() MigrationProjectDataProviderDescriptorOutput { + return i.ToMigrationProjectDataProviderDescriptorOutputWithContext(context.Background()) +} + +func (i MigrationProjectDataProviderDescriptorArgs) ToMigrationProjectDataProviderDescriptorOutputWithContext(ctx context.Context) MigrationProjectDataProviderDescriptorOutput { + return pulumi.ToOutputWithContext(ctx, i).(MigrationProjectDataProviderDescriptorOutput) +} + +func (i MigrationProjectDataProviderDescriptorArgs) ToOutput(ctx context.Context) pulumix.Output[MigrationProjectDataProviderDescriptor] { + return pulumix.Output[MigrationProjectDataProviderDescriptor]{ + OutputState: i.ToMigrationProjectDataProviderDescriptorOutputWithContext(ctx).OutputState, + } +} + +// MigrationProjectDataProviderDescriptorArrayInput is an input type that accepts MigrationProjectDataProviderDescriptorArray and MigrationProjectDataProviderDescriptorArrayOutput values. +// You can construct a concrete instance of `MigrationProjectDataProviderDescriptorArrayInput` via: +// +// MigrationProjectDataProviderDescriptorArray{ MigrationProjectDataProviderDescriptorArgs{...} } +type MigrationProjectDataProviderDescriptorArrayInput interface { + pulumi.Input + + ToMigrationProjectDataProviderDescriptorArrayOutput() MigrationProjectDataProviderDescriptorArrayOutput + ToMigrationProjectDataProviderDescriptorArrayOutputWithContext(context.Context) MigrationProjectDataProviderDescriptorArrayOutput +} + +type MigrationProjectDataProviderDescriptorArray []MigrationProjectDataProviderDescriptorInput + +func (MigrationProjectDataProviderDescriptorArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]MigrationProjectDataProviderDescriptor)(nil)).Elem() +} + +func (i MigrationProjectDataProviderDescriptorArray) ToMigrationProjectDataProviderDescriptorArrayOutput() MigrationProjectDataProviderDescriptorArrayOutput { + return i.ToMigrationProjectDataProviderDescriptorArrayOutputWithContext(context.Background()) +} + +func (i MigrationProjectDataProviderDescriptorArray) ToMigrationProjectDataProviderDescriptorArrayOutputWithContext(ctx context.Context) MigrationProjectDataProviderDescriptorArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(MigrationProjectDataProviderDescriptorArrayOutput) +} + +func (i MigrationProjectDataProviderDescriptorArray) ToOutput(ctx context.Context) pulumix.Output[[]MigrationProjectDataProviderDescriptor] { + return pulumix.Output[[]MigrationProjectDataProviderDescriptor]{ + OutputState: i.ToMigrationProjectDataProviderDescriptorArrayOutputWithContext(ctx).OutputState, + } +} + +// It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject +type MigrationProjectDataProviderDescriptorOutput struct{ *pulumi.OutputState } + +func (MigrationProjectDataProviderDescriptorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MigrationProjectDataProviderDescriptor)(nil)).Elem() +} + +func (o MigrationProjectDataProviderDescriptorOutput) ToMigrationProjectDataProviderDescriptorOutput() MigrationProjectDataProviderDescriptorOutput { + return o +} + +func (o MigrationProjectDataProviderDescriptorOutput) ToMigrationProjectDataProviderDescriptorOutputWithContext(ctx context.Context) MigrationProjectDataProviderDescriptorOutput { + return o +} + +func (o MigrationProjectDataProviderDescriptorOutput) ToOutput(ctx context.Context) pulumix.Output[MigrationProjectDataProviderDescriptor] { + return pulumix.Output[MigrationProjectDataProviderDescriptor]{ + OutputState: o.OutputState, + } +} + +func (o MigrationProjectDataProviderDescriptorOutput) DataProviderArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v MigrationProjectDataProviderDescriptor) *string { return v.DataProviderArn }).(pulumi.StringPtrOutput) +} + +func (o MigrationProjectDataProviderDescriptorOutput) DataProviderIdentifier() pulumi.StringPtrOutput { + return o.ApplyT(func(v MigrationProjectDataProviderDescriptor) *string { return v.DataProviderIdentifier }).(pulumi.StringPtrOutput) +} + +func (o MigrationProjectDataProviderDescriptorOutput) DataProviderName() pulumi.StringPtrOutput { + return o.ApplyT(func(v MigrationProjectDataProviderDescriptor) *string { return v.DataProviderName }).(pulumi.StringPtrOutput) +} + +func (o MigrationProjectDataProviderDescriptorOutput) SecretsManagerAccessRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v MigrationProjectDataProviderDescriptor) *string { return v.SecretsManagerAccessRoleArn }).(pulumi.StringPtrOutput) +} + +func (o MigrationProjectDataProviderDescriptorOutput) SecretsManagerSecretId() pulumi.StringPtrOutput { + return o.ApplyT(func(v MigrationProjectDataProviderDescriptor) *string { return v.SecretsManagerSecretId }).(pulumi.StringPtrOutput) +} + +type MigrationProjectDataProviderDescriptorArrayOutput struct{ *pulumi.OutputState } + +func (MigrationProjectDataProviderDescriptorArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]MigrationProjectDataProviderDescriptor)(nil)).Elem() +} + +func (o MigrationProjectDataProviderDescriptorArrayOutput) ToMigrationProjectDataProviderDescriptorArrayOutput() MigrationProjectDataProviderDescriptorArrayOutput { + return o +} + +func (o MigrationProjectDataProviderDescriptorArrayOutput) ToMigrationProjectDataProviderDescriptorArrayOutputWithContext(ctx context.Context) MigrationProjectDataProviderDescriptorArrayOutput { + return o +} + +func (o MigrationProjectDataProviderDescriptorArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]MigrationProjectDataProviderDescriptor] { + return pulumix.Output[[]MigrationProjectDataProviderDescriptor]{ + OutputState: o.OutputState, + } +} + +func (o MigrationProjectDataProviderDescriptorArrayOutput) Index(i pulumi.IntInput) MigrationProjectDataProviderDescriptorOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) MigrationProjectDataProviderDescriptor { + return vs[0].([]MigrationProjectDataProviderDescriptor)[vs[1].(int)] + }).(MigrationProjectDataProviderDescriptorOutput) +} + +// A key-value pair to associate with a resource. +type MigrationProjectTag 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"` +} + +// MigrationProjectTagInput is an input type that accepts MigrationProjectTagArgs and MigrationProjectTagOutput values. +// You can construct a concrete instance of `MigrationProjectTagInput` via: +// +// MigrationProjectTagArgs{...} +type MigrationProjectTagInput interface { + pulumi.Input + + ToMigrationProjectTagOutput() MigrationProjectTagOutput + ToMigrationProjectTagOutputWithContext(context.Context) MigrationProjectTagOutput +} + +// A key-value pair to associate with a resource. +type MigrationProjectTagArgs 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 (MigrationProjectTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*MigrationProjectTag)(nil)).Elem() +} + +func (i MigrationProjectTagArgs) ToMigrationProjectTagOutput() MigrationProjectTagOutput { + return i.ToMigrationProjectTagOutputWithContext(context.Background()) +} + +func (i MigrationProjectTagArgs) ToMigrationProjectTagOutputWithContext(ctx context.Context) MigrationProjectTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(MigrationProjectTagOutput) +} + +func (i MigrationProjectTagArgs) ToOutput(ctx context.Context) pulumix.Output[MigrationProjectTag] { + return pulumix.Output[MigrationProjectTag]{ + OutputState: i.ToMigrationProjectTagOutputWithContext(ctx).OutputState, + } +} + +// MigrationProjectTagArrayInput is an input type that accepts MigrationProjectTagArray and MigrationProjectTagArrayOutput values. +// You can construct a concrete instance of `MigrationProjectTagArrayInput` via: +// +// MigrationProjectTagArray{ MigrationProjectTagArgs{...} } +type MigrationProjectTagArrayInput interface { + pulumi.Input + + ToMigrationProjectTagArrayOutput() MigrationProjectTagArrayOutput + ToMigrationProjectTagArrayOutputWithContext(context.Context) MigrationProjectTagArrayOutput +} + +type MigrationProjectTagArray []MigrationProjectTagInput + +func (MigrationProjectTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]MigrationProjectTag)(nil)).Elem() +} + +func (i MigrationProjectTagArray) ToMigrationProjectTagArrayOutput() MigrationProjectTagArrayOutput { + return i.ToMigrationProjectTagArrayOutputWithContext(context.Background()) +} + +func (i MigrationProjectTagArray) ToMigrationProjectTagArrayOutputWithContext(ctx context.Context) MigrationProjectTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(MigrationProjectTagArrayOutput) +} + +func (i MigrationProjectTagArray) ToOutput(ctx context.Context) pulumix.Output[[]MigrationProjectTag] { + return pulumix.Output[[]MigrationProjectTag]{ + OutputState: i.ToMigrationProjectTagArrayOutputWithContext(ctx).OutputState, + } +} + +// A key-value pair to associate with a resource. +type MigrationProjectTagOutput struct{ *pulumi.OutputState } + +func (MigrationProjectTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*MigrationProjectTag)(nil)).Elem() +} + +func (o MigrationProjectTagOutput) ToMigrationProjectTagOutput() MigrationProjectTagOutput { + return o +} + +func (o MigrationProjectTagOutput) ToMigrationProjectTagOutputWithContext(ctx context.Context) MigrationProjectTagOutput { + return o +} + +func (o MigrationProjectTagOutput) ToOutput(ctx context.Context) pulumix.Output[MigrationProjectTag] { + return pulumix.Output[MigrationProjectTag]{ + OutputState: o.OutputState, + } +} + +// 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 MigrationProjectTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v MigrationProjectTag) 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 MigrationProjectTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v MigrationProjectTag) string { return v.Value }).(pulumi.StringOutput) +} + +type MigrationProjectTagArrayOutput struct{ *pulumi.OutputState } + +func (MigrationProjectTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]MigrationProjectTag)(nil)).Elem() +} + +func (o MigrationProjectTagArrayOutput) ToMigrationProjectTagArrayOutput() MigrationProjectTagArrayOutput { + return o +} + +func (o MigrationProjectTagArrayOutput) ToMigrationProjectTagArrayOutputWithContext(ctx context.Context) MigrationProjectTagArrayOutput { + return o +} + +func (o MigrationProjectTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]MigrationProjectTag] { + return pulumix.Output[[]MigrationProjectTag]{ + OutputState: o.OutputState, + } +} + +func (o MigrationProjectTagArrayOutput) Index(i pulumi.IntInput) MigrationProjectTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) MigrationProjectTag { + return vs[0].([]MigrationProjectTag)[vs[1].(int)] + }).(MigrationProjectTagOutput) +} + // Configuration parameters for provisioning a AWS DMS Serverless replication type ReplicationConfigComputeConfig struct { AvailabilityZone *string `pulumi:"availabilityZone"` @@ -6902,7 +7506,240 @@ func (o ReplicationTaskTagArrayOutput) Index(i pulumi.IntInput) ReplicationTaskT }).(ReplicationTaskTagOutput) } +// The property describes schema conversion application attributes for the migration project. +type SchemaConversionApplicationAttributesProperties struct { + S3BucketPath *string `pulumi:"s3BucketPath"` + S3BucketRoleArn *string `pulumi:"s3BucketRoleArn"` +} + +// SchemaConversionApplicationAttributesPropertiesInput is an input type that accepts SchemaConversionApplicationAttributesPropertiesArgs and SchemaConversionApplicationAttributesPropertiesOutput values. +// You can construct a concrete instance of `SchemaConversionApplicationAttributesPropertiesInput` via: +// +// SchemaConversionApplicationAttributesPropertiesArgs{...} +type SchemaConversionApplicationAttributesPropertiesInput interface { + pulumi.Input + + ToSchemaConversionApplicationAttributesPropertiesOutput() SchemaConversionApplicationAttributesPropertiesOutput + ToSchemaConversionApplicationAttributesPropertiesOutputWithContext(context.Context) SchemaConversionApplicationAttributesPropertiesOutput +} + +// The property describes schema conversion application attributes for the migration project. +type SchemaConversionApplicationAttributesPropertiesArgs struct { + S3BucketPath pulumi.StringPtrInput `pulumi:"s3BucketPath"` + S3BucketRoleArn pulumi.StringPtrInput `pulumi:"s3BucketRoleArn"` +} + +func (SchemaConversionApplicationAttributesPropertiesArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SchemaConversionApplicationAttributesProperties)(nil)).Elem() +} + +func (i SchemaConversionApplicationAttributesPropertiesArgs) ToSchemaConversionApplicationAttributesPropertiesOutput() SchemaConversionApplicationAttributesPropertiesOutput { + return i.ToSchemaConversionApplicationAttributesPropertiesOutputWithContext(context.Background()) +} + +func (i SchemaConversionApplicationAttributesPropertiesArgs) ToSchemaConversionApplicationAttributesPropertiesOutputWithContext(ctx context.Context) SchemaConversionApplicationAttributesPropertiesOutput { + return pulumi.ToOutputWithContext(ctx, i).(SchemaConversionApplicationAttributesPropertiesOutput) +} + +func (i SchemaConversionApplicationAttributesPropertiesArgs) ToOutput(ctx context.Context) pulumix.Output[SchemaConversionApplicationAttributesProperties] { + return pulumix.Output[SchemaConversionApplicationAttributesProperties]{ + OutputState: i.ToSchemaConversionApplicationAttributesPropertiesOutputWithContext(ctx).OutputState, + } +} + +func (i SchemaConversionApplicationAttributesPropertiesArgs) ToSchemaConversionApplicationAttributesPropertiesPtrOutput() SchemaConversionApplicationAttributesPropertiesPtrOutput { + return i.ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(context.Background()) +} + +func (i SchemaConversionApplicationAttributesPropertiesArgs) ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(ctx context.Context) SchemaConversionApplicationAttributesPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SchemaConversionApplicationAttributesPropertiesOutput).ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(ctx) +} + +// SchemaConversionApplicationAttributesPropertiesPtrInput is an input type that accepts SchemaConversionApplicationAttributesPropertiesArgs, SchemaConversionApplicationAttributesPropertiesPtr and SchemaConversionApplicationAttributesPropertiesPtrOutput values. +// You can construct a concrete instance of `SchemaConversionApplicationAttributesPropertiesPtrInput` via: +// +// SchemaConversionApplicationAttributesPropertiesArgs{...} +// +// or: +// +// nil +type SchemaConversionApplicationAttributesPropertiesPtrInput interface { + pulumi.Input + + ToSchemaConversionApplicationAttributesPropertiesPtrOutput() SchemaConversionApplicationAttributesPropertiesPtrOutput + ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(context.Context) SchemaConversionApplicationAttributesPropertiesPtrOutput +} + +type schemaConversionApplicationAttributesPropertiesPtrType SchemaConversionApplicationAttributesPropertiesArgs + +func SchemaConversionApplicationAttributesPropertiesPtr(v *SchemaConversionApplicationAttributesPropertiesArgs) SchemaConversionApplicationAttributesPropertiesPtrInput { + return (*schemaConversionApplicationAttributesPropertiesPtrType)(v) +} + +func (*schemaConversionApplicationAttributesPropertiesPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SchemaConversionApplicationAttributesProperties)(nil)).Elem() +} + +func (i *schemaConversionApplicationAttributesPropertiesPtrType) ToSchemaConversionApplicationAttributesPropertiesPtrOutput() SchemaConversionApplicationAttributesPropertiesPtrOutput { + return i.ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(context.Background()) +} + +func (i *schemaConversionApplicationAttributesPropertiesPtrType) ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(ctx context.Context) SchemaConversionApplicationAttributesPropertiesPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SchemaConversionApplicationAttributesPropertiesPtrOutput) +} + +func (i *schemaConversionApplicationAttributesPropertiesPtrType) ToOutput(ctx context.Context) pulumix.Output[*SchemaConversionApplicationAttributesProperties] { + return pulumix.Output[*SchemaConversionApplicationAttributesProperties]{ + OutputState: i.ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(ctx).OutputState, + } +} + +// The property describes schema conversion application attributes for the migration project. +type SchemaConversionApplicationAttributesPropertiesOutput struct{ *pulumi.OutputState } + +func (SchemaConversionApplicationAttributesPropertiesOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SchemaConversionApplicationAttributesProperties)(nil)).Elem() +} + +func (o SchemaConversionApplicationAttributesPropertiesOutput) ToSchemaConversionApplicationAttributesPropertiesOutput() SchemaConversionApplicationAttributesPropertiesOutput { + return o +} + +func (o SchemaConversionApplicationAttributesPropertiesOutput) ToSchemaConversionApplicationAttributesPropertiesOutputWithContext(ctx context.Context) SchemaConversionApplicationAttributesPropertiesOutput { + return o +} + +func (o SchemaConversionApplicationAttributesPropertiesOutput) ToSchemaConversionApplicationAttributesPropertiesPtrOutput() SchemaConversionApplicationAttributesPropertiesPtrOutput { + return o.ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(context.Background()) +} + +func (o SchemaConversionApplicationAttributesPropertiesOutput) ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(ctx context.Context) SchemaConversionApplicationAttributesPropertiesPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SchemaConversionApplicationAttributesProperties) *SchemaConversionApplicationAttributesProperties { + return &v + }).(SchemaConversionApplicationAttributesPropertiesPtrOutput) +} + +func (o SchemaConversionApplicationAttributesPropertiesOutput) ToOutput(ctx context.Context) pulumix.Output[SchemaConversionApplicationAttributesProperties] { + return pulumix.Output[SchemaConversionApplicationAttributesProperties]{ + OutputState: o.OutputState, + } +} + +func (o SchemaConversionApplicationAttributesPropertiesOutput) S3BucketPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v SchemaConversionApplicationAttributesProperties) *string { return v.S3BucketPath }).(pulumi.StringPtrOutput) +} + +func (o SchemaConversionApplicationAttributesPropertiesOutput) S3BucketRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v SchemaConversionApplicationAttributesProperties) *string { return v.S3BucketRoleArn }).(pulumi.StringPtrOutput) +} + +type SchemaConversionApplicationAttributesPropertiesPtrOutput struct{ *pulumi.OutputState } + +func (SchemaConversionApplicationAttributesPropertiesPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SchemaConversionApplicationAttributesProperties)(nil)).Elem() +} + +func (o SchemaConversionApplicationAttributesPropertiesPtrOutput) ToSchemaConversionApplicationAttributesPropertiesPtrOutput() SchemaConversionApplicationAttributesPropertiesPtrOutput { + return o +} + +func (o SchemaConversionApplicationAttributesPropertiesPtrOutput) ToSchemaConversionApplicationAttributesPropertiesPtrOutputWithContext(ctx context.Context) SchemaConversionApplicationAttributesPropertiesPtrOutput { + return o +} + +func (o SchemaConversionApplicationAttributesPropertiesPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*SchemaConversionApplicationAttributesProperties] { + return pulumix.Output[*SchemaConversionApplicationAttributesProperties]{ + OutputState: o.OutputState, + } +} + +func (o SchemaConversionApplicationAttributesPropertiesPtrOutput) Elem() SchemaConversionApplicationAttributesPropertiesOutput { + return o.ApplyT(func(v *SchemaConversionApplicationAttributesProperties) SchemaConversionApplicationAttributesProperties { + if v != nil { + return *v + } + var ret SchemaConversionApplicationAttributesProperties + return ret + }).(SchemaConversionApplicationAttributesPropertiesOutput) +} + +func (o SchemaConversionApplicationAttributesPropertiesPtrOutput) S3BucketPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SchemaConversionApplicationAttributesProperties) *string { + if v == nil { + return nil + } + return v.S3BucketPath + }).(pulumi.StringPtrOutput) +} + +func (o SchemaConversionApplicationAttributesPropertiesPtrOutput) S3BucketRoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SchemaConversionApplicationAttributesProperties) *string { + if v == nil { + return nil + } + return v.S3BucketRoleArn + }).(pulumi.StringPtrOutput) +} + +// PostgreSqlSettings property identifier. +type Settings0Properties struct { + PostgreSqlSettings *Settings0PropertiesPostgreSqlSettingsProperties `pulumi:"postgreSqlSettings"` +} + +type Settings0PropertiesPostgreSqlSettingsProperties struct { + CertificateArn *string `pulumi:"certificateArn"` + DatabaseName *string `pulumi:"databaseName"` + Port *int `pulumi:"port"` + ServerName *string `pulumi:"serverName"` + SslMode *DataProviderDmsSslModeValue `pulumi:"sslMode"` +} + +// MySqlSettings property identifier. +type Settings1Properties struct { + MySqlSettings *Settings1PropertiesMySqlSettingsProperties `pulumi:"mySqlSettings"` +} + +type Settings1PropertiesMySqlSettingsProperties struct { + CertificateArn *string `pulumi:"certificateArn"` + Port *int `pulumi:"port"` + ServerName *string `pulumi:"serverName"` + SslMode *DataProviderDmsSslModeValue `pulumi:"sslMode"` +} + +// OracleSettings property identifier. +type Settings2Properties struct { + OracleSettings *Settings2PropertiesOracleSettingsProperties `pulumi:"oracleSettings"` +} + +type Settings2PropertiesOracleSettingsProperties struct { + AsmServer *string `pulumi:"asmServer"` + CertificateArn *string `pulumi:"certificateArn"` + DatabaseName *string `pulumi:"databaseName"` + Port *int `pulumi:"port"` + SecretsManagerOracleAsmAccessRoleArn *string `pulumi:"secretsManagerOracleAsmAccessRoleArn"` + SecretsManagerOracleAsmSecretId *string `pulumi:"secretsManagerOracleAsmSecretId"` + SecretsManagerSecurityDbEncryptionAccessRoleArn *string `pulumi:"secretsManagerSecurityDbEncryptionAccessRoleArn"` + SecretsManagerSecurityDbEncryptionSecretId *string `pulumi:"secretsManagerSecurityDbEncryptionSecretId"` + ServerName *string `pulumi:"serverName"` + SslMode *DataProviderDmsSslModeValue `pulumi:"sslMode"` +} + +// MicrosoftSqlServerSettings property identifier. +type Settings3Properties struct { + MicrosoftSqlServerSettings *Settings3PropertiesMicrosoftSqlServerSettingsProperties `pulumi:"microsoftSqlServerSettings"` +} + +type Settings3PropertiesMicrosoftSqlServerSettingsProperties struct { + CertificateArn *string `pulumi:"certificateArn"` + DatabaseName *string `pulumi:"databaseName"` + Port *int `pulumi:"port"` + ServerName *string `pulumi:"serverName"` + SslMode *DataProviderDmsSslModeValue `pulumi:"sslMode"` +} + func init() { + pulumi.RegisterInputType(reflect.TypeOf((*DataProviderTagInput)(nil)).Elem(), DataProviderTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DataProviderTagArrayInput)(nil)).Elem(), DataProviderTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*EndpointDocDbSettingsInput)(nil)).Elem(), EndpointDocDbSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*EndpointDocDbSettingsPtrInput)(nil)).Elem(), EndpointDocDbSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*EndpointDynamoDbSettingsInput)(nil)).Elem(), EndpointDynamoDbSettingsArgs{}) @@ -6941,6 +7778,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*EndpointTagArrayInput)(nil)).Elem(), EndpointTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*EventSubscriptionTagInput)(nil)).Elem(), EventSubscriptionTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*EventSubscriptionTagArrayInput)(nil)).Elem(), EventSubscriptionTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceProfileTagInput)(nil)).Elem(), InstanceProfileTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*InstanceProfileTagArrayInput)(nil)).Elem(), InstanceProfileTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*MigrationProjectDataProviderDescriptorInput)(nil)).Elem(), MigrationProjectDataProviderDescriptorArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MigrationProjectDataProviderDescriptorArrayInput)(nil)).Elem(), MigrationProjectDataProviderDescriptorArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*MigrationProjectTagInput)(nil)).Elem(), MigrationProjectTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*MigrationProjectTagArrayInput)(nil)).Elem(), MigrationProjectTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ReplicationConfigComputeConfigInput)(nil)).Elem(), ReplicationConfigComputeConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ReplicationConfigComputeConfigPtrInput)(nil)).Elem(), ReplicationConfigComputeConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ReplicationConfigTagInput)(nil)).Elem(), ReplicationConfigTagArgs{}) @@ -6951,6 +7794,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ReplicationSubnetGroupTagArrayInput)(nil)).Elem(), ReplicationSubnetGroupTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ReplicationTaskTagInput)(nil)).Elem(), ReplicationTaskTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ReplicationTaskTagArrayInput)(nil)).Elem(), ReplicationTaskTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*SchemaConversionApplicationAttributesPropertiesInput)(nil)).Elem(), SchemaConversionApplicationAttributesPropertiesArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*SchemaConversionApplicationAttributesPropertiesPtrInput)(nil)).Elem(), SchemaConversionApplicationAttributesPropertiesArgs{}) + pulumi.RegisterOutputType(DataProviderTagOutput{}) + pulumi.RegisterOutputType(DataProviderTagArrayOutput{}) pulumi.RegisterOutputType(EndpointDocDbSettingsOutput{}) pulumi.RegisterOutputType(EndpointDocDbSettingsPtrOutput{}) pulumi.RegisterOutputType(EndpointDynamoDbSettingsOutput{}) @@ -6989,6 +7836,12 @@ func init() { pulumi.RegisterOutputType(EndpointTagArrayOutput{}) pulumi.RegisterOutputType(EventSubscriptionTagOutput{}) pulumi.RegisterOutputType(EventSubscriptionTagArrayOutput{}) + pulumi.RegisterOutputType(InstanceProfileTagOutput{}) + pulumi.RegisterOutputType(InstanceProfileTagArrayOutput{}) + pulumi.RegisterOutputType(MigrationProjectDataProviderDescriptorOutput{}) + pulumi.RegisterOutputType(MigrationProjectDataProviderDescriptorArrayOutput{}) + pulumi.RegisterOutputType(MigrationProjectTagOutput{}) + pulumi.RegisterOutputType(MigrationProjectTagArrayOutput{}) pulumi.RegisterOutputType(ReplicationConfigComputeConfigOutput{}) pulumi.RegisterOutputType(ReplicationConfigComputeConfigPtrOutput{}) pulumi.RegisterOutputType(ReplicationConfigTagOutput{}) @@ -6999,4 +7852,6 @@ func init() { pulumi.RegisterOutputType(ReplicationSubnetGroupTagArrayOutput{}) pulumi.RegisterOutputType(ReplicationTaskTagOutput{}) pulumi.RegisterOutputType(ReplicationTaskTagArrayOutput{}) + pulumi.RegisterOutputType(SchemaConversionApplicationAttributesPropertiesOutput{}) + pulumi.RegisterOutputType(SchemaConversionApplicationAttributesPropertiesPtrOutput{}) } diff --git a/sdk/go/aws/dms/replicationConfig.go b/sdk/go/aws/dms/replicationConfig.go index b922004769..eeae2975e3 100644 --- a/sdk/go/aws/dms/replicationConfig.go +++ b/sdk/go/aws/dms/replicationConfig.go @@ -46,6 +46,10 @@ func NewReplicationConfig(ctx *pulumi.Context, args = &ReplicationConfigArgs{} } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "resourceIdentifier", + }) + opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) var resource ReplicationConfig err := ctx.RegisterResource("aws-native:dms:ReplicationConfig", name, args, &resource, opts...) diff --git a/sdk/go/aws/ec2/getInstance.go b/sdk/go/aws/ec2/getInstance.go index 3f6b6f0b7d..fb348aac97 100644 --- a/sdk/go/aws/ec2/getInstance.go +++ b/sdk/go/aws/ec2/getInstance.go @@ -24,7 +24,7 @@ func LookupInstance(ctx *pulumi.Context, args *LookupInstanceArgs, opts ...pulum } type LookupInstanceArgs struct { - Id string `pulumi:"id"` + InstanceId string `pulumi:"instanceId"` } type LookupInstanceResult struct { @@ -36,7 +36,7 @@ type LookupInstanceResult struct { EbsOptimized *bool `pulumi:"ebsOptimized"` HostId *string `pulumi:"hostId"` IamInstanceProfile *string `pulumi:"iamInstanceProfile"` - Id *string `pulumi:"id"` + InstanceId *string `pulumi:"instanceId"` InstanceInitiatedShutdownBehavior *string `pulumi:"instanceInitiatedShutdownBehavior"` InstanceType *string `pulumi:"instanceType"` KernelId *string `pulumi:"kernelId"` @@ -71,7 +71,7 @@ func LookupInstanceOutput(ctx *pulumi.Context, args LookupInstanceOutputArgs, op } type LookupInstanceOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + InstanceId pulumi.StringInput `pulumi:"instanceId"` } func (LookupInstanceOutputArgs) ElementType() reflect.Type { @@ -130,8 +130,8 @@ func (o LookupInstanceResultOutput) IamInstanceProfile() pulumi.StringPtrOutput return o.ApplyT(func(v LookupInstanceResult) *string { return v.IamInstanceProfile }).(pulumi.StringPtrOutput) } -func (o LookupInstanceResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupInstanceResult) *string { return v.Id }).(pulumi.StringPtrOutput) +func (o LookupInstanceResultOutput) InstanceId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupInstanceResult) *string { return v.InstanceId }).(pulumi.StringPtrOutput) } func (o LookupInstanceResultOutput) InstanceInitiatedShutdownBehavior() pulumi.StringPtrOutput { diff --git a/sdk/go/aws/ec2/getRoute.go b/sdk/go/aws/ec2/getRoute.go index 51f4b6004f..741be2c0dd 100644 --- a/sdk/go/aws/ec2/getRoute.go +++ b/sdk/go/aws/ec2/getRoute.go @@ -35,6 +35,8 @@ type LookupRouteResult struct { CarrierGatewayId *string `pulumi:"carrierGatewayId"` // The primary identifier of the resource generated by the service. CidrBlock *string `pulumi:"cidrBlock"` + // The Amazon Resource Name (ARN) of the core network. + CoreNetworkArn *string `pulumi:"coreNetworkArn"` // The ID of the egress-only internet gateway. EgressOnlyInternetGatewayId *string `pulumi:"egressOnlyInternetGatewayId"` // The ID of an internet gateway or virtual private gateway attached to your VPC. @@ -109,6 +111,11 @@ func (o LookupRouteResultOutput) CidrBlock() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRouteResult) *string { return v.CidrBlock }).(pulumi.StringPtrOutput) } +// The Amazon Resource Name (ARN) of the core network. +func (o LookupRouteResultOutput) CoreNetworkArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupRouteResult) *string { return v.CoreNetworkArn }).(pulumi.StringPtrOutput) +} + // The ID of the egress-only internet gateway. func (o LookupRouteResultOutput) EgressOnlyInternetGatewayId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRouteResult) *string { return v.EgressOnlyInternetGatewayId }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/ec2/getSecurityGroupEgress.go b/sdk/go/aws/ec2/getSecurityGroupEgress.go index 218c578569..13321ae7f8 100644 --- a/sdk/go/aws/ec2/getSecurityGroupEgress.go +++ b/sdk/go/aws/ec2/getSecurityGroupEgress.go @@ -24,12 +24,15 @@ func LookupSecurityGroupEgress(ctx *pulumi.Context, args *LookupSecurityGroupEgr } type LookupSecurityGroupEgressArgs struct { + // The Security Group Rule Id Id string `pulumi:"id"` } type LookupSecurityGroupEgressResult struct { + // Resource Type definition for an egress (outbound) security group rule. Description *string `pulumi:"description"` - Id *string `pulumi:"id"` + // The Security Group Rule Id + Id *string `pulumi:"id"` } func LookupSecurityGroupEgressOutput(ctx *pulumi.Context, args LookupSecurityGroupEgressOutputArgs, opts ...pulumi.InvokeOption) LookupSecurityGroupEgressResultOutput { @@ -46,6 +49,7 @@ func LookupSecurityGroupEgressOutput(ctx *pulumi.Context, args LookupSecurityGro } type LookupSecurityGroupEgressOutputArgs struct { + // The Security Group Rule Id Id pulumi.StringInput `pulumi:"id"` } @@ -73,10 +77,12 @@ func (o LookupSecurityGroupEgressResultOutput) ToOutput(ctx context.Context) pul } } +// Resource Type definition for an egress (outbound) security group rule. func (o LookupSecurityGroupEgressResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSecurityGroupEgressResult) *string { return v.Description }).(pulumi.StringPtrOutput) } +// The Security Group Rule Id func (o LookupSecurityGroupEgressResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSecurityGroupEgressResult) *string { return v.Id }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/ec2/getSnapshotBlockPublicAccess.go b/sdk/go/aws/ec2/getSnapshotBlockPublicAccess.go new file mode 100644 index 0000000000..fa0a49f987 --- /dev/null +++ b/sdk/go/aws/ec2/getSnapshotBlockPublicAccess.go @@ -0,0 +1,92 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package ec2 + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess +func LookupSnapshotBlockPublicAccess(ctx *pulumi.Context, args *LookupSnapshotBlockPublicAccessArgs, opts ...pulumi.InvokeOption) (*LookupSnapshotBlockPublicAccessResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupSnapshotBlockPublicAccessResult + err := ctx.Invoke("aws-native:ec2:getSnapshotBlockPublicAccess", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupSnapshotBlockPublicAccessArgs struct { + // The identifier for the specified AWS account. + AccountId string `pulumi:"accountId"` +} + +type LookupSnapshotBlockPublicAccessResult struct { + // The identifier for the specified AWS account. + AccountId *string `pulumi:"accountId"` + // The state of EBS Snapshot Block Public Access. + State *SnapshotBlockPublicAccessStateEnum `pulumi:"state"` +} + +func LookupSnapshotBlockPublicAccessOutput(ctx *pulumi.Context, args LookupSnapshotBlockPublicAccessOutputArgs, opts ...pulumi.InvokeOption) LookupSnapshotBlockPublicAccessResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupSnapshotBlockPublicAccessResult, error) { + args := v.(LookupSnapshotBlockPublicAccessArgs) + r, err := LookupSnapshotBlockPublicAccess(ctx, &args, opts...) + var s LookupSnapshotBlockPublicAccessResult + if r != nil { + s = *r + } + return s, err + }).(LookupSnapshotBlockPublicAccessResultOutput) +} + +type LookupSnapshotBlockPublicAccessOutputArgs struct { + // The identifier for the specified AWS account. + AccountId pulumi.StringInput `pulumi:"accountId"` +} + +func (LookupSnapshotBlockPublicAccessOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupSnapshotBlockPublicAccessArgs)(nil)).Elem() +} + +type LookupSnapshotBlockPublicAccessResultOutput struct{ *pulumi.OutputState } + +func (LookupSnapshotBlockPublicAccessResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupSnapshotBlockPublicAccessResult)(nil)).Elem() +} + +func (o LookupSnapshotBlockPublicAccessResultOutput) ToLookupSnapshotBlockPublicAccessResultOutput() LookupSnapshotBlockPublicAccessResultOutput { + return o +} + +func (o LookupSnapshotBlockPublicAccessResultOutput) ToLookupSnapshotBlockPublicAccessResultOutputWithContext(ctx context.Context) LookupSnapshotBlockPublicAccessResultOutput { + return o +} + +func (o LookupSnapshotBlockPublicAccessResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupSnapshotBlockPublicAccessResult] { + return pulumix.Output[LookupSnapshotBlockPublicAccessResult]{ + OutputState: o.OutputState, + } +} + +// The identifier for the specified AWS account. +func (o LookupSnapshotBlockPublicAccessResultOutput) AccountId() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupSnapshotBlockPublicAccessResult) *string { return v.AccountId }).(pulumi.StringPtrOutput) +} + +// The state of EBS Snapshot Block Public Access. +func (o LookupSnapshotBlockPublicAccessResultOutput) State() SnapshotBlockPublicAccessStateEnumPtrOutput { + return o.ApplyT(func(v LookupSnapshotBlockPublicAccessResult) *SnapshotBlockPublicAccessStateEnum { return v.State }).(SnapshotBlockPublicAccessStateEnumPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupSnapshotBlockPublicAccessResultOutput{}) +} diff --git a/sdk/go/aws/ec2/init.go b/sdk/go/aws/ec2/init.go index 795538446a..b6f3e7aef9 100644 --- a/sdk/go/aws/ec2/init.go +++ b/sdk/go/aws/ec2/init.go @@ -123,6 +123,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &SecurityGroupEgress{} case "aws-native:ec2:SecurityGroupIngress": r = &SecurityGroupIngress{} + case "aws-native:ec2:SnapshotBlockPublicAccess": + r = &SnapshotBlockPublicAccess{} case "aws-native:ec2:SpotFleet": r = &SpotFleet{} case "aws-native:ec2:Subnet": diff --git a/sdk/go/aws/ec2/instance.go b/sdk/go/aws/ec2/instance.go index 6fd1edb46c..8bd1c4a30a 100644 --- a/sdk/go/aws/ec2/instance.go +++ b/sdk/go/aws/ec2/instance.go @@ -34,6 +34,7 @@ type Instance struct { HostResourceGroupArn pulumi.StringPtrOutput `pulumi:"hostResourceGroupArn"` IamInstanceProfile pulumi.StringPtrOutput `pulumi:"iamInstanceProfile"` ImageId pulumi.StringPtrOutput `pulumi:"imageId"` + InstanceId pulumi.StringOutput `pulumi:"instanceId"` InstanceInitiatedShutdownBehavior pulumi.StringPtrOutput `pulumi:"instanceInitiatedShutdownBehavior"` InstanceType pulumi.StringPtrOutput `pulumi:"instanceType"` Ipv6AddressCount pulumi.IntPtrOutput `pulumi:"ipv6AddressCount"` @@ -326,6 +327,10 @@ func (o InstanceOutput) ImageId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Instance) pulumi.StringPtrOutput { return v.ImageId }).(pulumi.StringPtrOutput) } +func (o InstanceOutput) InstanceId() pulumi.StringOutput { + return o.ApplyT(func(v *Instance) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput) +} + func (o InstanceOutput) InstanceInitiatedShutdownBehavior() pulumi.StringPtrOutput { return o.ApplyT(func(v *Instance) pulumi.StringPtrOutput { return v.InstanceInitiatedShutdownBehavior }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/ec2/pulumiEnums.go b/sdk/go/aws/ec2/pulumiEnums.go index 2aa8aafa06..543fd0ff05 100644 --- a/sdk/go/aws/ec2/pulumiEnums.go +++ b/sdk/go/aws/ec2/pulumiEnums.go @@ -7118,6 +7118,189 @@ func (in *prefixListAddressFamilyPtr) ToOutput(ctx context.Context) pulumix.Outp } } +// The state of EBS Snapshot Block Public Access. +type SnapshotBlockPublicAccessStateEnum string + +const ( + SnapshotBlockPublicAccessStateEnumBlockAllSharing = SnapshotBlockPublicAccessStateEnum("block-all-sharing") + SnapshotBlockPublicAccessStateEnumBlockNewSharing = SnapshotBlockPublicAccessStateEnum("block-new-sharing") +) + +func (SnapshotBlockPublicAccessStateEnum) ElementType() reflect.Type { + return reflect.TypeOf((*SnapshotBlockPublicAccessStateEnum)(nil)).Elem() +} + +func (e SnapshotBlockPublicAccessStateEnum) ToSnapshotBlockPublicAccessStateEnumOutput() SnapshotBlockPublicAccessStateEnumOutput { + return pulumi.ToOutput(e).(SnapshotBlockPublicAccessStateEnumOutput) +} + +func (e SnapshotBlockPublicAccessStateEnum) ToSnapshotBlockPublicAccessStateEnumOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessStateEnumOutput { + return pulumi.ToOutputWithContext(ctx, e).(SnapshotBlockPublicAccessStateEnumOutput) +} + +func (e SnapshotBlockPublicAccessStateEnum) ToSnapshotBlockPublicAccessStateEnumPtrOutput() SnapshotBlockPublicAccessStateEnumPtrOutput { + return e.ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(context.Background()) +} + +func (e SnapshotBlockPublicAccessStateEnum) ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessStateEnumPtrOutput { + return SnapshotBlockPublicAccessStateEnum(e).ToSnapshotBlockPublicAccessStateEnumOutputWithContext(ctx).ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(ctx) +} + +func (e SnapshotBlockPublicAccessStateEnum) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e SnapshotBlockPublicAccessStateEnum) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e SnapshotBlockPublicAccessStateEnum) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e SnapshotBlockPublicAccessStateEnum) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type SnapshotBlockPublicAccessStateEnumOutput struct{ *pulumi.OutputState } + +func (SnapshotBlockPublicAccessStateEnumOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SnapshotBlockPublicAccessStateEnum)(nil)).Elem() +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToSnapshotBlockPublicAccessStateEnumOutput() SnapshotBlockPublicAccessStateEnumOutput { + return o +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToSnapshotBlockPublicAccessStateEnumOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessStateEnumOutput { + return o +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToSnapshotBlockPublicAccessStateEnumPtrOutput() SnapshotBlockPublicAccessStateEnumPtrOutput { + return o.ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(context.Background()) +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessStateEnumPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SnapshotBlockPublicAccessStateEnum) *SnapshotBlockPublicAccessStateEnum { + return &v + }).(SnapshotBlockPublicAccessStateEnumPtrOutput) +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToOutput(ctx context.Context) pulumix.Output[SnapshotBlockPublicAccessStateEnum] { + return pulumix.Output[SnapshotBlockPublicAccessStateEnum]{ + OutputState: o.OutputState, + } +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e SnapshotBlockPublicAccessStateEnum) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o SnapshotBlockPublicAccessStateEnumOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e SnapshotBlockPublicAccessStateEnum) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type SnapshotBlockPublicAccessStateEnumPtrOutput struct{ *pulumi.OutputState } + +func (SnapshotBlockPublicAccessStateEnumPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SnapshotBlockPublicAccessStateEnum)(nil)).Elem() +} + +func (o SnapshotBlockPublicAccessStateEnumPtrOutput) ToSnapshotBlockPublicAccessStateEnumPtrOutput() SnapshotBlockPublicAccessStateEnumPtrOutput { + return o +} + +func (o SnapshotBlockPublicAccessStateEnumPtrOutput) ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessStateEnumPtrOutput { + return o +} + +func (o SnapshotBlockPublicAccessStateEnumPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*SnapshotBlockPublicAccessStateEnum] { + return pulumix.Output[*SnapshotBlockPublicAccessStateEnum]{ + OutputState: o.OutputState, + } +} + +func (o SnapshotBlockPublicAccessStateEnumPtrOutput) Elem() SnapshotBlockPublicAccessStateEnumOutput { + return o.ApplyT(func(v *SnapshotBlockPublicAccessStateEnum) SnapshotBlockPublicAccessStateEnum { + if v != nil { + return *v + } + var ret SnapshotBlockPublicAccessStateEnum + return ret + }).(SnapshotBlockPublicAccessStateEnumOutput) +} + +func (o SnapshotBlockPublicAccessStateEnumPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o SnapshotBlockPublicAccessStateEnumPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *SnapshotBlockPublicAccessStateEnum) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// SnapshotBlockPublicAccessStateEnumInput is an input type that accepts SnapshotBlockPublicAccessStateEnumArgs and SnapshotBlockPublicAccessStateEnumOutput values. +// You can construct a concrete instance of `SnapshotBlockPublicAccessStateEnumInput` via: +// +// SnapshotBlockPublicAccessStateEnumArgs{...} +type SnapshotBlockPublicAccessStateEnumInput interface { + pulumi.Input + + ToSnapshotBlockPublicAccessStateEnumOutput() SnapshotBlockPublicAccessStateEnumOutput + ToSnapshotBlockPublicAccessStateEnumOutputWithContext(context.Context) SnapshotBlockPublicAccessStateEnumOutput +} + +var snapshotBlockPublicAccessStateEnumPtrType = reflect.TypeOf((**SnapshotBlockPublicAccessStateEnum)(nil)).Elem() + +type SnapshotBlockPublicAccessStateEnumPtrInput interface { + pulumi.Input + + ToSnapshotBlockPublicAccessStateEnumPtrOutput() SnapshotBlockPublicAccessStateEnumPtrOutput + ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(context.Context) SnapshotBlockPublicAccessStateEnumPtrOutput +} + +type snapshotBlockPublicAccessStateEnumPtr string + +func SnapshotBlockPublicAccessStateEnumPtr(v string) SnapshotBlockPublicAccessStateEnumPtrInput { + return (*snapshotBlockPublicAccessStateEnumPtr)(&v) +} + +func (*snapshotBlockPublicAccessStateEnumPtr) ElementType() reflect.Type { + return snapshotBlockPublicAccessStateEnumPtrType +} + +func (in *snapshotBlockPublicAccessStateEnumPtr) ToSnapshotBlockPublicAccessStateEnumPtrOutput() SnapshotBlockPublicAccessStateEnumPtrOutput { + return pulumi.ToOutput(in).(SnapshotBlockPublicAccessStateEnumPtrOutput) +} + +func (in *snapshotBlockPublicAccessStateEnumPtr) ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessStateEnumPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(SnapshotBlockPublicAccessStateEnumPtrOutput) +} + +func (in *snapshotBlockPublicAccessStateEnumPtr) ToOutput(ctx context.Context) pulumix.Output[*SnapshotBlockPublicAccessStateEnum] { + return pulumix.Output[*SnapshotBlockPublicAccessStateEnum]{ + OutputState: in.ToSnapshotBlockPublicAccessStateEnumPtrOutputWithContext(ctx).OutputState, + } +} + type SpotFleetEbsBlockDeviceVolumeType string const ( @@ -11067,6 +11250,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*NetworkInsightsPathProtocolPtrInput)(nil)).Elem(), NetworkInsightsPathProtocol("tcp")) pulumi.RegisterInputType(reflect.TypeOf((*PrefixListAddressFamilyInput)(nil)).Elem(), PrefixListAddressFamily("IPv4")) pulumi.RegisterInputType(reflect.TypeOf((*PrefixListAddressFamilyPtrInput)(nil)).Elem(), PrefixListAddressFamily("IPv4")) + pulumi.RegisterInputType(reflect.TypeOf((*SnapshotBlockPublicAccessStateEnumInput)(nil)).Elem(), SnapshotBlockPublicAccessStateEnum("block-all-sharing")) + pulumi.RegisterInputType(reflect.TypeOf((*SnapshotBlockPublicAccessStateEnumPtrInput)(nil)).Elem(), SnapshotBlockPublicAccessStateEnum("block-all-sharing")) pulumi.RegisterInputType(reflect.TypeOf((*SpotFleetEbsBlockDeviceVolumeTypeInput)(nil)).Elem(), SpotFleetEbsBlockDeviceVolumeType("gp2")) pulumi.RegisterInputType(reflect.TypeOf((*SpotFleetEbsBlockDeviceVolumeTypePtrInput)(nil)).Elem(), SpotFleetEbsBlockDeviceVolumeType("gp2")) pulumi.RegisterInputType(reflect.TypeOf((*SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItemInput)(nil)).Elem(), SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItem("amazon-web-services")) @@ -11196,6 +11381,8 @@ func init() { pulumi.RegisterOutputType(NetworkInsightsPathProtocolPtrOutput{}) pulumi.RegisterOutputType(PrefixListAddressFamilyOutput{}) pulumi.RegisterOutputType(PrefixListAddressFamilyPtrOutput{}) + pulumi.RegisterOutputType(SnapshotBlockPublicAccessStateEnumOutput{}) + pulumi.RegisterOutputType(SnapshotBlockPublicAccessStateEnumPtrOutput{}) pulumi.RegisterOutputType(SpotFleetEbsBlockDeviceVolumeTypeOutput{}) pulumi.RegisterOutputType(SpotFleetEbsBlockDeviceVolumeTypePtrOutput{}) pulumi.RegisterOutputType(SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItemOutput{}) diff --git a/sdk/go/aws/ec2/pulumiTypes.go b/sdk/go/aws/ec2/pulumiTypes.go index 7f87bf98bc..e425d885ef 100644 --- a/sdk/go/aws/ec2/pulumiTypes.go +++ b/sdk/go/aws/ec2/pulumiTypes.go @@ -7158,10 +7158,10 @@ func (o InstanceAssociationParameterArrayOutput) Index(i pulumi.IntInput) Instan } type InstanceBlockDeviceMapping struct { - DeviceName string `pulumi:"deviceName"` - Ebs *InstanceEbs `pulumi:"ebs"` - NoDevice *InstanceNoDevice `pulumi:"noDevice"` - VirtualName *string `pulumi:"virtualName"` + DeviceName string `pulumi:"deviceName"` + Ebs *InstanceEbs `pulumi:"ebs"` + NoDevice interface{} `pulumi:"noDevice"` + VirtualName *string `pulumi:"virtualName"` } // InstanceBlockDeviceMappingInput is an input type that accepts InstanceBlockDeviceMappingArgs and InstanceBlockDeviceMappingOutput values. @@ -7176,10 +7176,10 @@ type InstanceBlockDeviceMappingInput interface { } type InstanceBlockDeviceMappingArgs struct { - DeviceName pulumi.StringInput `pulumi:"deviceName"` - Ebs InstanceEbsPtrInput `pulumi:"ebs"` - NoDevice InstanceNoDevicePtrInput `pulumi:"noDevice"` - VirtualName pulumi.StringPtrInput `pulumi:"virtualName"` + DeviceName pulumi.StringInput `pulumi:"deviceName"` + Ebs InstanceEbsPtrInput `pulumi:"ebs"` + NoDevice pulumi.Input `pulumi:"noDevice"` + VirtualName pulumi.StringPtrInput `pulumi:"virtualName"` } func (InstanceBlockDeviceMappingArgs) ElementType() reflect.Type { @@ -7259,8 +7259,8 @@ func (o InstanceBlockDeviceMappingOutput) Ebs() InstanceEbsPtrOutput { return o.ApplyT(func(v InstanceBlockDeviceMapping) *InstanceEbs { return v.Ebs }).(InstanceEbsPtrOutput) } -func (o InstanceBlockDeviceMappingOutput) NoDevice() InstanceNoDevicePtrOutput { - return o.ApplyT(func(v InstanceBlockDeviceMapping) *InstanceNoDevice { return v.NoDevice }).(InstanceNoDevicePtrOutput) +func (o InstanceBlockDeviceMappingOutput) NoDevice() pulumi.AnyOutput { + return o.ApplyT(func(v InstanceBlockDeviceMapping) interface{} { return v.NoDevice }).(pulumi.AnyOutput) } func (o InstanceBlockDeviceMappingOutput) VirtualName() pulumi.StringPtrOutput { @@ -9165,148 +9165,6 @@ func (o InstanceNetworkInterfaceArrayOutput) Index(i pulumi.IntInput) InstanceNe }).(InstanceNetworkInterfaceOutput) } -type InstanceNoDevice struct { -} - -// InstanceNoDeviceInput is an input type that accepts InstanceNoDeviceArgs and InstanceNoDeviceOutput values. -// You can construct a concrete instance of `InstanceNoDeviceInput` via: -// -// InstanceNoDeviceArgs{...} -type InstanceNoDeviceInput interface { - pulumi.Input - - ToInstanceNoDeviceOutput() InstanceNoDeviceOutput - ToInstanceNoDeviceOutputWithContext(context.Context) InstanceNoDeviceOutput -} - -type InstanceNoDeviceArgs struct { -} - -func (InstanceNoDeviceArgs) ElementType() reflect.Type { - return reflect.TypeOf((*InstanceNoDevice)(nil)).Elem() -} - -func (i InstanceNoDeviceArgs) ToInstanceNoDeviceOutput() InstanceNoDeviceOutput { - return i.ToInstanceNoDeviceOutputWithContext(context.Background()) -} - -func (i InstanceNoDeviceArgs) ToInstanceNoDeviceOutputWithContext(ctx context.Context) InstanceNoDeviceOutput { - return pulumi.ToOutputWithContext(ctx, i).(InstanceNoDeviceOutput) -} - -func (i InstanceNoDeviceArgs) ToOutput(ctx context.Context) pulumix.Output[InstanceNoDevice] { - return pulumix.Output[InstanceNoDevice]{ - OutputState: i.ToInstanceNoDeviceOutputWithContext(ctx).OutputState, - } -} - -func (i InstanceNoDeviceArgs) ToInstanceNoDevicePtrOutput() InstanceNoDevicePtrOutput { - return i.ToInstanceNoDevicePtrOutputWithContext(context.Background()) -} - -func (i InstanceNoDeviceArgs) ToInstanceNoDevicePtrOutputWithContext(ctx context.Context) InstanceNoDevicePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(InstanceNoDeviceOutput).ToInstanceNoDevicePtrOutputWithContext(ctx) -} - -// InstanceNoDevicePtrInput is an input type that accepts InstanceNoDeviceArgs, InstanceNoDevicePtr and InstanceNoDevicePtrOutput values. -// You can construct a concrete instance of `InstanceNoDevicePtrInput` via: -// -// InstanceNoDeviceArgs{...} -// -// or: -// -// nil -type InstanceNoDevicePtrInput interface { - pulumi.Input - - ToInstanceNoDevicePtrOutput() InstanceNoDevicePtrOutput - ToInstanceNoDevicePtrOutputWithContext(context.Context) InstanceNoDevicePtrOutput -} - -type instanceNoDevicePtrType InstanceNoDeviceArgs - -func InstanceNoDevicePtr(v *InstanceNoDeviceArgs) InstanceNoDevicePtrInput { - return (*instanceNoDevicePtrType)(v) -} - -func (*instanceNoDevicePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**InstanceNoDevice)(nil)).Elem() -} - -func (i *instanceNoDevicePtrType) ToInstanceNoDevicePtrOutput() InstanceNoDevicePtrOutput { - return i.ToInstanceNoDevicePtrOutputWithContext(context.Background()) -} - -func (i *instanceNoDevicePtrType) ToInstanceNoDevicePtrOutputWithContext(ctx context.Context) InstanceNoDevicePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(InstanceNoDevicePtrOutput) -} - -func (i *instanceNoDevicePtrType) ToOutput(ctx context.Context) pulumix.Output[*InstanceNoDevice] { - return pulumix.Output[*InstanceNoDevice]{ - OutputState: i.ToInstanceNoDevicePtrOutputWithContext(ctx).OutputState, - } -} - -type InstanceNoDeviceOutput struct{ *pulumi.OutputState } - -func (InstanceNoDeviceOutput) ElementType() reflect.Type { - return reflect.TypeOf((*InstanceNoDevice)(nil)).Elem() -} - -func (o InstanceNoDeviceOutput) ToInstanceNoDeviceOutput() InstanceNoDeviceOutput { - return o -} - -func (o InstanceNoDeviceOutput) ToInstanceNoDeviceOutputWithContext(ctx context.Context) InstanceNoDeviceOutput { - return o -} - -func (o InstanceNoDeviceOutput) ToInstanceNoDevicePtrOutput() InstanceNoDevicePtrOutput { - return o.ToInstanceNoDevicePtrOutputWithContext(context.Background()) -} - -func (o InstanceNoDeviceOutput) ToInstanceNoDevicePtrOutputWithContext(ctx context.Context) InstanceNoDevicePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v InstanceNoDevice) *InstanceNoDevice { - return &v - }).(InstanceNoDevicePtrOutput) -} - -func (o InstanceNoDeviceOutput) ToOutput(ctx context.Context) pulumix.Output[InstanceNoDevice] { - return pulumix.Output[InstanceNoDevice]{ - OutputState: o.OutputState, - } -} - -type InstanceNoDevicePtrOutput struct{ *pulumi.OutputState } - -func (InstanceNoDevicePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**InstanceNoDevice)(nil)).Elem() -} - -func (o InstanceNoDevicePtrOutput) ToInstanceNoDevicePtrOutput() InstanceNoDevicePtrOutput { - return o -} - -func (o InstanceNoDevicePtrOutput) ToInstanceNoDevicePtrOutputWithContext(ctx context.Context) InstanceNoDevicePtrOutput { - return o -} - -func (o InstanceNoDevicePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*InstanceNoDevice] { - return pulumix.Output[*InstanceNoDevice]{ - OutputState: o.OutputState, - } -} - -func (o InstanceNoDevicePtrOutput) Elem() InstanceNoDeviceOutput { - return o.ApplyT(func(v *InstanceNoDevice) InstanceNoDevice { - if v != nil { - return *v - } - var ret InstanceNoDevice - return ret - }).(InstanceNoDeviceOutput) -} - type InstancePrivateDnsNameOptions struct { EnableResourceNameDnsARecord *bool `pulumi:"enableResourceNameDnsARecord"` EnableResourceNameDnsAaaaRecord *bool `pulumi:"enableResourceNameDnsAaaaRecord"` @@ -35547,6 +35405,8 @@ func (o VerifiedAccessInstanceVerifiedAccessTrustProviderArrayOutput) Index(i pu // The options for device identity based trust providers. type VerifiedAccessTrustProviderDeviceOptions struct { + // URL Verified Access will use to verify authenticity of the device tokens. + PublicSigningKeyUrl *string `pulumi:"publicSigningKeyUrl"` // The ID of the tenant application with the device-identity provider. TenantId *string `pulumi:"tenantId"` } @@ -35564,6 +35424,8 @@ type VerifiedAccessTrustProviderDeviceOptionsInput interface { // The options for device identity based trust providers. type VerifiedAccessTrustProviderDeviceOptionsArgs struct { + // URL Verified Access will use to verify authenticity of the device tokens. + PublicSigningKeyUrl pulumi.StringPtrInput `pulumi:"publicSigningKeyUrl"` // The ID of the tenant application with the device-identity provider. TenantId pulumi.StringPtrInput `pulumi:"tenantId"` } @@ -35664,6 +35526,11 @@ func (o VerifiedAccessTrustProviderDeviceOptionsOutput) ToOutput(ctx context.Con } } +// URL Verified Access will use to verify authenticity of the device tokens. +func (o VerifiedAccessTrustProviderDeviceOptionsOutput) PublicSigningKeyUrl() pulumi.StringPtrOutput { + return o.ApplyT(func(v VerifiedAccessTrustProviderDeviceOptions) *string { return v.PublicSigningKeyUrl }).(pulumi.StringPtrOutput) +} + // The ID of the tenant application with the device-identity provider. func (o VerifiedAccessTrustProviderDeviceOptionsOutput) TenantId() pulumi.StringPtrOutput { return o.ApplyT(func(v VerifiedAccessTrustProviderDeviceOptions) *string { return v.TenantId }).(pulumi.StringPtrOutput) @@ -35699,6 +35566,16 @@ func (o VerifiedAccessTrustProviderDeviceOptionsPtrOutput) Elem() VerifiedAccess }).(VerifiedAccessTrustProviderDeviceOptionsOutput) } +// URL Verified Access will use to verify authenticity of the device tokens. +func (o VerifiedAccessTrustProviderDeviceOptionsPtrOutput) PublicSigningKeyUrl() pulumi.StringPtrOutput { + return o.ApplyT(func(v *VerifiedAccessTrustProviderDeviceOptions) *string { + if v == nil { + return nil + } + return v.PublicSigningKeyUrl + }).(pulumi.StringPtrOutput) +} + // The ID of the tenant application with the device-identity provider. func (o VerifiedAccessTrustProviderDeviceOptionsPtrOutput) TenantId() pulumi.StringPtrOutput { return o.ApplyT(func(v *VerifiedAccessTrustProviderDeviceOptions) *string { @@ -36990,8 +36867,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*InstanceLicenseSpecificationArrayInput)(nil)).Elem(), InstanceLicenseSpecificationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*InstanceNetworkInterfaceInput)(nil)).Elem(), InstanceNetworkInterfaceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstanceNetworkInterfaceArrayInput)(nil)).Elem(), InstanceNetworkInterfaceArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*InstanceNoDeviceInput)(nil)).Elem(), InstanceNoDeviceArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*InstanceNoDevicePtrInput)(nil)).Elem(), InstanceNoDeviceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstancePrivateDnsNameOptionsInput)(nil)).Elem(), InstancePrivateDnsNameOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstancePrivateDnsNameOptionsPtrInput)(nil)).Elem(), InstancePrivateDnsNameOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InstancePrivateIpAddressSpecificationInput)(nil)).Elem(), InstancePrivateIpAddressSpecificationArgs{}) @@ -37413,8 +37288,6 @@ func init() { pulumi.RegisterOutputType(InstanceLicenseSpecificationArrayOutput{}) pulumi.RegisterOutputType(InstanceNetworkInterfaceOutput{}) pulumi.RegisterOutputType(InstanceNetworkInterfaceArrayOutput{}) - pulumi.RegisterOutputType(InstanceNoDeviceOutput{}) - pulumi.RegisterOutputType(InstanceNoDevicePtrOutput{}) pulumi.RegisterOutputType(InstancePrivateDnsNameOptionsOutput{}) pulumi.RegisterOutputType(InstancePrivateDnsNameOptionsPtrOutput{}) pulumi.RegisterOutputType(InstancePrivateIpAddressSpecificationOutput{}) diff --git a/sdk/go/aws/ec2/route.go b/sdk/go/aws/ec2/route.go index 69a34f2ade..28fd716ea2 100644 --- a/sdk/go/aws/ec2/route.go +++ b/sdk/go/aws/ec2/route.go @@ -21,6 +21,8 @@ type Route struct { CarrierGatewayId pulumi.StringPtrOutput `pulumi:"carrierGatewayId"` // The primary identifier of the resource generated by the service. CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"` + // The Amazon Resource Name (ARN) of the core network. + CoreNetworkArn pulumi.StringPtrOutput `pulumi:"coreNetworkArn"` // The IPv4 CIDR block used for the destination match. DestinationCidrBlock pulumi.StringPtrOutput `pulumi:"destinationCidrBlock"` // The IPv6 CIDR block used for the destination match. @@ -101,6 +103,8 @@ func (RouteState) ElementType() reflect.Type { type routeArgs struct { // The ID of the carrier gateway. CarrierGatewayId *string `pulumi:"carrierGatewayId"` + // The Amazon Resource Name (ARN) of the core network. + CoreNetworkArn *string `pulumi:"coreNetworkArn"` // The IPv4 CIDR block used for the destination match. DestinationCidrBlock *string `pulumi:"destinationCidrBlock"` // The IPv6 CIDR block used for the destination match. @@ -133,6 +137,8 @@ type routeArgs struct { type RouteArgs struct { // The ID of the carrier gateway. CarrierGatewayId pulumi.StringPtrInput + // The Amazon Resource Name (ARN) of the core network. + CoreNetworkArn pulumi.StringPtrInput // The IPv4 CIDR block used for the destination match. DestinationCidrBlock pulumi.StringPtrInput // The IPv6 CIDR block used for the destination match. @@ -220,6 +226,11 @@ func (o RouteOutput) CidrBlock() pulumi.StringOutput { return o.ApplyT(func(v *Route) pulumi.StringOutput { return v.CidrBlock }).(pulumi.StringOutput) } +// The Amazon Resource Name (ARN) of the core network. +func (o RouteOutput) CoreNetworkArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Route) pulumi.StringPtrOutput { return v.CoreNetworkArn }).(pulumi.StringPtrOutput) +} + // The IPv4 CIDR block used for the destination match. func (o RouteOutput) DestinationCidrBlock() pulumi.StringPtrOutput { return o.ApplyT(func(v *Route) pulumi.StringPtrOutput { return v.DestinationCidrBlock }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/ec2/securityGroupEgress.go b/sdk/go/aws/ec2/securityGroupEgress.go index 399eec5170..4875b2ba6c 100644 --- a/sdk/go/aws/ec2/securityGroupEgress.go +++ b/sdk/go/aws/ec2/securityGroupEgress.go @@ -14,20 +14,27 @@ import ( ) // Resource Type definition for AWS::EC2::SecurityGroupEgress -// -// Deprecated: SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type SecurityGroupEgress struct { pulumi.CustomResourceState - CidrIp pulumi.StringPtrOutput `pulumi:"cidrIp"` - CidrIpv6 pulumi.StringPtrOutput `pulumi:"cidrIpv6"` - Description pulumi.StringPtrOutput `pulumi:"description"` - DestinationPrefixListId pulumi.StringPtrOutput `pulumi:"destinationPrefixListId"` + // The IPv4 ranges + CidrIp pulumi.StringPtrOutput `pulumi:"cidrIp"` + // [VPC only] The IPv6 ranges + CidrIpv6 pulumi.StringPtrOutput `pulumi:"cidrIpv6"` + // Resource Type definition for an egress (outbound) security group rule. + Description pulumi.StringPtrOutput `pulumi:"description"` + // [EC2-VPC only] The ID of a prefix list. + DestinationPrefixListId pulumi.StringPtrOutput `pulumi:"destinationPrefixListId"` + // You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). DestinationSecurityGroupId pulumi.StringPtrOutput `pulumi:"destinationSecurityGroupId"` - FromPort pulumi.IntPtrOutput `pulumi:"fromPort"` - GroupId pulumi.StringOutput `pulumi:"groupId"` - IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"` - ToPort pulumi.IntPtrOutput `pulumi:"toPort"` + // The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + FromPort pulumi.IntPtrOutput `pulumi:"fromPort"` + // The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + GroupId pulumi.StringOutput `pulumi:"groupId"` + // [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + IpProtocol pulumi.StringOutput `pulumi:"ipProtocol"` + // The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + ToPort pulumi.IntPtrOutput `pulumi:"toPort"` } // NewSecurityGroupEgress registers a new resource with the given unique name, arguments, and options. @@ -87,28 +94,46 @@ func (SecurityGroupEgressState) ElementType() reflect.Type { } type securityGroupEgressArgs struct { - CidrIp *string `pulumi:"cidrIp"` - CidrIpv6 *string `pulumi:"cidrIpv6"` - Description *string `pulumi:"description"` - DestinationPrefixListId *string `pulumi:"destinationPrefixListId"` + // The IPv4 ranges + CidrIp *string `pulumi:"cidrIp"` + // [VPC only] The IPv6 ranges + CidrIpv6 *string `pulumi:"cidrIpv6"` + // Resource Type definition for an egress (outbound) security group rule. + Description *string `pulumi:"description"` + // [EC2-VPC only] The ID of a prefix list. + DestinationPrefixListId *string `pulumi:"destinationPrefixListId"` + // You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). DestinationSecurityGroupId *string `pulumi:"destinationSecurityGroupId"` - FromPort *int `pulumi:"fromPort"` - GroupId string `pulumi:"groupId"` - IpProtocol string `pulumi:"ipProtocol"` - ToPort *int `pulumi:"toPort"` + // The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + FromPort *int `pulumi:"fromPort"` + // The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + GroupId string `pulumi:"groupId"` + // [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + IpProtocol string `pulumi:"ipProtocol"` + // The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + ToPort *int `pulumi:"toPort"` } // The set of arguments for constructing a SecurityGroupEgress resource. type SecurityGroupEgressArgs struct { - CidrIp pulumi.StringPtrInput - CidrIpv6 pulumi.StringPtrInput - Description pulumi.StringPtrInput - DestinationPrefixListId pulumi.StringPtrInput + // The IPv4 ranges + CidrIp pulumi.StringPtrInput + // [VPC only] The IPv6 ranges + CidrIpv6 pulumi.StringPtrInput + // Resource Type definition for an egress (outbound) security group rule. + Description pulumi.StringPtrInput + // [EC2-VPC only] The ID of a prefix list. + DestinationPrefixListId pulumi.StringPtrInput + // You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). DestinationSecurityGroupId pulumi.StringPtrInput - FromPort pulumi.IntPtrInput - GroupId pulumi.StringInput - IpProtocol pulumi.StringInput - ToPort pulumi.IntPtrInput + // The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + FromPort pulumi.IntPtrInput + // The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + GroupId pulumi.StringInput + // [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + IpProtocol pulumi.StringInput + // The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + ToPort pulumi.IntPtrInput } func (SecurityGroupEgressArgs) ElementType() reflect.Type { @@ -160,38 +185,47 @@ func (o SecurityGroupEgressOutput) ToOutput(ctx context.Context) pulumix.Output[ } } +// The IPv4 ranges func (o SecurityGroupEgressOutput) CidrIp() pulumi.StringPtrOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.StringPtrOutput { return v.CidrIp }).(pulumi.StringPtrOutput) } +// [VPC only] The IPv6 ranges func (o SecurityGroupEgressOutput) CidrIpv6() pulumi.StringPtrOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.StringPtrOutput { return v.CidrIpv6 }).(pulumi.StringPtrOutput) } +// Resource Type definition for an egress (outbound) security group rule. func (o SecurityGroupEgressOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// [EC2-VPC only] The ID of a prefix list. func (o SecurityGroupEgressOutput) DestinationPrefixListId() pulumi.StringPtrOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.StringPtrOutput { return v.DestinationPrefixListId }).(pulumi.StringPtrOutput) } +// You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). func (o SecurityGroupEgressOutput) DestinationSecurityGroupId() pulumi.StringPtrOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.StringPtrOutput { return v.DestinationSecurityGroupId }).(pulumi.StringPtrOutput) } +// The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. func (o SecurityGroupEgressOutput) FromPort() pulumi.IntPtrOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.IntPtrOutput { return v.FromPort }).(pulumi.IntPtrOutput) } +// The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. func (o SecurityGroupEgressOutput) GroupId() pulumi.StringOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.StringOutput { return v.GroupId }).(pulumi.StringOutput) } +// [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. func (o SecurityGroupEgressOutput) IpProtocol() pulumi.StringOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.StringOutput { return v.IpProtocol }).(pulumi.StringOutput) } +// The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. func (o SecurityGroupEgressOutput) ToPort() pulumi.IntPtrOutput { return o.ApplyT(func(v *SecurityGroupEgress) pulumi.IntPtrOutput { return v.ToPort }).(pulumi.IntPtrOutput) } diff --git a/sdk/go/aws/ec2/snapshotBlockPublicAccess.go b/sdk/go/aws/ec2/snapshotBlockPublicAccess.go new file mode 100644 index 0000000000..7e34521d09 --- /dev/null +++ b/sdk/go/aws/ec2/snapshotBlockPublicAccess.go @@ -0,0 +1,141 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package ec2 + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess +type SnapshotBlockPublicAccess struct { + pulumi.CustomResourceState + + // The identifier for the specified AWS account. + AccountId pulumi.StringOutput `pulumi:"accountId"` + // The state of EBS Snapshot Block Public Access. + State SnapshotBlockPublicAccessStateEnumOutput `pulumi:"state"` +} + +// NewSnapshotBlockPublicAccess registers a new resource with the given unique name, arguments, and options. +func NewSnapshotBlockPublicAccess(ctx *pulumi.Context, + name string, args *SnapshotBlockPublicAccessArgs, opts ...pulumi.ResourceOption) (*SnapshotBlockPublicAccess, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.State == nil { + return nil, errors.New("invalid value for required argument 'State'") + } + opts = internal.PkgResourceDefaultOpts(opts) + var resource SnapshotBlockPublicAccess + err := ctx.RegisterResource("aws-native:ec2:SnapshotBlockPublicAccess", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetSnapshotBlockPublicAccess gets an existing SnapshotBlockPublicAccess 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 GetSnapshotBlockPublicAccess(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *SnapshotBlockPublicAccessState, opts ...pulumi.ResourceOption) (*SnapshotBlockPublicAccess, error) { + var resource SnapshotBlockPublicAccess + err := ctx.ReadResource("aws-native:ec2:SnapshotBlockPublicAccess", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering SnapshotBlockPublicAccess resources. +type snapshotBlockPublicAccessState struct { +} + +type SnapshotBlockPublicAccessState struct { +} + +func (SnapshotBlockPublicAccessState) ElementType() reflect.Type { + return reflect.TypeOf((*snapshotBlockPublicAccessState)(nil)).Elem() +} + +type snapshotBlockPublicAccessArgs struct { + // The state of EBS Snapshot Block Public Access. + State SnapshotBlockPublicAccessStateEnum `pulumi:"state"` +} + +// The set of arguments for constructing a SnapshotBlockPublicAccess resource. +type SnapshotBlockPublicAccessArgs struct { + // The state of EBS Snapshot Block Public Access. + State SnapshotBlockPublicAccessStateEnumInput +} + +func (SnapshotBlockPublicAccessArgs) ElementType() reflect.Type { + return reflect.TypeOf((*snapshotBlockPublicAccessArgs)(nil)).Elem() +} + +type SnapshotBlockPublicAccessInput interface { + pulumi.Input + + ToSnapshotBlockPublicAccessOutput() SnapshotBlockPublicAccessOutput + ToSnapshotBlockPublicAccessOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessOutput +} + +func (*SnapshotBlockPublicAccess) ElementType() reflect.Type { + return reflect.TypeOf((**SnapshotBlockPublicAccess)(nil)).Elem() +} + +func (i *SnapshotBlockPublicAccess) ToSnapshotBlockPublicAccessOutput() SnapshotBlockPublicAccessOutput { + return i.ToSnapshotBlockPublicAccessOutputWithContext(context.Background()) +} + +func (i *SnapshotBlockPublicAccess) ToSnapshotBlockPublicAccessOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessOutput { + return pulumi.ToOutputWithContext(ctx, i).(SnapshotBlockPublicAccessOutput) +} + +func (i *SnapshotBlockPublicAccess) ToOutput(ctx context.Context) pulumix.Output[*SnapshotBlockPublicAccess] { + return pulumix.Output[*SnapshotBlockPublicAccess]{ + OutputState: i.ToSnapshotBlockPublicAccessOutputWithContext(ctx).OutputState, + } +} + +type SnapshotBlockPublicAccessOutput struct{ *pulumi.OutputState } + +func (SnapshotBlockPublicAccessOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SnapshotBlockPublicAccess)(nil)).Elem() +} + +func (o SnapshotBlockPublicAccessOutput) ToSnapshotBlockPublicAccessOutput() SnapshotBlockPublicAccessOutput { + return o +} + +func (o SnapshotBlockPublicAccessOutput) ToSnapshotBlockPublicAccessOutputWithContext(ctx context.Context) SnapshotBlockPublicAccessOutput { + return o +} + +func (o SnapshotBlockPublicAccessOutput) ToOutput(ctx context.Context) pulumix.Output[*SnapshotBlockPublicAccess] { + return pulumix.Output[*SnapshotBlockPublicAccess]{ + OutputState: o.OutputState, + } +} + +// The identifier for the specified AWS account. +func (o SnapshotBlockPublicAccessOutput) AccountId() pulumi.StringOutput { + return o.ApplyT(func(v *SnapshotBlockPublicAccess) pulumi.StringOutput { return v.AccountId }).(pulumi.StringOutput) +} + +// The state of EBS Snapshot Block Public Access. +func (o SnapshotBlockPublicAccessOutput) State() SnapshotBlockPublicAccessStateEnumOutput { + return o.ApplyT(func(v *SnapshotBlockPublicAccess) SnapshotBlockPublicAccessStateEnumOutput { return v.State }).(SnapshotBlockPublicAccessStateEnumOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*SnapshotBlockPublicAccessInput)(nil)).Elem(), &SnapshotBlockPublicAccess{}) + pulumi.RegisterOutputType(SnapshotBlockPublicAccessOutput{}) +} diff --git a/sdk/go/aws/ecs/pulumiEnums.go b/sdk/go/aws/ecs/pulumiEnums.go index f7433d50aa..9422b4ed64 100644 --- a/sdk/go/aws/ecs/pulumiEnums.go +++ b/sdk/go/aws/ecs/pulumiEnums.go @@ -11,6 +11,188 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) +type CapacityProviderAutoScalingGroupProviderManagedDraining string + +const ( + CapacityProviderAutoScalingGroupProviderManagedDrainingDisabled = CapacityProviderAutoScalingGroupProviderManagedDraining("DISABLED") + CapacityProviderAutoScalingGroupProviderManagedDrainingEnabled = CapacityProviderAutoScalingGroupProviderManagedDraining("ENABLED") +) + +func (CapacityProviderAutoScalingGroupProviderManagedDraining) ElementType() reflect.Type { + return reflect.TypeOf((*CapacityProviderAutoScalingGroupProviderManagedDraining)(nil)).Elem() +} + +func (e CapacityProviderAutoScalingGroupProviderManagedDraining) ToCapacityProviderAutoScalingGroupProviderManagedDrainingOutput() CapacityProviderAutoScalingGroupProviderManagedDrainingOutput { + return pulumi.ToOutput(e).(CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) +} + +func (e CapacityProviderAutoScalingGroupProviderManagedDraining) ToCapacityProviderAutoScalingGroupProviderManagedDrainingOutputWithContext(ctx context.Context) CapacityProviderAutoScalingGroupProviderManagedDrainingOutput { + return pulumi.ToOutputWithContext(ctx, e).(CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) +} + +func (e CapacityProviderAutoScalingGroupProviderManagedDraining) ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput() CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return e.ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(context.Background()) +} + +func (e CapacityProviderAutoScalingGroupProviderManagedDraining) ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(ctx context.Context) CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return CapacityProviderAutoScalingGroupProviderManagedDraining(e).ToCapacityProviderAutoScalingGroupProviderManagedDrainingOutputWithContext(ctx).ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(ctx) +} + +func (e CapacityProviderAutoScalingGroupProviderManagedDraining) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CapacityProviderAutoScalingGroupProviderManagedDraining) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CapacityProviderAutoScalingGroupProviderManagedDraining) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e CapacityProviderAutoScalingGroupProviderManagedDraining) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type CapacityProviderAutoScalingGroupProviderManagedDrainingOutput struct{ *pulumi.OutputState } + +func (CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CapacityProviderAutoScalingGroupProviderManagedDraining)(nil)).Elem() +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToCapacityProviderAutoScalingGroupProviderManagedDrainingOutput() CapacityProviderAutoScalingGroupProviderManagedDrainingOutput { + return o +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToCapacityProviderAutoScalingGroupProviderManagedDrainingOutputWithContext(ctx context.Context) CapacityProviderAutoScalingGroupProviderManagedDrainingOutput { + return o +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput() CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return o.ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(context.Background()) +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(ctx context.Context) CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CapacityProviderAutoScalingGroupProviderManagedDraining) *CapacityProviderAutoScalingGroupProviderManagedDraining { + return &v + }).(CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToOutput(ctx context.Context) pulumix.Output[CapacityProviderAutoScalingGroupProviderManagedDraining] { + return pulumix.Output[CapacityProviderAutoScalingGroupProviderManagedDraining]{ + OutputState: o.OutputState, + } +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CapacityProviderAutoScalingGroupProviderManagedDraining) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CapacityProviderAutoScalingGroupProviderManagedDraining) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput struct{ *pulumi.OutputState } + +func (CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CapacityProviderAutoScalingGroupProviderManagedDraining)(nil)).Elem() +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput() CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return o +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(ctx context.Context) CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return o +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CapacityProviderAutoScalingGroupProviderManagedDraining] { + return pulumix.Output[*CapacityProviderAutoScalingGroupProviderManagedDraining]{ + OutputState: o.OutputState, + } +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) Elem() CapacityProviderAutoScalingGroupProviderManagedDrainingOutput { + return o.ApplyT(func(v *CapacityProviderAutoScalingGroupProviderManagedDraining) CapacityProviderAutoScalingGroupProviderManagedDraining { + if v != nil { + return *v + } + var ret CapacityProviderAutoScalingGroupProviderManagedDraining + return ret + }).(CapacityProviderAutoScalingGroupProviderManagedDrainingOutput) +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *CapacityProviderAutoScalingGroupProviderManagedDraining) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// CapacityProviderAutoScalingGroupProviderManagedDrainingInput is an input type that accepts CapacityProviderAutoScalingGroupProviderManagedDrainingArgs and CapacityProviderAutoScalingGroupProviderManagedDrainingOutput values. +// You can construct a concrete instance of `CapacityProviderAutoScalingGroupProviderManagedDrainingInput` via: +// +// CapacityProviderAutoScalingGroupProviderManagedDrainingArgs{...} +type CapacityProviderAutoScalingGroupProviderManagedDrainingInput interface { + pulumi.Input + + ToCapacityProviderAutoScalingGroupProviderManagedDrainingOutput() CapacityProviderAutoScalingGroupProviderManagedDrainingOutput + ToCapacityProviderAutoScalingGroupProviderManagedDrainingOutputWithContext(context.Context) CapacityProviderAutoScalingGroupProviderManagedDrainingOutput +} + +var capacityProviderAutoScalingGroupProviderManagedDrainingPtrType = reflect.TypeOf((**CapacityProviderAutoScalingGroupProviderManagedDraining)(nil)).Elem() + +type CapacityProviderAutoScalingGroupProviderManagedDrainingPtrInput interface { + pulumi.Input + + ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput() CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput + ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(context.Context) CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput +} + +type capacityProviderAutoScalingGroupProviderManagedDrainingPtr string + +func CapacityProviderAutoScalingGroupProviderManagedDrainingPtr(v string) CapacityProviderAutoScalingGroupProviderManagedDrainingPtrInput { + return (*capacityProviderAutoScalingGroupProviderManagedDrainingPtr)(&v) +} + +func (*capacityProviderAutoScalingGroupProviderManagedDrainingPtr) ElementType() reflect.Type { + return capacityProviderAutoScalingGroupProviderManagedDrainingPtrType +} + +func (in *capacityProviderAutoScalingGroupProviderManagedDrainingPtr) ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput() CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return pulumi.ToOutput(in).(CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) +} + +func (in *capacityProviderAutoScalingGroupProviderManagedDrainingPtr) ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(ctx context.Context) CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) +} + +func (in *capacityProviderAutoScalingGroupProviderManagedDrainingPtr) ToOutput(ctx context.Context) pulumix.Output[*CapacityProviderAutoScalingGroupProviderManagedDraining] { + return pulumix.Output[*CapacityProviderAutoScalingGroupProviderManagedDraining]{ + OutputState: in.ToCapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutputWithContext(ctx).OutputState, + } +} + type CapacityProviderAutoScalingGroupProviderManagedTerminationProtection string const ( @@ -2764,6 +2946,8 @@ func (in *taskSetScaleUnitPtr) ToOutput(ctx context.Context) pulumix.Output[*Tas } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*CapacityProviderAutoScalingGroupProviderManagedDrainingInput)(nil)).Elem(), CapacityProviderAutoScalingGroupProviderManagedDraining("DISABLED")) + pulumi.RegisterInputType(reflect.TypeOf((*CapacityProviderAutoScalingGroupProviderManagedDrainingPtrInput)(nil)).Elem(), CapacityProviderAutoScalingGroupProviderManagedDraining("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*CapacityProviderAutoScalingGroupProviderManagedTerminationProtectionInput)(nil)).Elem(), CapacityProviderAutoScalingGroupProviderManagedTerminationProtection("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*CapacityProviderAutoScalingGroupProviderManagedTerminationProtectionPtrInput)(nil)).Elem(), CapacityProviderAutoScalingGroupProviderManagedTerminationProtection("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*CapacityProviderManagedScalingStatusInput)(nil)).Elem(), CapacityProviderManagedScalingStatus("DISABLED")) @@ -2794,6 +2978,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*TaskSetLaunchTypePtrInput)(nil)).Elem(), TaskSetLaunchType("EC2")) pulumi.RegisterInputType(reflect.TypeOf((*TaskSetScaleUnitInput)(nil)).Elem(), TaskSetScaleUnit("PERCENT")) pulumi.RegisterInputType(reflect.TypeOf((*TaskSetScaleUnitPtrInput)(nil)).Elem(), TaskSetScaleUnit("PERCENT")) + pulumi.RegisterOutputType(CapacityProviderAutoScalingGroupProviderManagedDrainingOutput{}) + pulumi.RegisterOutputType(CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput{}) pulumi.RegisterOutputType(CapacityProviderAutoScalingGroupProviderManagedTerminationProtectionOutput{}) pulumi.RegisterOutputType(CapacityProviderAutoScalingGroupProviderManagedTerminationProtectionPtrOutput{}) pulumi.RegisterOutputType(CapacityProviderManagedScalingStatusOutput{}) diff --git a/sdk/go/aws/ecs/pulumiTypes.go b/sdk/go/aws/ecs/pulumiTypes.go index 1819489b46..5b6ccb7cc4 100644 --- a/sdk/go/aws/ecs/pulumiTypes.go +++ b/sdk/go/aws/ecs/pulumiTypes.go @@ -16,6 +16,7 @@ var _ = internal.GetEnvOrDefault type CapacityProviderAutoScalingGroupProvider struct { AutoScalingGroupArn string `pulumi:"autoScalingGroupArn"` + ManagedDraining *CapacityProviderAutoScalingGroupProviderManagedDraining `pulumi:"managedDraining"` ManagedScaling *CapacityProviderManagedScaling `pulumi:"managedScaling"` ManagedTerminationProtection *CapacityProviderAutoScalingGroupProviderManagedTerminationProtection `pulumi:"managedTerminationProtection"` } @@ -33,6 +34,7 @@ type CapacityProviderAutoScalingGroupProviderInput interface { type CapacityProviderAutoScalingGroupProviderArgs struct { AutoScalingGroupArn pulumi.StringInput `pulumi:"autoScalingGroupArn"` + ManagedDraining CapacityProviderAutoScalingGroupProviderManagedDrainingPtrInput `pulumi:"managedDraining"` ManagedScaling CapacityProviderManagedScalingPtrInput `pulumi:"managedScaling"` ManagedTerminationProtection CapacityProviderAutoScalingGroupProviderManagedTerminationProtectionPtrInput `pulumi:"managedTerminationProtection"` } @@ -79,6 +81,12 @@ func (o CapacityProviderAutoScalingGroupProviderOutput) AutoScalingGroupArn() pu return o.ApplyT(func(v CapacityProviderAutoScalingGroupProvider) string { return v.AutoScalingGroupArn }).(pulumi.StringOutput) } +func (o CapacityProviderAutoScalingGroupProviderOutput) ManagedDraining() CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return o.ApplyT(func(v CapacityProviderAutoScalingGroupProvider) *CapacityProviderAutoScalingGroupProviderManagedDraining { + return v.ManagedDraining + }).(CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) +} + func (o CapacityProviderAutoScalingGroupProviderOutput) ManagedScaling() CapacityProviderManagedScalingPtrOutput { return o.ApplyT(func(v CapacityProviderAutoScalingGroupProvider) *CapacityProviderManagedScaling { return v.ManagedScaling @@ -130,6 +138,15 @@ func (o CapacityProviderAutoScalingGroupProviderPtrOutput) AutoScalingGroupArn() }).(pulumi.StringPtrOutput) } +func (o CapacityProviderAutoScalingGroupProviderPtrOutput) ManagedDraining() CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput { + return o.ApplyT(func(v *CapacityProviderAutoScalingGroupProvider) *CapacityProviderAutoScalingGroupProviderManagedDraining { + if v == nil { + return nil + } + return v.ManagedDraining + }).(CapacityProviderAutoScalingGroupProviderManagedDrainingPtrOutput) +} + func (o CapacityProviderAutoScalingGroupProviderPtrOutput) ManagedScaling() CapacityProviderManagedScalingPtrOutput { return o.ApplyT(func(v *CapacityProviderAutoScalingGroupProvider) *CapacityProviderManagedScaling { if v == nil { diff --git a/sdk/go/aws/eks/cluster.go b/sdk/go/aws/eks/cluster.go index 88c9eed341..cb1644de0e 100644 --- a/sdk/go/aws/eks/cluster.go +++ b/sdk/go/aws/eks/cluster.go @@ -17,6 +17,7 @@ import ( type Cluster struct { pulumi.CustomResourceState + AccessConfig ClusterAccessConfigPtrOutput `pulumi:"accessConfig"` // The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod. Arn pulumi.StringOutput `pulumi:"arn"` // The certificate-authority-data for your cluster. @@ -58,6 +59,7 @@ func NewCluster(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'RoleArn'") } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "accessConfig.bootstrapClusterCreatorAdminPermissions", "encryptionConfig[*]", "kubernetesNetworkConfig", "name", @@ -98,6 +100,7 @@ func (ClusterState) ElementType() reflect.Type { } type clusterArgs struct { + AccessConfig *ClusterAccessConfig `pulumi:"accessConfig"` EncryptionConfig []ClusterEncryptionConfig `pulumi:"encryptionConfig"` KubernetesNetworkConfig *ClusterKubernetesNetworkConfig `pulumi:"kubernetesNetworkConfig"` Logging *Logging `pulumi:"logging"` @@ -115,6 +118,7 @@ type clusterArgs struct { // The set of arguments for constructing a Cluster resource. type ClusterArgs struct { + AccessConfig ClusterAccessConfigPtrInput EncryptionConfig ClusterEncryptionConfigArrayInput KubernetesNetworkConfig ClusterKubernetesNetworkConfigPtrInput Logging LoggingPtrInput @@ -179,6 +183,10 @@ func (o ClusterOutput) ToOutput(ctx context.Context) pulumix.Output[*Cluster] { } } +func (o ClusterOutput) AccessConfig() ClusterAccessConfigPtrOutput { + return o.ApplyT(func(v *Cluster) ClusterAccessConfigPtrOutput { return v.AccessConfig }).(ClusterAccessConfigPtrOutput) +} + // The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod. func (o ClusterOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *Cluster) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) diff --git a/sdk/go/aws/eks/getCluster.go b/sdk/go/aws/eks/getCluster.go index 3e4babf24f..d8582a73bb 100644 --- a/sdk/go/aws/eks/getCluster.go +++ b/sdk/go/aws/eks/getCluster.go @@ -29,6 +29,7 @@ type LookupClusterArgs struct { } type LookupClusterResult struct { + AccessConfig *ClusterAccessConfig `pulumi:"accessConfig"` // The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod. Arn *string `pulumi:"arn"` // The certificate-authority-data for your cluster. @@ -93,6 +94,10 @@ func (o LookupClusterResultOutput) ToOutput(ctx context.Context) pulumix.Output[ } } +func (o LookupClusterResultOutput) AccessConfig() ClusterAccessConfigPtrOutput { + return o.ApplyT(func(v LookupClusterResult) *ClusterAccessConfig { return v.AccessConfig }).(ClusterAccessConfigPtrOutput) +} + // The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod. func (o LookupClusterResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupClusterResult) *string { return v.Arn }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/eks/pulumiEnums.go b/sdk/go/aws/eks/pulumiEnums.go index b0e92dee65..d7edcaff5f 100644 --- a/sdk/go/aws/eks/pulumiEnums.go +++ b/sdk/go/aws/eks/pulumiEnums.go @@ -195,6 +195,190 @@ func (in *addonResolveConflictsPtr) ToOutput(ctx context.Context) pulumix.Output } } +// Specify the authentication mode that should be used to create your cluster. +type ClusterAccessConfigAuthenticationMode string + +const ( + ClusterAccessConfigAuthenticationModeConfigMap = ClusterAccessConfigAuthenticationMode("CONFIG_MAP") + ClusterAccessConfigAuthenticationModeApiAndConfigMap = ClusterAccessConfigAuthenticationMode("API_AND_CONFIG_MAP") + ClusterAccessConfigAuthenticationModeApi = ClusterAccessConfigAuthenticationMode("API") +) + +func (ClusterAccessConfigAuthenticationMode) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterAccessConfigAuthenticationMode)(nil)).Elem() +} + +func (e ClusterAccessConfigAuthenticationMode) ToClusterAccessConfigAuthenticationModeOutput() ClusterAccessConfigAuthenticationModeOutput { + return pulumi.ToOutput(e).(ClusterAccessConfigAuthenticationModeOutput) +} + +func (e ClusterAccessConfigAuthenticationMode) ToClusterAccessConfigAuthenticationModeOutputWithContext(ctx context.Context) ClusterAccessConfigAuthenticationModeOutput { + return pulumi.ToOutputWithContext(ctx, e).(ClusterAccessConfigAuthenticationModeOutput) +} + +func (e ClusterAccessConfigAuthenticationMode) ToClusterAccessConfigAuthenticationModePtrOutput() ClusterAccessConfigAuthenticationModePtrOutput { + return e.ToClusterAccessConfigAuthenticationModePtrOutputWithContext(context.Background()) +} + +func (e ClusterAccessConfigAuthenticationMode) ToClusterAccessConfigAuthenticationModePtrOutputWithContext(ctx context.Context) ClusterAccessConfigAuthenticationModePtrOutput { + return ClusterAccessConfigAuthenticationMode(e).ToClusterAccessConfigAuthenticationModeOutputWithContext(ctx).ToClusterAccessConfigAuthenticationModePtrOutputWithContext(ctx) +} + +func (e ClusterAccessConfigAuthenticationMode) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ClusterAccessConfigAuthenticationMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ClusterAccessConfigAuthenticationMode) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ClusterAccessConfigAuthenticationMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ClusterAccessConfigAuthenticationModeOutput struct{ *pulumi.OutputState } + +func (ClusterAccessConfigAuthenticationModeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterAccessConfigAuthenticationMode)(nil)).Elem() +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToClusterAccessConfigAuthenticationModeOutput() ClusterAccessConfigAuthenticationModeOutput { + return o +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToClusterAccessConfigAuthenticationModeOutputWithContext(ctx context.Context) ClusterAccessConfigAuthenticationModeOutput { + return o +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToClusterAccessConfigAuthenticationModePtrOutput() ClusterAccessConfigAuthenticationModePtrOutput { + return o.ToClusterAccessConfigAuthenticationModePtrOutputWithContext(context.Background()) +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToClusterAccessConfigAuthenticationModePtrOutputWithContext(ctx context.Context) ClusterAccessConfigAuthenticationModePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ClusterAccessConfigAuthenticationMode) *ClusterAccessConfigAuthenticationMode { + return &v + }).(ClusterAccessConfigAuthenticationModePtrOutput) +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToOutput(ctx context.Context) pulumix.Output[ClusterAccessConfigAuthenticationMode] { + return pulumix.Output[ClusterAccessConfigAuthenticationMode]{ + OutputState: o.OutputState, + } +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ClusterAccessConfigAuthenticationMode) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ClusterAccessConfigAuthenticationModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ClusterAccessConfigAuthenticationMode) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ClusterAccessConfigAuthenticationModePtrOutput struct{ *pulumi.OutputState } + +func (ClusterAccessConfigAuthenticationModePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterAccessConfigAuthenticationMode)(nil)).Elem() +} + +func (o ClusterAccessConfigAuthenticationModePtrOutput) ToClusterAccessConfigAuthenticationModePtrOutput() ClusterAccessConfigAuthenticationModePtrOutput { + return o +} + +func (o ClusterAccessConfigAuthenticationModePtrOutput) ToClusterAccessConfigAuthenticationModePtrOutputWithContext(ctx context.Context) ClusterAccessConfigAuthenticationModePtrOutput { + return o +} + +func (o ClusterAccessConfigAuthenticationModePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ClusterAccessConfigAuthenticationMode] { + return pulumix.Output[*ClusterAccessConfigAuthenticationMode]{ + OutputState: o.OutputState, + } +} + +func (o ClusterAccessConfigAuthenticationModePtrOutput) Elem() ClusterAccessConfigAuthenticationModeOutput { + return o.ApplyT(func(v *ClusterAccessConfigAuthenticationMode) ClusterAccessConfigAuthenticationMode { + if v != nil { + return *v + } + var ret ClusterAccessConfigAuthenticationMode + return ret + }).(ClusterAccessConfigAuthenticationModeOutput) +} + +func (o ClusterAccessConfigAuthenticationModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ClusterAccessConfigAuthenticationModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ClusterAccessConfigAuthenticationMode) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ClusterAccessConfigAuthenticationModeInput is an input type that accepts ClusterAccessConfigAuthenticationModeArgs and ClusterAccessConfigAuthenticationModeOutput values. +// You can construct a concrete instance of `ClusterAccessConfigAuthenticationModeInput` via: +// +// ClusterAccessConfigAuthenticationModeArgs{...} +type ClusterAccessConfigAuthenticationModeInput interface { + pulumi.Input + + ToClusterAccessConfigAuthenticationModeOutput() ClusterAccessConfigAuthenticationModeOutput + ToClusterAccessConfigAuthenticationModeOutputWithContext(context.Context) ClusterAccessConfigAuthenticationModeOutput +} + +var clusterAccessConfigAuthenticationModePtrType = reflect.TypeOf((**ClusterAccessConfigAuthenticationMode)(nil)).Elem() + +type ClusterAccessConfigAuthenticationModePtrInput interface { + pulumi.Input + + ToClusterAccessConfigAuthenticationModePtrOutput() ClusterAccessConfigAuthenticationModePtrOutput + ToClusterAccessConfigAuthenticationModePtrOutputWithContext(context.Context) ClusterAccessConfigAuthenticationModePtrOutput +} + +type clusterAccessConfigAuthenticationModePtr string + +func ClusterAccessConfigAuthenticationModePtr(v string) ClusterAccessConfigAuthenticationModePtrInput { + return (*clusterAccessConfigAuthenticationModePtr)(&v) +} + +func (*clusterAccessConfigAuthenticationModePtr) ElementType() reflect.Type { + return clusterAccessConfigAuthenticationModePtrType +} + +func (in *clusterAccessConfigAuthenticationModePtr) ToClusterAccessConfigAuthenticationModePtrOutput() ClusterAccessConfigAuthenticationModePtrOutput { + return pulumi.ToOutput(in).(ClusterAccessConfigAuthenticationModePtrOutput) +} + +func (in *clusterAccessConfigAuthenticationModePtr) ToClusterAccessConfigAuthenticationModePtrOutputWithContext(ctx context.Context) ClusterAccessConfigAuthenticationModePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ClusterAccessConfigAuthenticationModePtrOutput) +} + +func (in *clusterAccessConfigAuthenticationModePtr) ToOutput(ctx context.Context) pulumix.Output[*ClusterAccessConfigAuthenticationMode] { + return pulumix.Output[*ClusterAccessConfigAuthenticationMode]{ + OutputState: in.ToClusterAccessConfigAuthenticationModePtrOutputWithContext(ctx).OutputState, + } +} + // Ipv4 or Ipv6. You can only specify ipv6 for 1.21 and later clusters that use version 1.10.1 or later of the Amazon VPC CNI add-on type ClusterKubernetesNetworkConfigIpFamily string @@ -749,6 +933,8 @@ func (in *identityProviderConfigTypePtr) ToOutput(ctx context.Context) pulumix.O func init() { pulumi.RegisterInputType(reflect.TypeOf((*AddonResolveConflictsInput)(nil)).Elem(), AddonResolveConflicts("NONE")) pulumi.RegisterInputType(reflect.TypeOf((*AddonResolveConflictsPtrInput)(nil)).Elem(), AddonResolveConflicts("NONE")) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterAccessConfigAuthenticationModeInput)(nil)).Elem(), ClusterAccessConfigAuthenticationMode("CONFIG_MAP")) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterAccessConfigAuthenticationModePtrInput)(nil)).Elem(), ClusterAccessConfigAuthenticationMode("CONFIG_MAP")) pulumi.RegisterInputType(reflect.TypeOf((*ClusterKubernetesNetworkConfigIpFamilyInput)(nil)).Elem(), ClusterKubernetesNetworkConfigIpFamily("ipv4")) pulumi.RegisterInputType(reflect.TypeOf((*ClusterKubernetesNetworkConfigIpFamilyPtrInput)(nil)).Elem(), ClusterKubernetesNetworkConfigIpFamily("ipv4")) pulumi.RegisterInputType(reflect.TypeOf((*ClusterLoggingTypeConfigTypeInput)(nil)).Elem(), ClusterLoggingTypeConfigType("api")) @@ -757,6 +943,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*IdentityProviderConfigTypePtrInput)(nil)).Elem(), IdentityProviderConfigType("oidc")) pulumi.RegisterOutputType(AddonResolveConflictsOutput{}) pulumi.RegisterOutputType(AddonResolveConflictsPtrOutput{}) + pulumi.RegisterOutputType(ClusterAccessConfigAuthenticationModeOutput{}) + pulumi.RegisterOutputType(ClusterAccessConfigAuthenticationModePtrOutput{}) pulumi.RegisterOutputType(ClusterKubernetesNetworkConfigIpFamilyOutput{}) pulumi.RegisterOutputType(ClusterKubernetesNetworkConfigIpFamilyPtrOutput{}) pulumi.RegisterOutputType(ClusterLoggingTypeConfigTypeOutput{}) diff --git a/sdk/go/aws/eks/pulumiTypes.go b/sdk/go/aws/eks/pulumiTypes.go index 44b31032a6..96e9947997 100644 --- a/sdk/go/aws/eks/pulumiTypes.go +++ b/sdk/go/aws/eks/pulumiTypes.go @@ -147,6 +147,189 @@ func (o AddonTagArrayOutput) Index(i pulumi.IntInput) AddonTagOutput { }).(AddonTagOutput) } +// An object representing the Access Config to use for the cluster. +type ClusterAccessConfig struct { + // Specify the authentication mode that should be used to create your cluster. + AuthenticationMode *ClusterAccessConfigAuthenticationMode `pulumi:"authenticationMode"` + // Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + BootstrapClusterCreatorAdminPermissions *bool `pulumi:"bootstrapClusterCreatorAdminPermissions"` +} + +// ClusterAccessConfigInput is an input type that accepts ClusterAccessConfigArgs and ClusterAccessConfigOutput values. +// You can construct a concrete instance of `ClusterAccessConfigInput` via: +// +// ClusterAccessConfigArgs{...} +type ClusterAccessConfigInput interface { + pulumi.Input + + ToClusterAccessConfigOutput() ClusterAccessConfigOutput + ToClusterAccessConfigOutputWithContext(context.Context) ClusterAccessConfigOutput +} + +// An object representing the Access Config to use for the cluster. +type ClusterAccessConfigArgs struct { + // Specify the authentication mode that should be used to create your cluster. + AuthenticationMode ClusterAccessConfigAuthenticationModePtrInput `pulumi:"authenticationMode"` + // Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + BootstrapClusterCreatorAdminPermissions pulumi.BoolPtrInput `pulumi:"bootstrapClusterCreatorAdminPermissions"` +} + +func (ClusterAccessConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterAccessConfig)(nil)).Elem() +} + +func (i ClusterAccessConfigArgs) ToClusterAccessConfigOutput() ClusterAccessConfigOutput { + return i.ToClusterAccessConfigOutputWithContext(context.Background()) +} + +func (i ClusterAccessConfigArgs) ToClusterAccessConfigOutputWithContext(ctx context.Context) ClusterAccessConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterAccessConfigOutput) +} + +func (i ClusterAccessConfigArgs) ToOutput(ctx context.Context) pulumix.Output[ClusterAccessConfig] { + return pulumix.Output[ClusterAccessConfig]{ + OutputState: i.ToClusterAccessConfigOutputWithContext(ctx).OutputState, + } +} + +func (i ClusterAccessConfigArgs) ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput { + return i.ToClusterAccessConfigPtrOutputWithContext(context.Background()) +} + +func (i ClusterAccessConfigArgs) ToClusterAccessConfigPtrOutputWithContext(ctx context.Context) ClusterAccessConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterAccessConfigOutput).ToClusterAccessConfigPtrOutputWithContext(ctx) +} + +// ClusterAccessConfigPtrInput is an input type that accepts ClusterAccessConfigArgs, ClusterAccessConfigPtr and ClusterAccessConfigPtrOutput values. +// You can construct a concrete instance of `ClusterAccessConfigPtrInput` via: +// +// ClusterAccessConfigArgs{...} +// +// or: +// +// nil +type ClusterAccessConfigPtrInput interface { + pulumi.Input + + ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput + ToClusterAccessConfigPtrOutputWithContext(context.Context) ClusterAccessConfigPtrOutput +} + +type clusterAccessConfigPtrType ClusterAccessConfigArgs + +func ClusterAccessConfigPtr(v *ClusterAccessConfigArgs) ClusterAccessConfigPtrInput { + return (*clusterAccessConfigPtrType)(v) +} + +func (*clusterAccessConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterAccessConfig)(nil)).Elem() +} + +func (i *clusterAccessConfigPtrType) ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput { + return i.ToClusterAccessConfigPtrOutputWithContext(context.Background()) +} + +func (i *clusterAccessConfigPtrType) ToClusterAccessConfigPtrOutputWithContext(ctx context.Context) ClusterAccessConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterAccessConfigPtrOutput) +} + +func (i *clusterAccessConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*ClusterAccessConfig] { + return pulumix.Output[*ClusterAccessConfig]{ + OutputState: i.ToClusterAccessConfigPtrOutputWithContext(ctx).OutputState, + } +} + +// An object representing the Access Config to use for the cluster. +type ClusterAccessConfigOutput struct{ *pulumi.OutputState } + +func (ClusterAccessConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterAccessConfig)(nil)).Elem() +} + +func (o ClusterAccessConfigOutput) ToClusterAccessConfigOutput() ClusterAccessConfigOutput { + return o +} + +func (o ClusterAccessConfigOutput) ToClusterAccessConfigOutputWithContext(ctx context.Context) ClusterAccessConfigOutput { + return o +} + +func (o ClusterAccessConfigOutput) ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput { + return o.ToClusterAccessConfigPtrOutputWithContext(context.Background()) +} + +func (o ClusterAccessConfigOutput) ToClusterAccessConfigPtrOutputWithContext(ctx context.Context) ClusterAccessConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ClusterAccessConfig) *ClusterAccessConfig { + return &v + }).(ClusterAccessConfigPtrOutput) +} + +func (o ClusterAccessConfigOutput) ToOutput(ctx context.Context) pulumix.Output[ClusterAccessConfig] { + return pulumix.Output[ClusterAccessConfig]{ + OutputState: o.OutputState, + } +} + +// Specify the authentication mode that should be used to create your cluster. +func (o ClusterAccessConfigOutput) AuthenticationMode() ClusterAccessConfigAuthenticationModePtrOutput { + return o.ApplyT(func(v ClusterAccessConfig) *ClusterAccessConfigAuthenticationMode { return v.AuthenticationMode }).(ClusterAccessConfigAuthenticationModePtrOutput) +} + +// Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. +func (o ClusterAccessConfigOutput) BootstrapClusterCreatorAdminPermissions() pulumi.BoolPtrOutput { + return o.ApplyT(func(v ClusterAccessConfig) *bool { return v.BootstrapClusterCreatorAdminPermissions }).(pulumi.BoolPtrOutput) +} + +type ClusterAccessConfigPtrOutput struct{ *pulumi.OutputState } + +func (ClusterAccessConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ClusterAccessConfig)(nil)).Elem() +} + +func (o ClusterAccessConfigPtrOutput) ToClusterAccessConfigPtrOutput() ClusterAccessConfigPtrOutput { + return o +} + +func (o ClusterAccessConfigPtrOutput) ToClusterAccessConfigPtrOutputWithContext(ctx context.Context) ClusterAccessConfigPtrOutput { + return o +} + +func (o ClusterAccessConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ClusterAccessConfig] { + return pulumix.Output[*ClusterAccessConfig]{ + OutputState: o.OutputState, + } +} + +func (o ClusterAccessConfigPtrOutput) Elem() ClusterAccessConfigOutput { + return o.ApplyT(func(v *ClusterAccessConfig) ClusterAccessConfig { + if v != nil { + return *v + } + var ret ClusterAccessConfig + return ret + }).(ClusterAccessConfigOutput) +} + +// Specify the authentication mode that should be used to create your cluster. +func (o ClusterAccessConfigPtrOutput) AuthenticationMode() ClusterAccessConfigAuthenticationModePtrOutput { + return o.ApplyT(func(v *ClusterAccessConfig) *ClusterAccessConfigAuthenticationMode { + if v == nil { + return nil + } + return v.AuthenticationMode + }).(ClusterAccessConfigAuthenticationModePtrOutput) +} + +// Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. +func (o ClusterAccessConfigPtrOutput) BootstrapClusterCreatorAdminPermissions() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *ClusterAccessConfig) *bool { + if v == nil { + return nil + } + return v.BootstrapClusterCreatorAdminPermissions + }).(pulumi.BoolPtrOutput) +} + // Specify the placement group of the control plane machines for your cluster. type ClusterControlPlanePlacement struct { // Specify the placement group name of the control place machines for your cluster. @@ -3712,6 +3895,8 @@ func (o PodIdentityAssociationTagArrayOutput) Index(i pulumi.IntInput) PodIdenti func init() { pulumi.RegisterInputType(reflect.TypeOf((*AddonTagInput)(nil)).Elem(), AddonTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AddonTagArrayInput)(nil)).Elem(), AddonTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterAccessConfigInput)(nil)).Elem(), ClusterAccessConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterAccessConfigPtrInput)(nil)).Elem(), ClusterAccessConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ClusterControlPlanePlacementInput)(nil)).Elem(), ClusterControlPlanePlacementArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ClusterControlPlanePlacementPtrInput)(nil)).Elem(), ClusterControlPlanePlacementArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ClusterEncryptionConfigInput)(nil)).Elem(), ClusterEncryptionConfigArgs{}) @@ -3757,6 +3942,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*PodIdentityAssociationTagArrayInput)(nil)).Elem(), PodIdentityAssociationTagArray{}) pulumi.RegisterOutputType(AddonTagOutput{}) pulumi.RegisterOutputType(AddonTagArrayOutput{}) + pulumi.RegisterOutputType(ClusterAccessConfigOutput{}) + pulumi.RegisterOutputType(ClusterAccessConfigPtrOutput{}) pulumi.RegisterOutputType(ClusterControlPlanePlacementOutput{}) pulumi.RegisterOutputType(ClusterControlPlanePlacementPtrOutput{}) pulumi.RegisterOutputType(ClusterEncryptionConfigOutput{}) diff --git a/sdk/go/aws/elasticache/pulumiTypes.go b/sdk/go/aws/elasticache/pulumiTypes.go index a2788e24d0..338313ad9c 100644 --- a/sdk/go/aws/elasticache/pulumiTypes.go +++ b/sdk/go/aws/elasticache/pulumiTypes.go @@ -2818,6 +2818,90 @@ type ServerlessCacheEndpoint struct { Port *int `pulumi:"port"` } +// ServerlessCacheEndpointInput is an input type that accepts ServerlessCacheEndpointArgs and ServerlessCacheEndpointOutput values. +// You can construct a concrete instance of `ServerlessCacheEndpointInput` via: +// +// ServerlessCacheEndpointArgs{...} +type ServerlessCacheEndpointInput interface { + pulumi.Input + + ToServerlessCacheEndpointOutput() ServerlessCacheEndpointOutput + ToServerlessCacheEndpointOutputWithContext(context.Context) ServerlessCacheEndpointOutput +} + +// The address and the port. +type ServerlessCacheEndpointArgs struct { + // Endpoint address. + Address pulumi.StringPtrInput `pulumi:"address"` + // Endpoint port. + Port pulumi.IntPtrInput `pulumi:"port"` +} + +func (ServerlessCacheEndpointArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ServerlessCacheEndpoint)(nil)).Elem() +} + +func (i ServerlessCacheEndpointArgs) ToServerlessCacheEndpointOutput() ServerlessCacheEndpointOutput { + return i.ToServerlessCacheEndpointOutputWithContext(context.Background()) +} + +func (i ServerlessCacheEndpointArgs) ToServerlessCacheEndpointOutputWithContext(ctx context.Context) ServerlessCacheEndpointOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServerlessCacheEndpointOutput) +} + +func (i ServerlessCacheEndpointArgs) ToOutput(ctx context.Context) pulumix.Output[ServerlessCacheEndpoint] { + return pulumix.Output[ServerlessCacheEndpoint]{ + OutputState: i.ToServerlessCacheEndpointOutputWithContext(ctx).OutputState, + } +} + +func (i ServerlessCacheEndpointArgs) ToServerlessCacheEndpointPtrOutput() ServerlessCacheEndpointPtrOutput { + return i.ToServerlessCacheEndpointPtrOutputWithContext(context.Background()) +} + +func (i ServerlessCacheEndpointArgs) ToServerlessCacheEndpointPtrOutputWithContext(ctx context.Context) ServerlessCacheEndpointPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServerlessCacheEndpointOutput).ToServerlessCacheEndpointPtrOutputWithContext(ctx) +} + +// ServerlessCacheEndpointPtrInput is an input type that accepts ServerlessCacheEndpointArgs, ServerlessCacheEndpointPtr and ServerlessCacheEndpointPtrOutput values. +// You can construct a concrete instance of `ServerlessCacheEndpointPtrInput` via: +// +// ServerlessCacheEndpointArgs{...} +// +// or: +// +// nil +type ServerlessCacheEndpointPtrInput interface { + pulumi.Input + + ToServerlessCacheEndpointPtrOutput() ServerlessCacheEndpointPtrOutput + ToServerlessCacheEndpointPtrOutputWithContext(context.Context) ServerlessCacheEndpointPtrOutput +} + +type serverlessCacheEndpointPtrType ServerlessCacheEndpointArgs + +func ServerlessCacheEndpointPtr(v *ServerlessCacheEndpointArgs) ServerlessCacheEndpointPtrInput { + return (*serverlessCacheEndpointPtrType)(v) +} + +func (*serverlessCacheEndpointPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ServerlessCacheEndpoint)(nil)).Elem() +} + +func (i *serverlessCacheEndpointPtrType) ToServerlessCacheEndpointPtrOutput() ServerlessCacheEndpointPtrOutput { + return i.ToServerlessCacheEndpointPtrOutputWithContext(context.Background()) +} + +func (i *serverlessCacheEndpointPtrType) ToServerlessCacheEndpointPtrOutputWithContext(ctx context.Context) ServerlessCacheEndpointPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServerlessCacheEndpointPtrOutput) +} + +func (i *serverlessCacheEndpointPtrType) ToOutput(ctx context.Context) pulumix.Output[*ServerlessCacheEndpoint] { + return pulumix.Output[*ServerlessCacheEndpoint]{ + OutputState: i.ToServerlessCacheEndpointPtrOutputWithContext(ctx).OutputState, + } +} + // The address and the port. type ServerlessCacheEndpointOutput struct{ *pulumi.OutputState } @@ -2833,6 +2917,16 @@ func (o ServerlessCacheEndpointOutput) ToServerlessCacheEndpointOutputWithContex return o } +func (o ServerlessCacheEndpointOutput) ToServerlessCacheEndpointPtrOutput() ServerlessCacheEndpointPtrOutput { + return o.ToServerlessCacheEndpointPtrOutputWithContext(context.Background()) +} + +func (o ServerlessCacheEndpointOutput) ToServerlessCacheEndpointPtrOutputWithContext(ctx context.Context) ServerlessCacheEndpointPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ServerlessCacheEndpoint) *ServerlessCacheEndpoint { + return &v + }).(ServerlessCacheEndpointPtrOutput) +} + func (o ServerlessCacheEndpointOutput) ToOutput(ctx context.Context) pulumix.Output[ServerlessCacheEndpoint] { return pulumix.Output[ServerlessCacheEndpoint]{ OutputState: o.OutputState, @@ -3464,6 +3558,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ServerlessCacheDataStoragePtrInput)(nil)).Elem(), ServerlessCacheDataStorageArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServerlessCacheEcpuPerSecondInput)(nil)).Elem(), ServerlessCacheEcpuPerSecondArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServerlessCacheEcpuPerSecondPtrInput)(nil)).Elem(), ServerlessCacheEcpuPerSecondArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ServerlessCacheEndpointInput)(nil)).Elem(), ServerlessCacheEndpointArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ServerlessCacheEndpointPtrInput)(nil)).Elem(), ServerlessCacheEndpointArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServerlessCacheTagInput)(nil)).Elem(), ServerlessCacheTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServerlessCacheTagArrayInput)(nil)).Elem(), ServerlessCacheTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*SubnetGroupTagInput)(nil)).Elem(), SubnetGroupTagArgs{}) diff --git a/sdk/go/aws/elasticache/serverlessCache.go b/sdk/go/aws/elasticache/serverlessCache.go index 1d1dd85659..5ee95022d1 100644 --- a/sdk/go/aws/elasticache/serverlessCache.go +++ b/sdk/go/aws/elasticache/serverlessCache.go @@ -25,8 +25,8 @@ type ServerlessCache struct { // The daily time range (in UTC) during which the service takes automatic snapshot of the Serverless Cache. DailySnapshotTime pulumi.StringPtrOutput `pulumi:"dailySnapshotTime"` // The description of the Serverless Cache. - Description pulumi.StringPtrOutput `pulumi:"description"` - Endpoint ServerlessCacheEndpointOutput `pulumi:"endpoint"` + Description pulumi.StringPtrOutput `pulumi:"description"` + Endpoint ServerlessCacheEndpointPtrOutput `pulumi:"endpoint"` // The engine name of the Serverless Cache. Engine pulumi.StringOutput `pulumi:"engine"` // The final snapshot name which is taken before Serverless Cache is deleted. @@ -36,8 +36,8 @@ type ServerlessCache struct { // The ID of the KMS key used to encrypt the cluster. KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"` // The major engine version of the Serverless Cache. - MajorEngineVersion pulumi.StringPtrOutput `pulumi:"majorEngineVersion"` - ReaderEndpoint ServerlessCacheEndpointOutput `pulumi:"readerEndpoint"` + MajorEngineVersion pulumi.StringPtrOutput `pulumi:"majorEngineVersion"` + ReaderEndpoint ServerlessCacheEndpointPtrOutput `pulumi:"readerEndpoint"` // One or more Amazon VPC security groups associated with this Serverless Cache. SecurityGroupIds pulumi.StringArrayOutput `pulumi:"securityGroupIds"` // The name of the Serverless Cache. This value must be unique. @@ -112,7 +112,8 @@ type serverlessCacheArgs struct { // The daily time range (in UTC) during which the service takes automatic snapshot of the Serverless Cache. DailySnapshotTime *string `pulumi:"dailySnapshotTime"` // The description of the Serverless Cache. - Description *string `pulumi:"description"` + Description *string `pulumi:"description"` + Endpoint *ServerlessCacheEndpoint `pulumi:"endpoint"` // The engine name of the Serverless Cache. Engine string `pulumi:"engine"` // The final snapshot name which is taken before Serverless Cache is deleted. @@ -120,7 +121,8 @@ type serverlessCacheArgs struct { // The ID of the KMS key used to encrypt the cluster. KmsKeyId *string `pulumi:"kmsKeyId"` // The major engine version of the Serverless Cache. - MajorEngineVersion *string `pulumi:"majorEngineVersion"` + MajorEngineVersion *string `pulumi:"majorEngineVersion"` + ReaderEndpoint *ServerlessCacheEndpoint `pulumi:"readerEndpoint"` // One or more Amazon VPC security groups associated with this Serverless Cache. SecurityGroupIds []string `pulumi:"securityGroupIds"` // The name of the Serverless Cache. This value must be unique. @@ -144,6 +146,7 @@ type ServerlessCacheArgs struct { DailySnapshotTime pulumi.StringPtrInput // The description of the Serverless Cache. Description pulumi.StringPtrInput + Endpoint ServerlessCacheEndpointPtrInput // The engine name of the Serverless Cache. Engine pulumi.StringInput // The final snapshot name which is taken before Serverless Cache is deleted. @@ -152,6 +155,7 @@ type ServerlessCacheArgs struct { KmsKeyId pulumi.StringPtrInput // The major engine version of the Serverless Cache. MajorEngineVersion pulumi.StringPtrInput + ReaderEndpoint ServerlessCacheEndpointPtrInput // One or more Amazon VPC security groups associated with this Serverless Cache. SecurityGroupIds pulumi.StringArrayInput // The name of the Serverless Cache. This value must be unique. @@ -241,8 +245,8 @@ func (o ServerlessCacheOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *ServerlessCache) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } -func (o ServerlessCacheOutput) Endpoint() ServerlessCacheEndpointOutput { - return o.ApplyT(func(v *ServerlessCache) ServerlessCacheEndpointOutput { return v.Endpoint }).(ServerlessCacheEndpointOutput) +func (o ServerlessCacheOutput) Endpoint() ServerlessCacheEndpointPtrOutput { + return o.ApplyT(func(v *ServerlessCache) ServerlessCacheEndpointPtrOutput { return v.Endpoint }).(ServerlessCacheEndpointPtrOutput) } // The engine name of the Serverless Cache. @@ -270,8 +274,8 @@ func (o ServerlessCacheOutput) MajorEngineVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *ServerlessCache) pulumi.StringPtrOutput { return v.MajorEngineVersion }).(pulumi.StringPtrOutput) } -func (o ServerlessCacheOutput) ReaderEndpoint() ServerlessCacheEndpointOutput { - return o.ApplyT(func(v *ServerlessCache) ServerlessCacheEndpointOutput { return v.ReaderEndpoint }).(ServerlessCacheEndpointOutput) +func (o ServerlessCacheOutput) ReaderEndpoint() ServerlessCacheEndpointPtrOutput { + return o.ApplyT(func(v *ServerlessCache) ServerlessCacheEndpointPtrOutput { return v.ReaderEndpoint }).(ServerlessCacheEndpointPtrOutput) } // One or more Amazon VPC security groups associated with this Serverless Cache. diff --git a/sdk/go/aws/emr/cluster.go b/sdk/go/aws/emr/cluster.go index 46909db4a6..8cf55bd9d3 100644 --- a/sdk/go/aws/emr/cluster.go +++ b/sdk/go/aws/emr/cluster.go @@ -19,31 +19,34 @@ import ( type Cluster struct { pulumi.CustomResourceState - AdditionalInfo pulumi.AnyOutput `pulumi:"additionalInfo"` - Applications ClusterApplicationArrayOutput `pulumi:"applications"` - AutoScalingRole pulumi.StringPtrOutput `pulumi:"autoScalingRole"` - AutoTerminationPolicy ClusterAutoTerminationPolicyPtrOutput `pulumi:"autoTerminationPolicy"` - BootstrapActions ClusterBootstrapActionConfigArrayOutput `pulumi:"bootstrapActions"` - Configurations ClusterConfigurationArrayOutput `pulumi:"configurations"` - CustomAmiId pulumi.StringPtrOutput `pulumi:"customAmiId"` - EbsRootVolumeSize pulumi.IntPtrOutput `pulumi:"ebsRootVolumeSize"` - Instances ClusterJobFlowInstancesConfigOutput `pulumi:"instances"` - JobFlowRole pulumi.StringOutput `pulumi:"jobFlowRole"` - KerberosAttributes ClusterKerberosAttributesPtrOutput `pulumi:"kerberosAttributes"` - LogEncryptionKmsKeyId pulumi.StringPtrOutput `pulumi:"logEncryptionKmsKeyId"` - LogUri pulumi.StringPtrOutput `pulumi:"logUri"` - ManagedScalingPolicy ClusterManagedScalingPolicyPtrOutput `pulumi:"managedScalingPolicy"` - MasterPublicDns pulumi.StringOutput `pulumi:"masterPublicDns"` - Name pulumi.StringOutput `pulumi:"name"` - OsReleaseLabel pulumi.StringPtrOutput `pulumi:"osReleaseLabel"` - ReleaseLabel pulumi.StringPtrOutput `pulumi:"releaseLabel"` - ScaleDownBehavior pulumi.StringPtrOutput `pulumi:"scaleDownBehavior"` - SecurityConfiguration pulumi.StringPtrOutput `pulumi:"securityConfiguration"` - ServiceRole pulumi.StringOutput `pulumi:"serviceRole"` - StepConcurrencyLevel pulumi.IntPtrOutput `pulumi:"stepConcurrencyLevel"` - Steps ClusterStepConfigArrayOutput `pulumi:"steps"` - Tags ClusterTagArrayOutput `pulumi:"tags"` - VisibleToAllUsers pulumi.BoolPtrOutput `pulumi:"visibleToAllUsers"` + AdditionalInfo pulumi.AnyOutput `pulumi:"additionalInfo"` + Applications ClusterApplicationArrayOutput `pulumi:"applications"` + AutoScalingRole pulumi.StringPtrOutput `pulumi:"autoScalingRole"` + AutoTerminationPolicy ClusterAutoTerminationPolicyPtrOutput `pulumi:"autoTerminationPolicy"` + BootstrapActions ClusterBootstrapActionConfigArrayOutput `pulumi:"bootstrapActions"` + Configurations ClusterConfigurationArrayOutput `pulumi:"configurations"` + CustomAmiId pulumi.StringPtrOutput `pulumi:"customAmiId"` + EbsRootVolumeIops pulumi.IntPtrOutput `pulumi:"ebsRootVolumeIops"` + EbsRootVolumeSize pulumi.IntPtrOutput `pulumi:"ebsRootVolumeSize"` + EbsRootVolumeThroughput pulumi.IntPtrOutput `pulumi:"ebsRootVolumeThroughput"` + Instances ClusterJobFlowInstancesConfigOutput `pulumi:"instances"` + JobFlowRole pulumi.StringOutput `pulumi:"jobFlowRole"` + KerberosAttributes ClusterKerberosAttributesPtrOutput `pulumi:"kerberosAttributes"` + LogEncryptionKmsKeyId pulumi.StringPtrOutput `pulumi:"logEncryptionKmsKeyId"` + LogUri pulumi.StringPtrOutput `pulumi:"logUri"` + ManagedScalingPolicy ClusterManagedScalingPolicyPtrOutput `pulumi:"managedScalingPolicy"` + MasterPublicDns pulumi.StringOutput `pulumi:"masterPublicDns"` + Name pulumi.StringOutput `pulumi:"name"` + OsReleaseLabel pulumi.StringPtrOutput `pulumi:"osReleaseLabel"` + PlacementGroupConfigs ClusterPlacementGroupConfigArrayOutput `pulumi:"placementGroupConfigs"` + ReleaseLabel pulumi.StringPtrOutput `pulumi:"releaseLabel"` + ScaleDownBehavior pulumi.StringPtrOutput `pulumi:"scaleDownBehavior"` + SecurityConfiguration pulumi.StringPtrOutput `pulumi:"securityConfiguration"` + ServiceRole pulumi.StringOutput `pulumi:"serviceRole"` + StepConcurrencyLevel pulumi.IntPtrOutput `pulumi:"stepConcurrencyLevel"` + Steps ClusterStepConfigArrayOutput `pulumi:"steps"` + Tags ClusterTagArrayOutput `pulumi:"tags"` + VisibleToAllUsers pulumi.BoolPtrOutput `pulumi:"visibleToAllUsers"` } // NewCluster registers a new resource with the given unique name, arguments, and options. @@ -69,13 +72,16 @@ func NewCluster(ctx *pulumi.Context, "bootstrapActions[*]", "configurations[*]", "customAmiId", + "ebsRootVolumeIops", "ebsRootVolumeSize", + "ebsRootVolumeThroughput", "jobFlowRole", "kerberosAttributes", "logEncryptionKmsKeyId", "logUri", "name", "osReleaseLabel", + "placementGroupConfigs[*]", "releaseLabel", "scaleDownBehavior", "securityConfiguration", @@ -116,58 +122,64 @@ func (ClusterState) ElementType() reflect.Type { } type clusterArgs struct { - AdditionalInfo interface{} `pulumi:"additionalInfo"` - Applications []ClusterApplication `pulumi:"applications"` - AutoScalingRole *string `pulumi:"autoScalingRole"` - AutoTerminationPolicy *ClusterAutoTerminationPolicy `pulumi:"autoTerminationPolicy"` - BootstrapActions []ClusterBootstrapActionConfig `pulumi:"bootstrapActions"` - Configurations []ClusterConfiguration `pulumi:"configurations"` - CustomAmiId *string `pulumi:"customAmiId"` - EbsRootVolumeSize *int `pulumi:"ebsRootVolumeSize"` - Instances ClusterJobFlowInstancesConfig `pulumi:"instances"` - JobFlowRole string `pulumi:"jobFlowRole"` - KerberosAttributes *ClusterKerberosAttributes `pulumi:"kerberosAttributes"` - LogEncryptionKmsKeyId *string `pulumi:"logEncryptionKmsKeyId"` - LogUri *string `pulumi:"logUri"` - ManagedScalingPolicy *ClusterManagedScalingPolicy `pulumi:"managedScalingPolicy"` - Name *string `pulumi:"name"` - OsReleaseLabel *string `pulumi:"osReleaseLabel"` - ReleaseLabel *string `pulumi:"releaseLabel"` - ScaleDownBehavior *string `pulumi:"scaleDownBehavior"` - SecurityConfiguration *string `pulumi:"securityConfiguration"` - ServiceRole string `pulumi:"serviceRole"` - StepConcurrencyLevel *int `pulumi:"stepConcurrencyLevel"` - Steps []ClusterStepConfig `pulumi:"steps"` - Tags []ClusterTag `pulumi:"tags"` - VisibleToAllUsers *bool `pulumi:"visibleToAllUsers"` + AdditionalInfo interface{} `pulumi:"additionalInfo"` + Applications []ClusterApplication `pulumi:"applications"` + AutoScalingRole *string `pulumi:"autoScalingRole"` + AutoTerminationPolicy *ClusterAutoTerminationPolicy `pulumi:"autoTerminationPolicy"` + BootstrapActions []ClusterBootstrapActionConfig `pulumi:"bootstrapActions"` + Configurations []ClusterConfiguration `pulumi:"configurations"` + CustomAmiId *string `pulumi:"customAmiId"` + EbsRootVolumeIops *int `pulumi:"ebsRootVolumeIops"` + EbsRootVolumeSize *int `pulumi:"ebsRootVolumeSize"` + EbsRootVolumeThroughput *int `pulumi:"ebsRootVolumeThroughput"` + Instances ClusterJobFlowInstancesConfig `pulumi:"instances"` + JobFlowRole string `pulumi:"jobFlowRole"` + KerberosAttributes *ClusterKerberosAttributes `pulumi:"kerberosAttributes"` + LogEncryptionKmsKeyId *string `pulumi:"logEncryptionKmsKeyId"` + LogUri *string `pulumi:"logUri"` + ManagedScalingPolicy *ClusterManagedScalingPolicy `pulumi:"managedScalingPolicy"` + Name *string `pulumi:"name"` + OsReleaseLabel *string `pulumi:"osReleaseLabel"` + PlacementGroupConfigs []ClusterPlacementGroupConfig `pulumi:"placementGroupConfigs"` + ReleaseLabel *string `pulumi:"releaseLabel"` + ScaleDownBehavior *string `pulumi:"scaleDownBehavior"` + SecurityConfiguration *string `pulumi:"securityConfiguration"` + ServiceRole string `pulumi:"serviceRole"` + StepConcurrencyLevel *int `pulumi:"stepConcurrencyLevel"` + Steps []ClusterStepConfig `pulumi:"steps"` + Tags []ClusterTag `pulumi:"tags"` + VisibleToAllUsers *bool `pulumi:"visibleToAllUsers"` } // The set of arguments for constructing a Cluster resource. type ClusterArgs struct { - AdditionalInfo pulumi.Input - Applications ClusterApplicationArrayInput - AutoScalingRole pulumi.StringPtrInput - AutoTerminationPolicy ClusterAutoTerminationPolicyPtrInput - BootstrapActions ClusterBootstrapActionConfigArrayInput - Configurations ClusterConfigurationArrayInput - CustomAmiId pulumi.StringPtrInput - EbsRootVolumeSize pulumi.IntPtrInput - Instances ClusterJobFlowInstancesConfigInput - JobFlowRole pulumi.StringInput - KerberosAttributes ClusterKerberosAttributesPtrInput - LogEncryptionKmsKeyId pulumi.StringPtrInput - LogUri pulumi.StringPtrInput - ManagedScalingPolicy ClusterManagedScalingPolicyPtrInput - Name pulumi.StringPtrInput - OsReleaseLabel pulumi.StringPtrInput - ReleaseLabel pulumi.StringPtrInput - ScaleDownBehavior pulumi.StringPtrInput - SecurityConfiguration pulumi.StringPtrInput - ServiceRole pulumi.StringInput - StepConcurrencyLevel pulumi.IntPtrInput - Steps ClusterStepConfigArrayInput - Tags ClusterTagArrayInput - VisibleToAllUsers pulumi.BoolPtrInput + AdditionalInfo pulumi.Input + Applications ClusterApplicationArrayInput + AutoScalingRole pulumi.StringPtrInput + AutoTerminationPolicy ClusterAutoTerminationPolicyPtrInput + BootstrapActions ClusterBootstrapActionConfigArrayInput + Configurations ClusterConfigurationArrayInput + CustomAmiId pulumi.StringPtrInput + EbsRootVolumeIops pulumi.IntPtrInput + EbsRootVolumeSize pulumi.IntPtrInput + EbsRootVolumeThroughput pulumi.IntPtrInput + Instances ClusterJobFlowInstancesConfigInput + JobFlowRole pulumi.StringInput + KerberosAttributes ClusterKerberosAttributesPtrInput + LogEncryptionKmsKeyId pulumi.StringPtrInput + LogUri pulumi.StringPtrInput + ManagedScalingPolicy ClusterManagedScalingPolicyPtrInput + Name pulumi.StringPtrInput + OsReleaseLabel pulumi.StringPtrInput + PlacementGroupConfigs ClusterPlacementGroupConfigArrayInput + ReleaseLabel pulumi.StringPtrInput + ScaleDownBehavior pulumi.StringPtrInput + SecurityConfiguration pulumi.StringPtrInput + ServiceRole pulumi.StringInput + StepConcurrencyLevel pulumi.IntPtrInput + Steps ClusterStepConfigArrayInput + Tags ClusterTagArrayInput + VisibleToAllUsers pulumi.BoolPtrInput } func (ClusterArgs) ElementType() reflect.Type { @@ -247,10 +259,18 @@ func (o ClusterOutput) CustomAmiId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Cluster) pulumi.StringPtrOutput { return v.CustomAmiId }).(pulumi.StringPtrOutput) } +func (o ClusterOutput) EbsRootVolumeIops() pulumi.IntPtrOutput { + return o.ApplyT(func(v *Cluster) pulumi.IntPtrOutput { return v.EbsRootVolumeIops }).(pulumi.IntPtrOutput) +} + func (o ClusterOutput) EbsRootVolumeSize() pulumi.IntPtrOutput { return o.ApplyT(func(v *Cluster) pulumi.IntPtrOutput { return v.EbsRootVolumeSize }).(pulumi.IntPtrOutput) } +func (o ClusterOutput) EbsRootVolumeThroughput() pulumi.IntPtrOutput { + return o.ApplyT(func(v *Cluster) pulumi.IntPtrOutput { return v.EbsRootVolumeThroughput }).(pulumi.IntPtrOutput) +} + func (o ClusterOutput) Instances() ClusterJobFlowInstancesConfigOutput { return o.ApplyT(func(v *Cluster) ClusterJobFlowInstancesConfigOutput { return v.Instances }).(ClusterJobFlowInstancesConfigOutput) } @@ -287,6 +307,10 @@ func (o ClusterOutput) OsReleaseLabel() pulumi.StringPtrOutput { return o.ApplyT(func(v *Cluster) pulumi.StringPtrOutput { return v.OsReleaseLabel }).(pulumi.StringPtrOutput) } +func (o ClusterOutput) PlacementGroupConfigs() ClusterPlacementGroupConfigArrayOutput { + return o.ApplyT(func(v *Cluster) ClusterPlacementGroupConfigArrayOutput { return v.PlacementGroupConfigs }).(ClusterPlacementGroupConfigArrayOutput) +} + func (o ClusterOutput) ReleaseLabel() pulumi.StringPtrOutput { return o.ApplyT(func(v *Cluster) pulumi.StringPtrOutput { return v.ReleaseLabel }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/emr/pulumiEnums.go b/sdk/go/aws/emr/pulumiEnums.go index 7d71c9cd8e..27f7b654b6 100644 --- a/sdk/go/aws/emr/pulumiEnums.go +++ b/sdk/go/aws/emr/pulumiEnums.go @@ -194,6 +194,189 @@ func (in *studioAuthModePtr) ToOutput(ctx context.Context) pulumix.Output[*Studi } } +// Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. +type StudioIdcUserAssignment string + +const ( + StudioIdcUserAssignmentRequired = StudioIdcUserAssignment("REQUIRED") + StudioIdcUserAssignmentOptional = StudioIdcUserAssignment("OPTIONAL") +) + +func (StudioIdcUserAssignment) ElementType() reflect.Type { + return reflect.TypeOf((*StudioIdcUserAssignment)(nil)).Elem() +} + +func (e StudioIdcUserAssignment) ToStudioIdcUserAssignmentOutput() StudioIdcUserAssignmentOutput { + return pulumi.ToOutput(e).(StudioIdcUserAssignmentOutput) +} + +func (e StudioIdcUserAssignment) ToStudioIdcUserAssignmentOutputWithContext(ctx context.Context) StudioIdcUserAssignmentOutput { + return pulumi.ToOutputWithContext(ctx, e).(StudioIdcUserAssignmentOutput) +} + +func (e StudioIdcUserAssignment) ToStudioIdcUserAssignmentPtrOutput() StudioIdcUserAssignmentPtrOutput { + return e.ToStudioIdcUserAssignmentPtrOutputWithContext(context.Background()) +} + +func (e StudioIdcUserAssignment) ToStudioIdcUserAssignmentPtrOutputWithContext(ctx context.Context) StudioIdcUserAssignmentPtrOutput { + return StudioIdcUserAssignment(e).ToStudioIdcUserAssignmentOutputWithContext(ctx).ToStudioIdcUserAssignmentPtrOutputWithContext(ctx) +} + +func (e StudioIdcUserAssignment) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e StudioIdcUserAssignment) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e StudioIdcUserAssignment) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e StudioIdcUserAssignment) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type StudioIdcUserAssignmentOutput struct{ *pulumi.OutputState } + +func (StudioIdcUserAssignmentOutput) ElementType() reflect.Type { + return reflect.TypeOf((*StudioIdcUserAssignment)(nil)).Elem() +} + +func (o StudioIdcUserAssignmentOutput) ToStudioIdcUserAssignmentOutput() StudioIdcUserAssignmentOutput { + return o +} + +func (o StudioIdcUserAssignmentOutput) ToStudioIdcUserAssignmentOutputWithContext(ctx context.Context) StudioIdcUserAssignmentOutput { + return o +} + +func (o StudioIdcUserAssignmentOutput) ToStudioIdcUserAssignmentPtrOutput() StudioIdcUserAssignmentPtrOutput { + return o.ToStudioIdcUserAssignmentPtrOutputWithContext(context.Background()) +} + +func (o StudioIdcUserAssignmentOutput) ToStudioIdcUserAssignmentPtrOutputWithContext(ctx context.Context) StudioIdcUserAssignmentPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v StudioIdcUserAssignment) *StudioIdcUserAssignment { + return &v + }).(StudioIdcUserAssignmentPtrOutput) +} + +func (o StudioIdcUserAssignmentOutput) ToOutput(ctx context.Context) pulumix.Output[StudioIdcUserAssignment] { + return pulumix.Output[StudioIdcUserAssignment]{ + OutputState: o.OutputState, + } +} + +func (o StudioIdcUserAssignmentOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o StudioIdcUserAssignmentOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e StudioIdcUserAssignment) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o StudioIdcUserAssignmentOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o StudioIdcUserAssignmentOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e StudioIdcUserAssignment) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type StudioIdcUserAssignmentPtrOutput struct{ *pulumi.OutputState } + +func (StudioIdcUserAssignmentPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**StudioIdcUserAssignment)(nil)).Elem() +} + +func (o StudioIdcUserAssignmentPtrOutput) ToStudioIdcUserAssignmentPtrOutput() StudioIdcUserAssignmentPtrOutput { + return o +} + +func (o StudioIdcUserAssignmentPtrOutput) ToStudioIdcUserAssignmentPtrOutputWithContext(ctx context.Context) StudioIdcUserAssignmentPtrOutput { + return o +} + +func (o StudioIdcUserAssignmentPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*StudioIdcUserAssignment] { + return pulumix.Output[*StudioIdcUserAssignment]{ + OutputState: o.OutputState, + } +} + +func (o StudioIdcUserAssignmentPtrOutput) Elem() StudioIdcUserAssignmentOutput { + return o.ApplyT(func(v *StudioIdcUserAssignment) StudioIdcUserAssignment { + if v != nil { + return *v + } + var ret StudioIdcUserAssignment + return ret + }).(StudioIdcUserAssignmentOutput) +} + +func (o StudioIdcUserAssignmentPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o StudioIdcUserAssignmentPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *StudioIdcUserAssignment) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// StudioIdcUserAssignmentInput is an input type that accepts StudioIdcUserAssignmentArgs and StudioIdcUserAssignmentOutput values. +// You can construct a concrete instance of `StudioIdcUserAssignmentInput` via: +// +// StudioIdcUserAssignmentArgs{...} +type StudioIdcUserAssignmentInput interface { + pulumi.Input + + ToStudioIdcUserAssignmentOutput() StudioIdcUserAssignmentOutput + ToStudioIdcUserAssignmentOutputWithContext(context.Context) StudioIdcUserAssignmentOutput +} + +var studioIdcUserAssignmentPtrType = reflect.TypeOf((**StudioIdcUserAssignment)(nil)).Elem() + +type StudioIdcUserAssignmentPtrInput interface { + pulumi.Input + + ToStudioIdcUserAssignmentPtrOutput() StudioIdcUserAssignmentPtrOutput + ToStudioIdcUserAssignmentPtrOutputWithContext(context.Context) StudioIdcUserAssignmentPtrOutput +} + +type studioIdcUserAssignmentPtr string + +func StudioIdcUserAssignmentPtr(v string) StudioIdcUserAssignmentPtrInput { + return (*studioIdcUserAssignmentPtr)(&v) +} + +func (*studioIdcUserAssignmentPtr) ElementType() reflect.Type { + return studioIdcUserAssignmentPtrType +} + +func (in *studioIdcUserAssignmentPtr) ToStudioIdcUserAssignmentPtrOutput() StudioIdcUserAssignmentPtrOutput { + return pulumi.ToOutput(in).(StudioIdcUserAssignmentPtrOutput) +} + +func (in *studioIdcUserAssignmentPtr) ToStudioIdcUserAssignmentPtrOutputWithContext(ctx context.Context) StudioIdcUserAssignmentPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(StudioIdcUserAssignmentPtrOutput) +} + +func (in *studioIdcUserAssignmentPtr) ToOutput(ctx context.Context) pulumix.Output[*StudioIdcUserAssignment] { + return pulumix.Output[*StudioIdcUserAssignment]{ + OutputState: in.ToStudioIdcUserAssignmentPtrOutputWithContext(ctx).OutputState, + } +} + // Specifies whether the identity to map to the Studio is a user or a group. type StudioSessionMappingIdentityType string @@ -380,10 +563,14 @@ func (in *studioSessionMappingIdentityTypePtr) ToOutput(ctx context.Context) pul func init() { pulumi.RegisterInputType(reflect.TypeOf((*StudioAuthModeInput)(nil)).Elem(), StudioAuthMode("SSO")) pulumi.RegisterInputType(reflect.TypeOf((*StudioAuthModePtrInput)(nil)).Elem(), StudioAuthMode("SSO")) + pulumi.RegisterInputType(reflect.TypeOf((*StudioIdcUserAssignmentInput)(nil)).Elem(), StudioIdcUserAssignment("REQUIRED")) + pulumi.RegisterInputType(reflect.TypeOf((*StudioIdcUserAssignmentPtrInput)(nil)).Elem(), StudioIdcUserAssignment("REQUIRED")) pulumi.RegisterInputType(reflect.TypeOf((*StudioSessionMappingIdentityTypeInput)(nil)).Elem(), StudioSessionMappingIdentityType("USER")) pulumi.RegisterInputType(reflect.TypeOf((*StudioSessionMappingIdentityTypePtrInput)(nil)).Elem(), StudioSessionMappingIdentityType("USER")) pulumi.RegisterOutputType(StudioAuthModeOutput{}) pulumi.RegisterOutputType(StudioAuthModePtrOutput{}) + pulumi.RegisterOutputType(StudioIdcUserAssignmentOutput{}) + pulumi.RegisterOutputType(StudioIdcUserAssignmentPtrOutput{}) pulumi.RegisterOutputType(StudioSessionMappingIdentityTypeOutput{}) pulumi.RegisterOutputType(StudioSessionMappingIdentityTypePtrOutput{}) } diff --git a/sdk/go/aws/emr/pulumiTypes.go b/sdk/go/aws/emr/pulumiTypes.go index 13075abe97..4201e43aa2 100644 --- a/sdk/go/aws/emr/pulumiTypes.go +++ b/sdk/go/aws/emr/pulumiTypes.go @@ -3510,6 +3510,130 @@ func (o ClusterOnDemandProvisioningSpecificationPtrOutput) AllocationStrategy() }).(pulumi.StringPtrOutput) } +type ClusterPlacementGroupConfig struct { + InstanceRole string `pulumi:"instanceRole"` + PlacementStrategy *string `pulumi:"placementStrategy"` +} + +// ClusterPlacementGroupConfigInput is an input type that accepts ClusterPlacementGroupConfigArgs and ClusterPlacementGroupConfigOutput values. +// You can construct a concrete instance of `ClusterPlacementGroupConfigInput` via: +// +// ClusterPlacementGroupConfigArgs{...} +type ClusterPlacementGroupConfigInput interface { + pulumi.Input + + ToClusterPlacementGroupConfigOutput() ClusterPlacementGroupConfigOutput + ToClusterPlacementGroupConfigOutputWithContext(context.Context) ClusterPlacementGroupConfigOutput +} + +type ClusterPlacementGroupConfigArgs struct { + InstanceRole pulumi.StringInput `pulumi:"instanceRole"` + PlacementStrategy pulumi.StringPtrInput `pulumi:"placementStrategy"` +} + +func (ClusterPlacementGroupConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterPlacementGroupConfig)(nil)).Elem() +} + +func (i ClusterPlacementGroupConfigArgs) ToClusterPlacementGroupConfigOutput() ClusterPlacementGroupConfigOutput { + return i.ToClusterPlacementGroupConfigOutputWithContext(context.Background()) +} + +func (i ClusterPlacementGroupConfigArgs) ToClusterPlacementGroupConfigOutputWithContext(ctx context.Context) ClusterPlacementGroupConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterPlacementGroupConfigOutput) +} + +func (i ClusterPlacementGroupConfigArgs) ToOutput(ctx context.Context) pulumix.Output[ClusterPlacementGroupConfig] { + return pulumix.Output[ClusterPlacementGroupConfig]{ + OutputState: i.ToClusterPlacementGroupConfigOutputWithContext(ctx).OutputState, + } +} + +// ClusterPlacementGroupConfigArrayInput is an input type that accepts ClusterPlacementGroupConfigArray and ClusterPlacementGroupConfigArrayOutput values. +// You can construct a concrete instance of `ClusterPlacementGroupConfigArrayInput` via: +// +// ClusterPlacementGroupConfigArray{ ClusterPlacementGroupConfigArgs{...} } +type ClusterPlacementGroupConfigArrayInput interface { + pulumi.Input + + ToClusterPlacementGroupConfigArrayOutput() ClusterPlacementGroupConfigArrayOutput + ToClusterPlacementGroupConfigArrayOutputWithContext(context.Context) ClusterPlacementGroupConfigArrayOutput +} + +type ClusterPlacementGroupConfigArray []ClusterPlacementGroupConfigInput + +func (ClusterPlacementGroupConfigArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ClusterPlacementGroupConfig)(nil)).Elem() +} + +func (i ClusterPlacementGroupConfigArray) ToClusterPlacementGroupConfigArrayOutput() ClusterPlacementGroupConfigArrayOutput { + return i.ToClusterPlacementGroupConfigArrayOutputWithContext(context.Background()) +} + +func (i ClusterPlacementGroupConfigArray) ToClusterPlacementGroupConfigArrayOutputWithContext(ctx context.Context) ClusterPlacementGroupConfigArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ClusterPlacementGroupConfigArrayOutput) +} + +func (i ClusterPlacementGroupConfigArray) ToOutput(ctx context.Context) pulumix.Output[[]ClusterPlacementGroupConfig] { + return pulumix.Output[[]ClusterPlacementGroupConfig]{ + OutputState: i.ToClusterPlacementGroupConfigArrayOutputWithContext(ctx).OutputState, + } +} + +type ClusterPlacementGroupConfigOutput struct{ *pulumi.OutputState } + +func (ClusterPlacementGroupConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ClusterPlacementGroupConfig)(nil)).Elem() +} + +func (o ClusterPlacementGroupConfigOutput) ToClusterPlacementGroupConfigOutput() ClusterPlacementGroupConfigOutput { + return o +} + +func (o ClusterPlacementGroupConfigOutput) ToClusterPlacementGroupConfigOutputWithContext(ctx context.Context) ClusterPlacementGroupConfigOutput { + return o +} + +func (o ClusterPlacementGroupConfigOutput) ToOutput(ctx context.Context) pulumix.Output[ClusterPlacementGroupConfig] { + return pulumix.Output[ClusterPlacementGroupConfig]{ + OutputState: o.OutputState, + } +} + +func (o ClusterPlacementGroupConfigOutput) InstanceRole() pulumi.StringOutput { + return o.ApplyT(func(v ClusterPlacementGroupConfig) string { return v.InstanceRole }).(pulumi.StringOutput) +} + +func (o ClusterPlacementGroupConfigOutput) PlacementStrategy() pulumi.StringPtrOutput { + return o.ApplyT(func(v ClusterPlacementGroupConfig) *string { return v.PlacementStrategy }).(pulumi.StringPtrOutput) +} + +type ClusterPlacementGroupConfigArrayOutput struct{ *pulumi.OutputState } + +func (ClusterPlacementGroupConfigArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ClusterPlacementGroupConfig)(nil)).Elem() +} + +func (o ClusterPlacementGroupConfigArrayOutput) ToClusterPlacementGroupConfigArrayOutput() ClusterPlacementGroupConfigArrayOutput { + return o +} + +func (o ClusterPlacementGroupConfigArrayOutput) ToClusterPlacementGroupConfigArrayOutputWithContext(ctx context.Context) ClusterPlacementGroupConfigArrayOutput { + return o +} + +func (o ClusterPlacementGroupConfigArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ClusterPlacementGroupConfig] { + return pulumix.Output[[]ClusterPlacementGroupConfig]{ + OutputState: o.OutputState, + } +} + +func (o ClusterPlacementGroupConfigArrayOutput) Index(i pulumi.IntInput) ClusterPlacementGroupConfigOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ClusterPlacementGroupConfig { + return vs[0].([]ClusterPlacementGroupConfig)[vs[1].(int)] + }).(ClusterPlacementGroupConfigOutput) +} + type ClusterPlacementType struct { AvailabilityZone string `pulumi:"availabilityZone"` } @@ -7922,6 +8046,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ClusterMetricDimensionArrayInput)(nil)).Elem(), ClusterMetricDimensionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ClusterOnDemandProvisioningSpecificationInput)(nil)).Elem(), ClusterOnDemandProvisioningSpecificationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ClusterOnDemandProvisioningSpecificationPtrInput)(nil)).Elem(), ClusterOnDemandProvisioningSpecificationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterPlacementGroupConfigInput)(nil)).Elem(), ClusterPlacementGroupConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ClusterPlacementGroupConfigArrayInput)(nil)).Elem(), ClusterPlacementGroupConfigArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ClusterPlacementTypeInput)(nil)).Elem(), ClusterPlacementTypeArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ClusterPlacementTypePtrInput)(nil)).Elem(), ClusterPlacementTypeArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ClusterScalingActionInput)(nil)).Elem(), ClusterScalingActionArgs{}) @@ -8020,6 +8146,8 @@ func init() { pulumi.RegisterOutputType(ClusterMetricDimensionArrayOutput{}) pulumi.RegisterOutputType(ClusterOnDemandProvisioningSpecificationOutput{}) pulumi.RegisterOutputType(ClusterOnDemandProvisioningSpecificationPtrOutput{}) + pulumi.RegisterOutputType(ClusterPlacementGroupConfigOutput{}) + pulumi.RegisterOutputType(ClusterPlacementGroupConfigArrayOutput{}) pulumi.RegisterOutputType(ClusterPlacementTypeOutput{}) pulumi.RegisterOutputType(ClusterPlacementTypePtrOutput{}) pulumi.RegisterOutputType(ClusterScalingActionOutput{}) diff --git a/sdk/go/aws/emr/studio.go b/sdk/go/aws/emr/studio.go index cd59ac2d5c..062e626ba6 100644 --- a/sdk/go/aws/emr/studio.go +++ b/sdk/go/aws/emr/studio.go @@ -25,8 +25,14 @@ type Studio struct { DefaultS3Location pulumi.StringOutput `pulumi:"defaultS3Location"` // A detailed description of the Studio. Description pulumi.StringPtrOutput `pulumi:"description"` + // The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + EncryptionKeyArn pulumi.StringPtrOutput `pulumi:"encryptionKeyArn"` // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. EngineSecurityGroupId pulumi.StringOutput `pulumi:"engineSecurityGroupId"` + // The ARN of the IAM Identity Center instance to create the Studio application. + IdcInstanceArn pulumi.StringPtrOutput `pulumi:"idcInstanceArn"` + // Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + IdcUserAssignment StudioIdcUserAssignmentPtrOutput `pulumi:"idcUserAssignment"` // Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. IdpAuthUrl pulumi.StringPtrOutput `pulumi:"idpAuthUrl"` // The name of relay state parameter for external Identity Provider. @@ -41,6 +47,8 @@ type Studio struct { SubnetIds pulumi.StringArrayOutput `pulumi:"subnetIds"` // A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters. Tags StudioTagArrayOutput `pulumi:"tags"` + // A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + TrustedIdentityPropagationEnabled pulumi.BoolPtrOutput `pulumi:"trustedIdentityPropagationEnabled"` // The unique Studio access URL. Url pulumi.StringOutput `pulumi:"url"` // The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies. @@ -81,8 +89,12 @@ func NewStudio(ctx *pulumi.Context, } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ "authMode", + "encryptionKeyArn", "engineSecurityGroupId", + "idcInstanceArn", + "idcUserAssignment", "serviceRole", + "trustedIdentityPropagationEnabled", "userRole", "vpcId", "workspaceSecurityGroupId", @@ -127,8 +139,14 @@ type studioArgs struct { DefaultS3Location string `pulumi:"defaultS3Location"` // A detailed description of the Studio. Description *string `pulumi:"description"` + // The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + EncryptionKeyArn *string `pulumi:"encryptionKeyArn"` // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. EngineSecurityGroupId string `pulumi:"engineSecurityGroupId"` + // The ARN of the IAM Identity Center instance to create the Studio application. + IdcInstanceArn *string `pulumi:"idcInstanceArn"` + // Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + IdcUserAssignment *StudioIdcUserAssignment `pulumi:"idcUserAssignment"` // Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. IdpAuthUrl *string `pulumi:"idpAuthUrl"` // The name of relay state parameter for external Identity Provider. @@ -141,6 +159,8 @@ type studioArgs struct { SubnetIds []string `pulumi:"subnetIds"` // A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters. Tags []StudioTag `pulumi:"tags"` + // A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + TrustedIdentityPropagationEnabled *bool `pulumi:"trustedIdentityPropagationEnabled"` // The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies. UserRole *string `pulumi:"userRole"` // The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with the Studio. @@ -157,8 +177,14 @@ type StudioArgs struct { DefaultS3Location pulumi.StringInput // A detailed description of the Studio. Description pulumi.StringPtrInput + // The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + EncryptionKeyArn pulumi.StringPtrInput // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. EngineSecurityGroupId pulumi.StringInput + // The ARN of the IAM Identity Center instance to create the Studio application. + IdcInstanceArn pulumi.StringPtrInput + // Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + IdcUserAssignment StudioIdcUserAssignmentPtrInput // Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. IdpAuthUrl pulumi.StringPtrInput // The name of relay state parameter for external Identity Provider. @@ -171,6 +197,8 @@ type StudioArgs struct { SubnetIds pulumi.StringArrayInput // A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters. Tags StudioTagArrayInput + // A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + TrustedIdentityPropagationEnabled pulumi.BoolPtrInput // The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies. UserRole pulumi.StringPtrInput // The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with the Studio. @@ -248,11 +276,26 @@ func (o StudioOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Studio) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. +func (o StudioOutput) EncryptionKeyArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Studio) pulumi.StringPtrOutput { return v.EncryptionKeyArn }).(pulumi.StringPtrOutput) +} + // The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. func (o StudioOutput) EngineSecurityGroupId() pulumi.StringOutput { return o.ApplyT(func(v *Studio) pulumi.StringOutput { return v.EngineSecurityGroupId }).(pulumi.StringOutput) } +// The ARN of the IAM Identity Center instance to create the Studio application. +func (o StudioOutput) IdcInstanceArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Studio) pulumi.StringPtrOutput { return v.IdcInstanceArn }).(pulumi.StringPtrOutput) +} + +// Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. +func (o StudioOutput) IdcUserAssignment() StudioIdcUserAssignmentPtrOutput { + return o.ApplyT(func(v *Studio) StudioIdcUserAssignmentPtrOutput { return v.IdcUserAssignment }).(StudioIdcUserAssignmentPtrOutput) +} + // Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. func (o StudioOutput) IdpAuthUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v *Studio) pulumi.StringPtrOutput { return v.IdpAuthUrl }).(pulumi.StringPtrOutput) @@ -288,6 +331,11 @@ func (o StudioOutput) Tags() StudioTagArrayOutput { return o.ApplyT(func(v *Studio) StudioTagArrayOutput { return v.Tags }).(StudioTagArrayOutput) } +// A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. +func (o StudioOutput) TrustedIdentityPropagationEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *Studio) pulumi.BoolPtrOutput { return v.TrustedIdentityPropagationEnabled }).(pulumi.BoolPtrOutput) +} + // The unique Studio access URL. func (o StudioOutput) Url() pulumi.StringOutput { return o.ApplyT(func(v *Studio) pulumi.StringOutput { return v.Url }).(pulumi.StringOutput) diff --git a/sdk/go/aws/eventschemas/discoverer.go b/sdk/go/aws/eventschemas/discoverer.go index fe5c502719..d8c16cdf26 100644 --- a/sdk/go/aws/eventschemas/discoverer.go +++ b/sdk/go/aws/eventschemas/discoverer.go @@ -14,17 +14,23 @@ import ( ) // Resource Type definition for AWS::EventSchemas::Discoverer -// -// Deprecated: Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type Discoverer struct { pulumi.CustomResourceState - CrossAccount pulumi.BoolPtrOutput `pulumi:"crossAccount"` - Description pulumi.StringPtrOutput `pulumi:"description"` - DiscovererArn pulumi.StringOutput `pulumi:"discovererArn"` - DiscovererId pulumi.StringOutput `pulumi:"discovererId"` - SourceArn pulumi.StringOutput `pulumi:"sourceArn"` - Tags DiscovererTagsEntryArrayOutput `pulumi:"tags"` + // Defines whether event schemas from other accounts are discovered. Default is True. + CrossAccount pulumi.BoolPtrOutput `pulumi:"crossAccount"` + // A description for the discoverer. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The ARN of the discoverer. + DiscovererArn pulumi.StringOutput `pulumi:"discovererArn"` + // The Id of the discoverer. + DiscovererId pulumi.StringOutput `pulumi:"discovererId"` + // The ARN of the event bus. + SourceArn pulumi.StringOutput `pulumi:"sourceArn"` + // Defines the current state of the discoverer. + State pulumi.StringOutput `pulumi:"state"` + // Tags associated with the resource. + Tags DiscovererTagsEntryArrayOutput `pulumi:"tags"` } // NewDiscoverer registers a new resource with the given unique name, arguments, and options. @@ -74,18 +80,26 @@ func (DiscovererState) ElementType() reflect.Type { } type discovererArgs struct { - CrossAccount *bool `pulumi:"crossAccount"` - Description *string `pulumi:"description"` - SourceArn string `pulumi:"sourceArn"` - Tags []DiscovererTagsEntry `pulumi:"tags"` + // Defines whether event schemas from other accounts are discovered. Default is True. + CrossAccount *bool `pulumi:"crossAccount"` + // A description for the discoverer. + Description *string `pulumi:"description"` + // The ARN of the event bus. + SourceArn string `pulumi:"sourceArn"` + // Tags associated with the resource. + Tags []DiscovererTagsEntry `pulumi:"tags"` } // The set of arguments for constructing a Discoverer resource. type DiscovererArgs struct { + // Defines whether event schemas from other accounts are discovered. Default is True. CrossAccount pulumi.BoolPtrInput - Description pulumi.StringPtrInput - SourceArn pulumi.StringInput - Tags DiscovererTagsEntryArrayInput + // A description for the discoverer. + Description pulumi.StringPtrInput + // The ARN of the event bus. + SourceArn pulumi.StringInput + // Tags associated with the resource. + Tags DiscovererTagsEntryArrayInput } func (DiscovererArgs) ElementType() reflect.Type { @@ -137,26 +151,37 @@ func (o DiscovererOutput) ToOutput(ctx context.Context) pulumix.Output[*Discover } } +// Defines whether event schemas from other accounts are discovered. Default is True. func (o DiscovererOutput) CrossAccount() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Discoverer) pulumi.BoolPtrOutput { return v.CrossAccount }).(pulumi.BoolPtrOutput) } +// A description for the discoverer. func (o DiscovererOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Discoverer) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// The ARN of the discoverer. func (o DiscovererOutput) DiscovererArn() pulumi.StringOutput { return o.ApplyT(func(v *Discoverer) pulumi.StringOutput { return v.DiscovererArn }).(pulumi.StringOutput) } +// The Id of the discoverer. func (o DiscovererOutput) DiscovererId() pulumi.StringOutput { return o.ApplyT(func(v *Discoverer) pulumi.StringOutput { return v.DiscovererId }).(pulumi.StringOutput) } +// The ARN of the event bus. func (o DiscovererOutput) SourceArn() pulumi.StringOutput { return o.ApplyT(func(v *Discoverer) pulumi.StringOutput { return v.SourceArn }).(pulumi.StringOutput) } +// Defines the current state of the discoverer. +func (o DiscovererOutput) State() pulumi.StringOutput { + return o.ApplyT(func(v *Discoverer) pulumi.StringOutput { return v.State }).(pulumi.StringOutput) +} + +// Tags associated with the resource. func (o DiscovererOutput) Tags() DiscovererTagsEntryArrayOutput { return o.ApplyT(func(v *Discoverer) DiscovererTagsEntryArrayOutput { return v.Tags }).(DiscovererTagsEntryArrayOutput) } diff --git a/sdk/go/aws/eventschemas/getDiscoverer.go b/sdk/go/aws/eventschemas/getDiscoverer.go index 03844cd281..d577f790bd 100644 --- a/sdk/go/aws/eventschemas/getDiscoverer.go +++ b/sdk/go/aws/eventschemas/getDiscoverer.go @@ -24,15 +24,23 @@ func LookupDiscoverer(ctx *pulumi.Context, args *LookupDiscovererArgs, opts ...p } type LookupDiscovererArgs struct { - DiscovererId string `pulumi:"discovererId"` + // The ARN of the discoverer. + DiscovererArn string `pulumi:"discovererArn"` } type LookupDiscovererResult struct { - CrossAccount *bool `pulumi:"crossAccount"` - Description *string `pulumi:"description"` - DiscovererArn *string `pulumi:"discovererArn"` - DiscovererId *string `pulumi:"discovererId"` - Tags []DiscovererTagsEntry `pulumi:"tags"` + // Defines whether event schemas from other accounts are discovered. Default is True. + CrossAccount *bool `pulumi:"crossAccount"` + // A description for the discoverer. + Description *string `pulumi:"description"` + // The ARN of the discoverer. + DiscovererArn *string `pulumi:"discovererArn"` + // The Id of the discoverer. + DiscovererId *string `pulumi:"discovererId"` + // Defines the current state of the discoverer. + State *string `pulumi:"state"` + // Tags associated with the resource. + Tags []DiscovererTagsEntry `pulumi:"tags"` } func LookupDiscovererOutput(ctx *pulumi.Context, args LookupDiscovererOutputArgs, opts ...pulumi.InvokeOption) LookupDiscovererResultOutput { @@ -49,7 +57,8 @@ func LookupDiscovererOutput(ctx *pulumi.Context, args LookupDiscovererOutputArgs } type LookupDiscovererOutputArgs struct { - DiscovererId pulumi.StringInput `pulumi:"discovererId"` + // The ARN of the discoverer. + DiscovererArn pulumi.StringInput `pulumi:"discovererArn"` } func (LookupDiscovererOutputArgs) ElementType() reflect.Type { @@ -76,22 +85,32 @@ func (o LookupDiscovererResultOutput) ToOutput(ctx context.Context) pulumix.Outp } } +// Defines whether event schemas from other accounts are discovered. Default is True. func (o LookupDiscovererResultOutput) CrossAccount() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupDiscovererResult) *bool { return v.CrossAccount }).(pulumi.BoolPtrOutput) } +// A description for the discoverer. func (o LookupDiscovererResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDiscovererResult) *string { return v.Description }).(pulumi.StringPtrOutput) } +// The ARN of the discoverer. func (o LookupDiscovererResultOutput) DiscovererArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDiscovererResult) *string { return v.DiscovererArn }).(pulumi.StringPtrOutput) } +// The Id of the discoverer. func (o LookupDiscovererResultOutput) DiscovererId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDiscovererResult) *string { return v.DiscovererId }).(pulumi.StringPtrOutput) } +// Defines the current state of the discoverer. +func (o LookupDiscovererResultOutput) State() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDiscovererResult) *string { return v.State }).(pulumi.StringPtrOutput) +} + +// Tags associated with the resource. func (o LookupDiscovererResultOutput) Tags() DiscovererTagsEntryArrayOutput { return o.ApplyT(func(v LookupDiscovererResult) []DiscovererTagsEntry { return v.Tags }).(DiscovererTagsEntryArrayOutput) } diff --git a/sdk/go/aws/eventschemas/getRegistry.go b/sdk/go/aws/eventschemas/getRegistry.go index e9321bb336..c07a42b838 100644 --- a/sdk/go/aws/eventschemas/getRegistry.go +++ b/sdk/go/aws/eventschemas/getRegistry.go @@ -24,14 +24,17 @@ func LookupRegistry(ctx *pulumi.Context, args *LookupRegistryArgs, opts ...pulum } type LookupRegistryArgs struct { - Id string `pulumi:"id"` + // The ARN of the registry. + RegistryArn string `pulumi:"registryArn"` } type LookupRegistryResult struct { - Description *string `pulumi:"description"` - Id *string `pulumi:"id"` - RegistryArn *string `pulumi:"registryArn"` - Tags []RegistryTagsEntry `pulumi:"tags"` + // A description of the registry to be created. + Description *string `pulumi:"description"` + // The ARN of the registry. + RegistryArn *string `pulumi:"registryArn"` + // Tags associated with the resource. + Tags []RegistryTagsEntry `pulumi:"tags"` } func LookupRegistryOutput(ctx *pulumi.Context, args LookupRegistryOutputArgs, opts ...pulumi.InvokeOption) LookupRegistryResultOutput { @@ -48,7 +51,8 @@ func LookupRegistryOutput(ctx *pulumi.Context, args LookupRegistryOutputArgs, op } type LookupRegistryOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + // The ARN of the registry. + RegistryArn pulumi.StringInput `pulumi:"registryArn"` } func (LookupRegistryOutputArgs) ElementType() reflect.Type { @@ -75,18 +79,17 @@ func (o LookupRegistryResultOutput) ToOutput(ctx context.Context) pulumix.Output } } +// A description of the registry to be created. func (o LookupRegistryResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRegistryResult) *string { return v.Description }).(pulumi.StringPtrOutput) } -func (o LookupRegistryResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupRegistryResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - +// The ARN of the registry. func (o LookupRegistryResultOutput) RegistryArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupRegistryResult) *string { return v.RegistryArn }).(pulumi.StringPtrOutput) } +// Tags associated with the resource. func (o LookupRegistryResultOutput) Tags() RegistryTagsEntryArrayOutput { return o.ApplyT(func(v LookupRegistryResult) []RegistryTagsEntry { return v.Tags }).(RegistryTagsEntryArrayOutput) } diff --git a/sdk/go/aws/eventschemas/getSchema.go b/sdk/go/aws/eventschemas/getSchema.go index 3910eeaa10..09fd768418 100644 --- a/sdk/go/aws/eventschemas/getSchema.go +++ b/sdk/go/aws/eventschemas/getSchema.go @@ -24,17 +24,27 @@ func LookupSchema(ctx *pulumi.Context, args *LookupSchemaArgs, opts ...pulumi.In } type LookupSchemaArgs struct { - Id string `pulumi:"id"` + // The ARN of the schema. + SchemaArn string `pulumi:"schemaArn"` } type LookupSchemaResult struct { - Content *string `pulumi:"content"` - Description *string `pulumi:"description"` - Id *string `pulumi:"id"` - SchemaArn *string `pulumi:"schemaArn"` - SchemaVersion *string `pulumi:"schemaVersion"` - Tags []SchemaTagsEntry `pulumi:"tags"` - Type *string `pulumi:"type"` + // The source of the schema definition. + Content *string `pulumi:"content"` + // A description of the schema. + Description *string `pulumi:"description"` + // The last modified time of the schema. + LastModified *string `pulumi:"lastModified"` + // The ARN of the schema. + SchemaArn *string `pulumi:"schemaArn"` + // The version number of the schema. + SchemaVersion *string `pulumi:"schemaVersion"` + // Tags associated with the resource. + Tags []SchemaTagsEntry `pulumi:"tags"` + // The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + Type *string `pulumi:"type"` + // The date the schema version was created. + VersionCreatedDate *string `pulumi:"versionCreatedDate"` } func LookupSchemaOutput(ctx *pulumi.Context, args LookupSchemaOutputArgs, opts ...pulumi.InvokeOption) LookupSchemaResultOutput { @@ -51,7 +61,8 @@ func LookupSchemaOutput(ctx *pulumi.Context, args LookupSchemaOutputArgs, opts . } type LookupSchemaOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + // The ARN of the schema. + SchemaArn pulumi.StringInput `pulumi:"schemaArn"` } func (LookupSchemaOutputArgs) ElementType() reflect.Type { @@ -78,34 +89,46 @@ func (o LookupSchemaResultOutput) ToOutput(ctx context.Context) pulumix.Output[L } } +// The source of the schema definition. func (o LookupSchemaResultOutput) Content() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSchemaResult) *string { return v.Content }).(pulumi.StringPtrOutput) } +// A description of the schema. func (o LookupSchemaResultOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSchemaResult) *string { return v.Description }).(pulumi.StringPtrOutput) } -func (o LookupSchemaResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupSchemaResult) *string { return v.Id }).(pulumi.StringPtrOutput) +// The last modified time of the schema. +func (o LookupSchemaResultOutput) LastModified() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupSchemaResult) *string { return v.LastModified }).(pulumi.StringPtrOutput) } +// The ARN of the schema. func (o LookupSchemaResultOutput) SchemaArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSchemaResult) *string { return v.SchemaArn }).(pulumi.StringPtrOutput) } +// The version number of the schema. func (o LookupSchemaResultOutput) SchemaVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSchemaResult) *string { return v.SchemaVersion }).(pulumi.StringPtrOutput) } +// Tags associated with the resource. func (o LookupSchemaResultOutput) Tags() SchemaTagsEntryArrayOutput { return o.ApplyT(func(v LookupSchemaResult) []SchemaTagsEntry { return v.Tags }).(SchemaTagsEntryArrayOutput) } +// The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. func (o LookupSchemaResultOutput) Type() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSchemaResult) *string { return v.Type }).(pulumi.StringPtrOutput) } +// The date the schema version was created. +func (o LookupSchemaResultOutput) VersionCreatedDate() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupSchemaResult) *string { return v.VersionCreatedDate }).(pulumi.StringPtrOutput) +} + func init() { pulumi.RegisterOutputType(LookupSchemaResultOutput{}) } diff --git a/sdk/go/aws/eventschemas/registry.go b/sdk/go/aws/eventschemas/registry.go index 6e8980a648..444988f659 100644 --- a/sdk/go/aws/eventschemas/registry.go +++ b/sdk/go/aws/eventschemas/registry.go @@ -13,15 +13,17 @@ import ( ) // Resource Type definition for AWS::EventSchemas::Registry -// -// Deprecated: Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type Registry struct { pulumi.CustomResourceState - Description pulumi.StringPtrOutput `pulumi:"description"` - RegistryArn pulumi.StringOutput `pulumi:"registryArn"` - RegistryName pulumi.StringPtrOutput `pulumi:"registryName"` - Tags RegistryTagsEntryArrayOutput `pulumi:"tags"` + // A description of the registry to be created. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The ARN of the registry. + RegistryArn pulumi.StringOutput `pulumi:"registryArn"` + // The name of the schema registry. + RegistryName pulumi.StringPtrOutput `pulumi:"registryName"` + // Tags associated with the resource. + Tags RegistryTagsEntryArrayOutput `pulumi:"tags"` } // NewRegistry registers a new resource with the given unique name, arguments, and options. @@ -68,16 +70,22 @@ func (RegistryState) ElementType() reflect.Type { } type registryArgs struct { - Description *string `pulumi:"description"` - RegistryName *string `pulumi:"registryName"` - Tags []RegistryTagsEntry `pulumi:"tags"` + // A description of the registry to be created. + Description *string `pulumi:"description"` + // The name of the schema registry. + RegistryName *string `pulumi:"registryName"` + // Tags associated with the resource. + Tags []RegistryTagsEntry `pulumi:"tags"` } // The set of arguments for constructing a Registry resource. type RegistryArgs struct { - Description pulumi.StringPtrInput + // A description of the registry to be created. + Description pulumi.StringPtrInput + // The name of the schema registry. RegistryName pulumi.StringPtrInput - Tags RegistryTagsEntryArrayInput + // Tags associated with the resource. + Tags RegistryTagsEntryArrayInput } func (RegistryArgs) ElementType() reflect.Type { @@ -129,18 +137,22 @@ func (o RegistryOutput) ToOutput(ctx context.Context) pulumix.Output[*Registry] } } +// A description of the registry to be created. func (o RegistryOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Registry) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// The ARN of the registry. func (o RegistryOutput) RegistryArn() pulumi.StringOutput { return o.ApplyT(func(v *Registry) pulumi.StringOutput { return v.RegistryArn }).(pulumi.StringOutput) } +// The name of the schema registry. func (o RegistryOutput) RegistryName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Registry) pulumi.StringPtrOutput { return v.RegistryName }).(pulumi.StringPtrOutput) } +// Tags associated with the resource. func (o RegistryOutput) Tags() RegistryTagsEntryArrayOutput { return o.ApplyT(func(v *Registry) RegistryTagsEntryArrayOutput { return v.Tags }).(RegistryTagsEntryArrayOutput) } diff --git a/sdk/go/aws/eventschemas/schema.go b/sdk/go/aws/eventschemas/schema.go index ca4dc11738..9800d2ec09 100644 --- a/sdk/go/aws/eventschemas/schema.go +++ b/sdk/go/aws/eventschemas/schema.go @@ -14,19 +14,29 @@ import ( ) // Resource Type definition for AWS::EventSchemas::Schema -// -// Deprecated: Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. type Schema struct { pulumi.CustomResourceState - Content pulumi.StringOutput `pulumi:"content"` - Description pulumi.StringPtrOutput `pulumi:"description"` - RegistryName pulumi.StringOutput `pulumi:"registryName"` - SchemaArn pulumi.StringOutput `pulumi:"schemaArn"` - SchemaName pulumi.StringPtrOutput `pulumi:"schemaName"` - SchemaVersion pulumi.StringOutput `pulumi:"schemaVersion"` - Tags SchemaTagsEntryArrayOutput `pulumi:"tags"` - Type pulumi.StringOutput `pulumi:"type"` + // The source of the schema definition. + Content pulumi.StringOutput `pulumi:"content"` + // A description of the schema. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The last modified time of the schema. + LastModified pulumi.StringOutput `pulumi:"lastModified"` + // The name of the schema registry. + RegistryName pulumi.StringOutput `pulumi:"registryName"` + // The ARN of the schema. + SchemaArn pulumi.StringOutput `pulumi:"schemaArn"` + // The name of the schema. + SchemaName pulumi.StringPtrOutput `pulumi:"schemaName"` + // The version number of the schema. + SchemaVersion pulumi.StringOutput `pulumi:"schemaVersion"` + // Tags associated with the resource. + Tags SchemaTagsEntryArrayOutput `pulumi:"tags"` + // The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + Type pulumi.StringOutput `pulumi:"type"` + // The date the schema version was created. + VersionCreatedDate pulumi.StringOutput `pulumi:"versionCreatedDate"` } // NewSchema registers a new resource with the given unique name, arguments, and options. @@ -83,22 +93,34 @@ func (SchemaState) ElementType() reflect.Type { } type schemaArgs struct { - Content string `pulumi:"content"` - Description *string `pulumi:"description"` - RegistryName string `pulumi:"registryName"` - SchemaName *string `pulumi:"schemaName"` - Tags []SchemaTagsEntry `pulumi:"tags"` - Type string `pulumi:"type"` + // The source of the schema definition. + Content string `pulumi:"content"` + // A description of the schema. + Description *string `pulumi:"description"` + // The name of the schema registry. + RegistryName string `pulumi:"registryName"` + // The name of the schema. + SchemaName *string `pulumi:"schemaName"` + // Tags associated with the resource. + Tags []SchemaTagsEntry `pulumi:"tags"` + // The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + Type string `pulumi:"type"` } // The set of arguments for constructing a Schema resource. type SchemaArgs struct { - Content pulumi.StringInput - Description pulumi.StringPtrInput + // The source of the schema definition. + Content pulumi.StringInput + // A description of the schema. + Description pulumi.StringPtrInput + // The name of the schema registry. RegistryName pulumi.StringInput - SchemaName pulumi.StringPtrInput - Tags SchemaTagsEntryArrayInput - Type pulumi.StringInput + // The name of the schema. + SchemaName pulumi.StringPtrInput + // Tags associated with the resource. + Tags SchemaTagsEntryArrayInput + // The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + Type pulumi.StringInput } func (SchemaArgs) ElementType() reflect.Type { @@ -150,38 +172,56 @@ func (o SchemaOutput) ToOutput(ctx context.Context) pulumix.Output[*Schema] { } } +// The source of the schema definition. func (o SchemaOutput) Content() pulumi.StringOutput { return o.ApplyT(func(v *Schema) pulumi.StringOutput { return v.Content }).(pulumi.StringOutput) } +// A description of the schema. func (o SchemaOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Schema) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) } +// The last modified time of the schema. +func (o SchemaOutput) LastModified() pulumi.StringOutput { + return o.ApplyT(func(v *Schema) pulumi.StringOutput { return v.LastModified }).(pulumi.StringOutput) +} + +// The name of the schema registry. func (o SchemaOutput) RegistryName() pulumi.StringOutput { return o.ApplyT(func(v *Schema) pulumi.StringOutput { return v.RegistryName }).(pulumi.StringOutput) } +// The ARN of the schema. func (o SchemaOutput) SchemaArn() pulumi.StringOutput { return o.ApplyT(func(v *Schema) pulumi.StringOutput { return v.SchemaArn }).(pulumi.StringOutput) } +// The name of the schema. func (o SchemaOutput) SchemaName() pulumi.StringPtrOutput { return o.ApplyT(func(v *Schema) pulumi.StringPtrOutput { return v.SchemaName }).(pulumi.StringPtrOutput) } +// The version number of the schema. func (o SchemaOutput) SchemaVersion() pulumi.StringOutput { return o.ApplyT(func(v *Schema) pulumi.StringOutput { return v.SchemaVersion }).(pulumi.StringOutput) } +// Tags associated with the resource. func (o SchemaOutput) Tags() SchemaTagsEntryArrayOutput { return o.ApplyT(func(v *Schema) SchemaTagsEntryArrayOutput { return v.Tags }).(SchemaTagsEntryArrayOutput) } +// The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. func (o SchemaOutput) Type() pulumi.StringOutput { return o.ApplyT(func(v *Schema) pulumi.StringOutput { return v.Type }).(pulumi.StringOutput) } +// The date the schema version was created. +func (o SchemaOutput) VersionCreatedDate() pulumi.StringOutput { + return o.ApplyT(func(v *Schema) pulumi.StringOutput { return v.VersionCreatedDate }).(pulumi.StringOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*SchemaInput)(nil)).Elem(), &Schema{}) pulumi.RegisterOutputType(SchemaOutput{}) diff --git a/sdk/go/aws/fis/experimentTemplate.go b/sdk/go/aws/fis/experimentTemplate.go index b9aa2a9694..ecc28d1225 100644 --- a/sdk/go/aws/fis/experimentTemplate.go +++ b/sdk/go/aws/fis/experimentTemplate.go @@ -17,13 +17,14 @@ import ( type ExperimentTemplate struct { pulumi.CustomResourceState - Actions ExperimentTemplateActionMapPtrOutput `pulumi:"actions"` - Description pulumi.StringOutput `pulumi:"description"` - LogConfiguration ExperimentTemplateLogConfigurationPtrOutput `pulumi:"logConfiguration"` - RoleArn pulumi.StringOutput `pulumi:"roleArn"` - StopConditions ExperimentTemplateStopConditionArrayOutput `pulumi:"stopConditions"` - Tags pulumi.AnyOutput `pulumi:"tags"` - Targets ExperimentTemplateTargetMapOutput `pulumi:"targets"` + Actions ExperimentTemplateActionMapPtrOutput `pulumi:"actions"` + Description pulumi.StringOutput `pulumi:"description"` + ExperimentOptions ExperimentTemplateExperimentOptionsPtrOutput `pulumi:"experimentOptions"` + LogConfiguration ExperimentTemplateLogConfigurationPtrOutput `pulumi:"logConfiguration"` + RoleArn pulumi.StringOutput `pulumi:"roleArn"` + StopConditions ExperimentTemplateStopConditionArrayOutput `pulumi:"stopConditions"` + Tags pulumi.AnyOutput `pulumi:"tags"` + Targets ExperimentTemplateTargetMapOutput `pulumi:"targets"` } // NewExperimentTemplate registers a new resource with the given unique name, arguments, and options. @@ -85,24 +86,26 @@ func (ExperimentTemplateState) ElementType() reflect.Type { } type experimentTemplateArgs struct { - Actions *ExperimentTemplateActionMap `pulumi:"actions"` - Description string `pulumi:"description"` - LogConfiguration *ExperimentTemplateLogConfiguration `pulumi:"logConfiguration"` - RoleArn string `pulumi:"roleArn"` - StopConditions []ExperimentTemplateStopCondition `pulumi:"stopConditions"` - Tags interface{} `pulumi:"tags"` - Targets ExperimentTemplateTargetMap `pulumi:"targets"` + Actions *ExperimentTemplateActionMap `pulumi:"actions"` + Description string `pulumi:"description"` + ExperimentOptions *ExperimentTemplateExperimentOptions `pulumi:"experimentOptions"` + LogConfiguration *ExperimentTemplateLogConfiguration `pulumi:"logConfiguration"` + RoleArn string `pulumi:"roleArn"` + StopConditions []ExperimentTemplateStopCondition `pulumi:"stopConditions"` + Tags interface{} `pulumi:"tags"` + Targets ExperimentTemplateTargetMap `pulumi:"targets"` } // The set of arguments for constructing a ExperimentTemplate resource. type ExperimentTemplateArgs struct { - Actions ExperimentTemplateActionMapPtrInput - Description pulumi.StringInput - LogConfiguration ExperimentTemplateLogConfigurationPtrInput - RoleArn pulumi.StringInput - StopConditions ExperimentTemplateStopConditionArrayInput - Tags pulumi.Input - Targets ExperimentTemplateTargetMapInput + Actions ExperimentTemplateActionMapPtrInput + Description pulumi.StringInput + ExperimentOptions ExperimentTemplateExperimentOptionsPtrInput + LogConfiguration ExperimentTemplateLogConfigurationPtrInput + RoleArn pulumi.StringInput + StopConditions ExperimentTemplateStopConditionArrayInput + Tags pulumi.Input + Targets ExperimentTemplateTargetMapInput } func (ExperimentTemplateArgs) ElementType() reflect.Type { @@ -162,6 +165,10 @@ func (o ExperimentTemplateOutput) Description() pulumi.StringOutput { return o.ApplyT(func(v *ExperimentTemplate) pulumi.StringOutput { return v.Description }).(pulumi.StringOutput) } +func (o ExperimentTemplateOutput) ExperimentOptions() ExperimentTemplateExperimentOptionsPtrOutput { + return o.ApplyT(func(v *ExperimentTemplate) ExperimentTemplateExperimentOptionsPtrOutput { return v.ExperimentOptions }).(ExperimentTemplateExperimentOptionsPtrOutput) +} + func (o ExperimentTemplateOutput) LogConfiguration() ExperimentTemplateLogConfigurationPtrOutput { return o.ApplyT(func(v *ExperimentTemplate) ExperimentTemplateLogConfigurationPtrOutput { return v.LogConfiguration }).(ExperimentTemplateLogConfigurationPtrOutput) } diff --git a/sdk/go/aws/fis/getExperimentTemplate.go b/sdk/go/aws/fis/getExperimentTemplate.go index 6710b6f598..3b118d124f 100644 --- a/sdk/go/aws/fis/getExperimentTemplate.go +++ b/sdk/go/aws/fis/getExperimentTemplate.go @@ -28,13 +28,14 @@ type LookupExperimentTemplateArgs struct { } type LookupExperimentTemplateResult struct { - Actions *ExperimentTemplateActionMap `pulumi:"actions"` - Description *string `pulumi:"description"` - Id *string `pulumi:"id"` - LogConfiguration *ExperimentTemplateLogConfiguration `pulumi:"logConfiguration"` - RoleArn *string `pulumi:"roleArn"` - StopConditions []ExperimentTemplateStopCondition `pulumi:"stopConditions"` - Targets *ExperimentTemplateTargetMap `pulumi:"targets"` + Actions *ExperimentTemplateActionMap `pulumi:"actions"` + Description *string `pulumi:"description"` + ExperimentOptions *ExperimentTemplateExperimentOptions `pulumi:"experimentOptions"` + Id *string `pulumi:"id"` + LogConfiguration *ExperimentTemplateLogConfiguration `pulumi:"logConfiguration"` + RoleArn *string `pulumi:"roleArn"` + StopConditions []ExperimentTemplateStopCondition `pulumi:"stopConditions"` + Targets *ExperimentTemplateTargetMap `pulumi:"targets"` } func LookupExperimentTemplateOutput(ctx *pulumi.Context, args LookupExperimentTemplateOutputArgs, opts ...pulumi.InvokeOption) LookupExperimentTemplateResultOutput { @@ -86,6 +87,12 @@ func (o LookupExperimentTemplateResultOutput) Description() pulumi.StringPtrOutp return o.ApplyT(func(v LookupExperimentTemplateResult) *string { return v.Description }).(pulumi.StringPtrOutput) } +func (o LookupExperimentTemplateResultOutput) ExperimentOptions() ExperimentTemplateExperimentOptionsPtrOutput { + return o.ApplyT(func(v LookupExperimentTemplateResult) *ExperimentTemplateExperimentOptions { + return v.ExperimentOptions + }).(ExperimentTemplateExperimentOptionsPtrOutput) +} + func (o LookupExperimentTemplateResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupExperimentTemplateResult) *string { return v.Id }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/fis/getTargetAccountConfiguration.go b/sdk/go/aws/fis/getTargetAccountConfiguration.go new file mode 100644 index 0000000000..b604938620 --- /dev/null +++ b/sdk/go/aws/fis/getTargetAccountConfiguration.go @@ -0,0 +1,88 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fis + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::FIS::TargetAccountConfiguration +func LookupTargetAccountConfiguration(ctx *pulumi.Context, args *LookupTargetAccountConfigurationArgs, opts ...pulumi.InvokeOption) (*LookupTargetAccountConfigurationResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupTargetAccountConfigurationResult + err := ctx.Invoke("aws-native:fis:getTargetAccountConfiguration", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupTargetAccountConfigurationArgs struct { + AccountId string `pulumi:"accountId"` + ExperimentTemplateId string `pulumi:"experimentTemplateId"` +} + +type LookupTargetAccountConfigurationResult struct { + Description *string `pulumi:"description"` + RoleArn *string `pulumi:"roleArn"` +} + +func LookupTargetAccountConfigurationOutput(ctx *pulumi.Context, args LookupTargetAccountConfigurationOutputArgs, opts ...pulumi.InvokeOption) LookupTargetAccountConfigurationResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupTargetAccountConfigurationResult, error) { + args := v.(LookupTargetAccountConfigurationArgs) + r, err := LookupTargetAccountConfiguration(ctx, &args, opts...) + var s LookupTargetAccountConfigurationResult + if r != nil { + s = *r + } + return s, err + }).(LookupTargetAccountConfigurationResultOutput) +} + +type LookupTargetAccountConfigurationOutputArgs struct { + AccountId pulumi.StringInput `pulumi:"accountId"` + ExperimentTemplateId pulumi.StringInput `pulumi:"experimentTemplateId"` +} + +func (LookupTargetAccountConfigurationOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupTargetAccountConfigurationArgs)(nil)).Elem() +} + +type LookupTargetAccountConfigurationResultOutput struct{ *pulumi.OutputState } + +func (LookupTargetAccountConfigurationResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupTargetAccountConfigurationResult)(nil)).Elem() +} + +func (o LookupTargetAccountConfigurationResultOutput) ToLookupTargetAccountConfigurationResultOutput() LookupTargetAccountConfigurationResultOutput { + return o +} + +func (o LookupTargetAccountConfigurationResultOutput) ToLookupTargetAccountConfigurationResultOutputWithContext(ctx context.Context) LookupTargetAccountConfigurationResultOutput { + return o +} + +func (o LookupTargetAccountConfigurationResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupTargetAccountConfigurationResult] { + return pulumix.Output[LookupTargetAccountConfigurationResult]{ + OutputState: o.OutputState, + } +} + +func (o LookupTargetAccountConfigurationResultOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTargetAccountConfigurationResult) *string { return v.Description }).(pulumi.StringPtrOutput) +} + +func (o LookupTargetAccountConfigurationResultOutput) RoleArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupTargetAccountConfigurationResult) *string { return v.RoleArn }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupTargetAccountConfigurationResultOutput{}) +} diff --git a/sdk/go/aws/fis/init.go b/sdk/go/aws/fis/init.go index 8e109efc8e..f37b6ee192 100644 --- a/sdk/go/aws/fis/init.go +++ b/sdk/go/aws/fis/init.go @@ -23,6 +23,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi switch typ { case "aws-native:fis:ExperimentTemplate": r = &ExperimentTemplate{} + case "aws-native:fis:TargetAccountConfiguration": + r = &TargetAccountConfiguration{} default: return nil, fmt.Errorf("unknown resource type: %s", typ) } diff --git a/sdk/go/aws/fis/pulumiEnums.go b/sdk/go/aws/fis/pulumiEnums.go new file mode 100644 index 0000000000..d3821ade16 --- /dev/null +++ b/sdk/go/aws/fis/pulumiEnums.go @@ -0,0 +1,389 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fis + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// The account targeting setting for the experiment template. +type ExperimentTemplateExperimentOptionsAccountTargeting string + +const ( + ExperimentTemplateExperimentOptionsAccountTargetingMultiAccount = ExperimentTemplateExperimentOptionsAccountTargeting("multi-account") + ExperimentTemplateExperimentOptionsAccountTargetingSingleAccount = ExperimentTemplateExperimentOptionsAccountTargeting("single-account") +) + +func (ExperimentTemplateExperimentOptionsAccountTargeting) ElementType() reflect.Type { + return reflect.TypeOf((*ExperimentTemplateExperimentOptionsAccountTargeting)(nil)).Elem() +} + +func (e ExperimentTemplateExperimentOptionsAccountTargeting) ToExperimentTemplateExperimentOptionsAccountTargetingOutput() ExperimentTemplateExperimentOptionsAccountTargetingOutput { + return pulumi.ToOutput(e).(ExperimentTemplateExperimentOptionsAccountTargetingOutput) +} + +func (e ExperimentTemplateExperimentOptionsAccountTargeting) ToExperimentTemplateExperimentOptionsAccountTargetingOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsAccountTargetingOutput { + return pulumi.ToOutputWithContext(ctx, e).(ExperimentTemplateExperimentOptionsAccountTargetingOutput) +} + +func (e ExperimentTemplateExperimentOptionsAccountTargeting) ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutput() ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return e.ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(context.Background()) +} + +func (e ExperimentTemplateExperimentOptionsAccountTargeting) ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return ExperimentTemplateExperimentOptionsAccountTargeting(e).ToExperimentTemplateExperimentOptionsAccountTargetingOutputWithContext(ctx).ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(ctx) +} + +func (e ExperimentTemplateExperimentOptionsAccountTargeting) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ExperimentTemplateExperimentOptionsAccountTargeting) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ExperimentTemplateExperimentOptionsAccountTargeting) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ExperimentTemplateExperimentOptionsAccountTargeting) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ExperimentTemplateExperimentOptionsAccountTargetingOutput struct{ *pulumi.OutputState } + +func (ExperimentTemplateExperimentOptionsAccountTargetingOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ExperimentTemplateExperimentOptionsAccountTargeting)(nil)).Elem() +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToExperimentTemplateExperimentOptionsAccountTargetingOutput() ExperimentTemplateExperimentOptionsAccountTargetingOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToExperimentTemplateExperimentOptionsAccountTargetingOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsAccountTargetingOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutput() ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return o.ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ExperimentTemplateExperimentOptionsAccountTargeting) *ExperimentTemplateExperimentOptionsAccountTargeting { + return &v + }).(ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToOutput(ctx context.Context) pulumix.Output[ExperimentTemplateExperimentOptionsAccountTargeting] { + return pulumix.Output[ExperimentTemplateExperimentOptionsAccountTargeting]{ + OutputState: o.OutputState, + } +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ExperimentTemplateExperimentOptionsAccountTargeting) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ExperimentTemplateExperimentOptionsAccountTargeting) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput struct{ *pulumi.OutputState } + +func (ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ExperimentTemplateExperimentOptionsAccountTargeting)(nil)).Elem() +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutput() ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ExperimentTemplateExperimentOptionsAccountTargeting] { + return pulumix.Output[*ExperimentTemplateExperimentOptionsAccountTargeting]{ + OutputState: o.OutputState, + } +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) Elem() ExperimentTemplateExperimentOptionsAccountTargetingOutput { + return o.ApplyT(func(v *ExperimentTemplateExperimentOptionsAccountTargeting) ExperimentTemplateExperimentOptionsAccountTargeting { + if v != nil { + return *v + } + var ret ExperimentTemplateExperimentOptionsAccountTargeting + return ret + }).(ExperimentTemplateExperimentOptionsAccountTargetingOutput) +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ExperimentTemplateExperimentOptionsAccountTargeting) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ExperimentTemplateExperimentOptionsAccountTargetingInput is an input type that accepts ExperimentTemplateExperimentOptionsAccountTargetingArgs and ExperimentTemplateExperimentOptionsAccountTargetingOutput values. +// You can construct a concrete instance of `ExperimentTemplateExperimentOptionsAccountTargetingInput` via: +// +// ExperimentTemplateExperimentOptionsAccountTargetingArgs{...} +type ExperimentTemplateExperimentOptionsAccountTargetingInput interface { + pulumi.Input + + ToExperimentTemplateExperimentOptionsAccountTargetingOutput() ExperimentTemplateExperimentOptionsAccountTargetingOutput + ToExperimentTemplateExperimentOptionsAccountTargetingOutputWithContext(context.Context) ExperimentTemplateExperimentOptionsAccountTargetingOutput +} + +var experimentTemplateExperimentOptionsAccountTargetingPtrType = reflect.TypeOf((**ExperimentTemplateExperimentOptionsAccountTargeting)(nil)).Elem() + +type ExperimentTemplateExperimentOptionsAccountTargetingPtrInput interface { + pulumi.Input + + ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutput() ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput + ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(context.Context) ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput +} + +type experimentTemplateExperimentOptionsAccountTargetingPtr string + +func ExperimentTemplateExperimentOptionsAccountTargetingPtr(v string) ExperimentTemplateExperimentOptionsAccountTargetingPtrInput { + return (*experimentTemplateExperimentOptionsAccountTargetingPtr)(&v) +} + +func (*experimentTemplateExperimentOptionsAccountTargetingPtr) ElementType() reflect.Type { + return experimentTemplateExperimentOptionsAccountTargetingPtrType +} + +func (in *experimentTemplateExperimentOptionsAccountTargetingPtr) ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutput() ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return pulumi.ToOutput(in).(ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) +} + +func (in *experimentTemplateExperimentOptionsAccountTargetingPtr) ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) +} + +func (in *experimentTemplateExperimentOptionsAccountTargetingPtr) ToOutput(ctx context.Context) pulumix.Output[*ExperimentTemplateExperimentOptionsAccountTargeting] { + return pulumix.Output[*ExperimentTemplateExperimentOptionsAccountTargeting]{ + OutputState: in.ToExperimentTemplateExperimentOptionsAccountTargetingPtrOutputWithContext(ctx).OutputState, + } +} + +// The target resolution failure mode for the experiment template. +type ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode string + +const ( + ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeFail = ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode("fail") + ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeSkip = ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode("skip") +) + +func (ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ElementType() reflect.Type { + return reflect.TypeOf((*ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode)(nil)).Elem() +} + +func (e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput { + return pulumi.ToOutput(e).(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) +} + +func (e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput { + return pulumi.ToOutputWithContext(ctx, e).(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) +} + +func (e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return e.ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(context.Background()) +} + +func (e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode(e).ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutputWithContext(ctx).ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(ctx) +} + +func (e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput struct{ *pulumi.OutputState } + +func (ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode)(nil)).Elem() +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return o.ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) *ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode { + return &v + }).(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToOutput(ctx context.Context) pulumix.Output[ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode] { + return pulumix.Output[ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode]{ + OutputState: o.OutputState, + } +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput struct{ *pulumi.OutputState } + +func (ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode)(nil)).Elem() +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode] { + return pulumix.Output[*ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode]{ + OutputState: o.OutputState, + } +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) Elem() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput { + return o.ApplyT(func(v *ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode { + if v != nil { + return *v + } + var ret ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode + return ret + }).(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput) +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeInput is an input type that accepts ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeArgs and ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput values. +// You can construct a concrete instance of `ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeInput` via: +// +// ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeArgs{...} +type ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeInput interface { + pulumi.Input + + ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput + ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutputWithContext(context.Context) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput +} + +var experimentTemplateExperimentOptionsEmptyTargetResolutionModePtrType = reflect.TypeOf((**ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode)(nil)).Elem() + +type ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrInput interface { + pulumi.Input + + ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput + ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(context.Context) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput +} + +type experimentTemplateExperimentOptionsEmptyTargetResolutionModePtr string + +func ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtr(v string) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrInput { + return (*experimentTemplateExperimentOptionsEmptyTargetResolutionModePtr)(&v) +} + +func (*experimentTemplateExperimentOptionsEmptyTargetResolutionModePtr) ElementType() reflect.Type { + return experimentTemplateExperimentOptionsEmptyTargetResolutionModePtrType +} + +func (in *experimentTemplateExperimentOptionsEmptyTargetResolutionModePtr) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return pulumi.ToOutput(in).(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) +} + +func (in *experimentTemplateExperimentOptionsEmptyTargetResolutionModePtr) ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) +} + +func (in *experimentTemplateExperimentOptionsEmptyTargetResolutionModePtr) ToOutput(ctx context.Context) pulumix.Output[*ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode] { + return pulumix.Output[*ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode]{ + OutputState: in.ToExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutputWithContext(ctx).OutputState, + } +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateExperimentOptionsAccountTargetingInput)(nil)).Elem(), ExperimentTemplateExperimentOptionsAccountTargeting("multi-account")) + pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateExperimentOptionsAccountTargetingPtrInput)(nil)).Elem(), ExperimentTemplateExperimentOptionsAccountTargeting("multi-account")) + pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeInput)(nil)).Elem(), ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode("fail")) + pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrInput)(nil)).Elem(), ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode("fail")) + pulumi.RegisterOutputType(ExperimentTemplateExperimentOptionsAccountTargetingOutput{}) + pulumi.RegisterOutputType(ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput{}) + pulumi.RegisterOutputType(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModeOutput{}) + pulumi.RegisterOutputType(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput{}) +} diff --git a/sdk/go/aws/fis/pulumiTypes.go b/sdk/go/aws/fis/pulumiTypes.go index dc4a88fde0..80d46daa51 100644 --- a/sdk/go/aws/fis/pulumiTypes.go +++ b/sdk/go/aws/fis/pulumiTypes.go @@ -159,6 +159,190 @@ func (o ExperimentTemplateActionMapPtrOutput) Elem() ExperimentTemplateActionMap }).(ExperimentTemplateActionMapOutput) } +type ExperimentTemplateExperimentOptions struct { + // The account targeting setting for the experiment template. + AccountTargeting *ExperimentTemplateExperimentOptionsAccountTargeting `pulumi:"accountTargeting"` + // The target resolution failure mode for the experiment template. + EmptyTargetResolutionMode *ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode `pulumi:"emptyTargetResolutionMode"` +} + +// ExperimentTemplateExperimentOptionsInput is an input type that accepts ExperimentTemplateExperimentOptionsArgs and ExperimentTemplateExperimentOptionsOutput values. +// You can construct a concrete instance of `ExperimentTemplateExperimentOptionsInput` via: +// +// ExperimentTemplateExperimentOptionsArgs{...} +type ExperimentTemplateExperimentOptionsInput interface { + pulumi.Input + + ToExperimentTemplateExperimentOptionsOutput() ExperimentTemplateExperimentOptionsOutput + ToExperimentTemplateExperimentOptionsOutputWithContext(context.Context) ExperimentTemplateExperimentOptionsOutput +} + +type ExperimentTemplateExperimentOptionsArgs struct { + // The account targeting setting for the experiment template. + AccountTargeting ExperimentTemplateExperimentOptionsAccountTargetingPtrInput `pulumi:"accountTargeting"` + // The target resolution failure mode for the experiment template. + EmptyTargetResolutionMode ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrInput `pulumi:"emptyTargetResolutionMode"` +} + +func (ExperimentTemplateExperimentOptionsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ExperimentTemplateExperimentOptions)(nil)).Elem() +} + +func (i ExperimentTemplateExperimentOptionsArgs) ToExperimentTemplateExperimentOptionsOutput() ExperimentTemplateExperimentOptionsOutput { + return i.ToExperimentTemplateExperimentOptionsOutputWithContext(context.Background()) +} + +func (i ExperimentTemplateExperimentOptionsArgs) ToExperimentTemplateExperimentOptionsOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsOutput { + return pulumi.ToOutputWithContext(ctx, i).(ExperimentTemplateExperimentOptionsOutput) +} + +func (i ExperimentTemplateExperimentOptionsArgs) ToOutput(ctx context.Context) pulumix.Output[ExperimentTemplateExperimentOptions] { + return pulumix.Output[ExperimentTemplateExperimentOptions]{ + OutputState: i.ToExperimentTemplateExperimentOptionsOutputWithContext(ctx).OutputState, + } +} + +func (i ExperimentTemplateExperimentOptionsArgs) ToExperimentTemplateExperimentOptionsPtrOutput() ExperimentTemplateExperimentOptionsPtrOutput { + return i.ToExperimentTemplateExperimentOptionsPtrOutputWithContext(context.Background()) +} + +func (i ExperimentTemplateExperimentOptionsArgs) ToExperimentTemplateExperimentOptionsPtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ExperimentTemplateExperimentOptionsOutput).ToExperimentTemplateExperimentOptionsPtrOutputWithContext(ctx) +} + +// ExperimentTemplateExperimentOptionsPtrInput is an input type that accepts ExperimentTemplateExperimentOptionsArgs, ExperimentTemplateExperimentOptionsPtr and ExperimentTemplateExperimentOptionsPtrOutput values. +// You can construct a concrete instance of `ExperimentTemplateExperimentOptionsPtrInput` via: +// +// ExperimentTemplateExperimentOptionsArgs{...} +// +// or: +// +// nil +type ExperimentTemplateExperimentOptionsPtrInput interface { + pulumi.Input + + ToExperimentTemplateExperimentOptionsPtrOutput() ExperimentTemplateExperimentOptionsPtrOutput + ToExperimentTemplateExperimentOptionsPtrOutputWithContext(context.Context) ExperimentTemplateExperimentOptionsPtrOutput +} + +type experimentTemplateExperimentOptionsPtrType ExperimentTemplateExperimentOptionsArgs + +func ExperimentTemplateExperimentOptionsPtr(v *ExperimentTemplateExperimentOptionsArgs) ExperimentTemplateExperimentOptionsPtrInput { + return (*experimentTemplateExperimentOptionsPtrType)(v) +} + +func (*experimentTemplateExperimentOptionsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**ExperimentTemplateExperimentOptions)(nil)).Elem() +} + +func (i *experimentTemplateExperimentOptionsPtrType) ToExperimentTemplateExperimentOptionsPtrOutput() ExperimentTemplateExperimentOptionsPtrOutput { + return i.ToExperimentTemplateExperimentOptionsPtrOutputWithContext(context.Background()) +} + +func (i *experimentTemplateExperimentOptionsPtrType) ToExperimentTemplateExperimentOptionsPtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(ExperimentTemplateExperimentOptionsPtrOutput) +} + +func (i *experimentTemplateExperimentOptionsPtrType) ToOutput(ctx context.Context) pulumix.Output[*ExperimentTemplateExperimentOptions] { + return pulumix.Output[*ExperimentTemplateExperimentOptions]{ + OutputState: i.ToExperimentTemplateExperimentOptionsPtrOutputWithContext(ctx).OutputState, + } +} + +type ExperimentTemplateExperimentOptionsOutput struct{ *pulumi.OutputState } + +func (ExperimentTemplateExperimentOptionsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ExperimentTemplateExperimentOptions)(nil)).Elem() +} + +func (o ExperimentTemplateExperimentOptionsOutput) ToExperimentTemplateExperimentOptionsOutput() ExperimentTemplateExperimentOptionsOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsOutput) ToExperimentTemplateExperimentOptionsOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsOutput) ToExperimentTemplateExperimentOptionsPtrOutput() ExperimentTemplateExperimentOptionsPtrOutput { + return o.ToExperimentTemplateExperimentOptionsPtrOutputWithContext(context.Background()) +} + +func (o ExperimentTemplateExperimentOptionsOutput) ToExperimentTemplateExperimentOptionsPtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ExperimentTemplateExperimentOptions) *ExperimentTemplateExperimentOptions { + return &v + }).(ExperimentTemplateExperimentOptionsPtrOutput) +} + +func (o ExperimentTemplateExperimentOptionsOutput) ToOutput(ctx context.Context) pulumix.Output[ExperimentTemplateExperimentOptions] { + return pulumix.Output[ExperimentTemplateExperimentOptions]{ + OutputState: o.OutputState, + } +} + +// The account targeting setting for the experiment template. +func (o ExperimentTemplateExperimentOptionsOutput) AccountTargeting() ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return o.ApplyT(func(v ExperimentTemplateExperimentOptions) *ExperimentTemplateExperimentOptionsAccountTargeting { + return v.AccountTargeting + }).(ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) +} + +// The target resolution failure mode for the experiment template. +func (o ExperimentTemplateExperimentOptionsOutput) EmptyTargetResolutionMode() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return o.ApplyT(func(v ExperimentTemplateExperimentOptions) *ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode { + return v.EmptyTargetResolutionMode + }).(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) +} + +type ExperimentTemplateExperimentOptionsPtrOutput struct{ *pulumi.OutputState } + +func (ExperimentTemplateExperimentOptionsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ExperimentTemplateExperimentOptions)(nil)).Elem() +} + +func (o ExperimentTemplateExperimentOptionsPtrOutput) ToExperimentTemplateExperimentOptionsPtrOutput() ExperimentTemplateExperimentOptionsPtrOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsPtrOutput) ToExperimentTemplateExperimentOptionsPtrOutputWithContext(ctx context.Context) ExperimentTemplateExperimentOptionsPtrOutput { + return o +} + +func (o ExperimentTemplateExperimentOptionsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ExperimentTemplateExperimentOptions] { + return pulumix.Output[*ExperimentTemplateExperimentOptions]{ + OutputState: o.OutputState, + } +} + +func (o ExperimentTemplateExperimentOptionsPtrOutput) Elem() ExperimentTemplateExperimentOptionsOutput { + return o.ApplyT(func(v *ExperimentTemplateExperimentOptions) ExperimentTemplateExperimentOptions { + if v != nil { + return *v + } + var ret ExperimentTemplateExperimentOptions + return ret + }).(ExperimentTemplateExperimentOptionsOutput) +} + +// The account targeting setting for the experiment template. +func (o ExperimentTemplateExperimentOptionsPtrOutput) AccountTargeting() ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput { + return o.ApplyT(func(v *ExperimentTemplateExperimentOptions) *ExperimentTemplateExperimentOptionsAccountTargeting { + if v == nil { + return nil + } + return v.AccountTargeting + }).(ExperimentTemplateExperimentOptionsAccountTargetingPtrOutput) +} + +// The target resolution failure mode for the experiment template. +func (o ExperimentTemplateExperimentOptionsPtrOutput) EmptyTargetResolutionMode() ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput { + return o.ApplyT(func(v *ExperimentTemplateExperimentOptions) *ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode { + if v == nil { + return nil + } + return v.EmptyTargetResolutionMode + }).(ExperimentTemplateExperimentOptionsEmptyTargetResolutionModePtrOutput) +} + type ExperimentTemplateLogConfiguration struct { CloudWatchLogsConfiguration *ExperimentTemplateLogConfigurationCloudWatchLogsConfigurationProperties `pulumi:"cloudWatchLogsConfiguration"` LogSchemaVersion int `pulumi:"logSchemaVersion"` @@ -896,6 +1080,8 @@ func (o ExperimentTemplateTargetMapPtrOutput) Elem() ExperimentTemplateTargetMap func init() { pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateActionMapInput)(nil)).Elem(), ExperimentTemplateActionMapArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateActionMapPtrInput)(nil)).Elem(), ExperimentTemplateActionMapArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateExperimentOptionsInput)(nil)).Elem(), ExperimentTemplateExperimentOptionsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateExperimentOptionsPtrInput)(nil)).Elem(), ExperimentTemplateExperimentOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateLogConfigurationInput)(nil)).Elem(), ExperimentTemplateLogConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateLogConfigurationPtrInput)(nil)).Elem(), ExperimentTemplateLogConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateLogConfigurationCloudWatchLogsConfigurationPropertiesInput)(nil)).Elem(), ExperimentTemplateLogConfigurationCloudWatchLogsConfigurationPropertiesArgs{}) @@ -907,6 +1093,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ExperimentTemplateTargetMapInput)(nil)).Elem(), ExperimentTemplateTargetMapArgs{}) pulumi.RegisterOutputType(ExperimentTemplateActionMapOutput{}) pulumi.RegisterOutputType(ExperimentTemplateActionMapPtrOutput{}) + pulumi.RegisterOutputType(ExperimentTemplateExperimentOptionsOutput{}) + pulumi.RegisterOutputType(ExperimentTemplateExperimentOptionsPtrOutput{}) pulumi.RegisterOutputType(ExperimentTemplateLogConfigurationOutput{}) pulumi.RegisterOutputType(ExperimentTemplateLogConfigurationPtrOutput{}) pulumi.RegisterOutputType(ExperimentTemplateLogConfigurationCloudWatchLogsConfigurationPropertiesOutput{}) diff --git a/sdk/go/aws/fis/targetAccountConfiguration.go b/sdk/go/aws/fis/targetAccountConfiguration.go new file mode 100644 index 0000000000..2c38966db6 --- /dev/null +++ b/sdk/go/aws/fis/targetAccountConfiguration.go @@ -0,0 +1,162 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package fis + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::FIS::TargetAccountConfiguration +type TargetAccountConfiguration struct { + pulumi.CustomResourceState + + AccountId pulumi.StringOutput `pulumi:"accountId"` + Description pulumi.StringPtrOutput `pulumi:"description"` + ExperimentTemplateId pulumi.StringOutput `pulumi:"experimentTemplateId"` + RoleArn pulumi.StringOutput `pulumi:"roleArn"` +} + +// NewTargetAccountConfiguration registers a new resource with the given unique name, arguments, and options. +func NewTargetAccountConfiguration(ctx *pulumi.Context, + name string, args *TargetAccountConfigurationArgs, opts ...pulumi.ResourceOption) (*TargetAccountConfiguration, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.AccountId == nil { + return nil, errors.New("invalid value for required argument 'AccountId'") + } + if args.ExperimentTemplateId == nil { + return nil, errors.New("invalid value for required argument 'ExperimentTemplateId'") + } + if args.RoleArn == nil { + return nil, errors.New("invalid value for required argument 'RoleArn'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "accountId", + "experimentTemplateId", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource TargetAccountConfiguration + err := ctx.RegisterResource("aws-native:fis:TargetAccountConfiguration", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetTargetAccountConfiguration gets an existing TargetAccountConfiguration 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 GetTargetAccountConfiguration(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *TargetAccountConfigurationState, opts ...pulumi.ResourceOption) (*TargetAccountConfiguration, error) { + var resource TargetAccountConfiguration + err := ctx.ReadResource("aws-native:fis:TargetAccountConfiguration", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering TargetAccountConfiguration resources. +type targetAccountConfigurationState struct { +} + +type TargetAccountConfigurationState struct { +} + +func (TargetAccountConfigurationState) ElementType() reflect.Type { + return reflect.TypeOf((*targetAccountConfigurationState)(nil)).Elem() +} + +type targetAccountConfigurationArgs struct { + AccountId string `pulumi:"accountId"` + Description *string `pulumi:"description"` + ExperimentTemplateId string `pulumi:"experimentTemplateId"` + RoleArn string `pulumi:"roleArn"` +} + +// The set of arguments for constructing a TargetAccountConfiguration resource. +type TargetAccountConfigurationArgs struct { + AccountId pulumi.StringInput + Description pulumi.StringPtrInput + ExperimentTemplateId pulumi.StringInput + RoleArn pulumi.StringInput +} + +func (TargetAccountConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*targetAccountConfigurationArgs)(nil)).Elem() +} + +type TargetAccountConfigurationInput interface { + pulumi.Input + + ToTargetAccountConfigurationOutput() TargetAccountConfigurationOutput + ToTargetAccountConfigurationOutputWithContext(ctx context.Context) TargetAccountConfigurationOutput +} + +func (*TargetAccountConfiguration) ElementType() reflect.Type { + return reflect.TypeOf((**TargetAccountConfiguration)(nil)).Elem() +} + +func (i *TargetAccountConfiguration) ToTargetAccountConfigurationOutput() TargetAccountConfigurationOutput { + return i.ToTargetAccountConfigurationOutputWithContext(context.Background()) +} + +func (i *TargetAccountConfiguration) ToTargetAccountConfigurationOutputWithContext(ctx context.Context) TargetAccountConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(TargetAccountConfigurationOutput) +} + +func (i *TargetAccountConfiguration) ToOutput(ctx context.Context) pulumix.Output[*TargetAccountConfiguration] { + return pulumix.Output[*TargetAccountConfiguration]{ + OutputState: i.ToTargetAccountConfigurationOutputWithContext(ctx).OutputState, + } +} + +type TargetAccountConfigurationOutput struct{ *pulumi.OutputState } + +func (TargetAccountConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((**TargetAccountConfiguration)(nil)).Elem() +} + +func (o TargetAccountConfigurationOutput) ToTargetAccountConfigurationOutput() TargetAccountConfigurationOutput { + return o +} + +func (o TargetAccountConfigurationOutput) ToTargetAccountConfigurationOutputWithContext(ctx context.Context) TargetAccountConfigurationOutput { + return o +} + +func (o TargetAccountConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[*TargetAccountConfiguration] { + return pulumix.Output[*TargetAccountConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o TargetAccountConfigurationOutput) AccountId() pulumi.StringOutput { + return o.ApplyT(func(v *TargetAccountConfiguration) pulumi.StringOutput { return v.AccountId }).(pulumi.StringOutput) +} + +func (o TargetAccountConfigurationOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *TargetAccountConfiguration) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +func (o TargetAccountConfigurationOutput) ExperimentTemplateId() pulumi.StringOutput { + return o.ApplyT(func(v *TargetAccountConfiguration) pulumi.StringOutput { return v.ExperimentTemplateId }).(pulumi.StringOutput) +} + +func (o TargetAccountConfigurationOutput) RoleArn() pulumi.StringOutput { + return o.ApplyT(func(v *TargetAccountConfiguration) pulumi.StringOutput { return v.RoleArn }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*TargetAccountConfigurationInput)(nil)).Elem(), &TargetAccountConfiguration{}) + pulumi.RegisterOutputType(TargetAccountConfigurationOutput{}) +} diff --git a/sdk/go/aws/gamelift/fleet.go b/sdk/go/aws/gamelift/fleet.go index ab1bb5422c..96c3d67afe 100644 --- a/sdk/go/aws/gamelift/fleet.go +++ b/sdk/go/aws/gamelift/fleet.go @@ -18,6 +18,8 @@ type Fleet struct { // Configuration for Anywhere fleet. AnywhereConfiguration FleetAnywhereConfigurationPtrOutput `pulumi:"anywhereConfiguration"` + // ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + ApplyCapacity FleetApplyCapacityPtrOutput `pulumi:"applyCapacity"` // A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. BuildId pulumi.StringPtrOutput `pulumi:"buildId"` // Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created. @@ -83,6 +85,7 @@ func NewFleet(ctx *pulumi.Context, } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "applyCapacity", "buildId", "certificateConfiguration", "computeType", @@ -133,6 +136,8 @@ func (FleetState) ElementType() reflect.Type { type fleetArgs struct { // Configuration for Anywhere fleet. AnywhereConfiguration *FleetAnywhereConfiguration `pulumi:"anywhereConfiguration"` + // ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + ApplyCapacity *FleetApplyCapacity `pulumi:"applyCapacity"` // A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. BuildId *string `pulumi:"buildId"` // Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created. @@ -192,6 +197,8 @@ type fleetArgs struct { type FleetArgs struct { // Configuration for Anywhere fleet. AnywhereConfiguration FleetAnywhereConfigurationPtrInput + // ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + ApplyCapacity FleetApplyCapacityPtrInput // A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. BuildId pulumi.StringPtrInput // Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created. @@ -301,6 +308,11 @@ func (o FleetOutput) AnywhereConfiguration() FleetAnywhereConfigurationPtrOutput return o.ApplyT(func(v *Fleet) FleetAnywhereConfigurationPtrOutput { return v.AnywhereConfiguration }).(FleetAnywhereConfigurationPtrOutput) } +// ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. +func (o FleetOutput) ApplyCapacity() FleetApplyCapacityPtrOutput { + return o.ApplyT(func(v *Fleet) FleetApplyCapacityPtrOutput { return v.ApplyCapacity }).(FleetApplyCapacityPtrOutput) +} + // A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. func (o FleetOutput) BuildId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Fleet) pulumi.StringPtrOutput { return v.BuildId }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/gamelift/pulumiEnums.go b/sdk/go/aws/gamelift/pulumiEnums.go index 3fad240700..a86e77d4c6 100644 --- a/sdk/go/aws/gamelift/pulumiEnums.go +++ b/sdk/go/aws/gamelift/pulumiEnums.go @@ -380,6 +380,189 @@ func (in *buildOperatingSystemPtr) ToOutput(ctx context.Context) pulumix.Output[ } } +// ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. +type FleetApplyCapacity string + +const ( + FleetApplyCapacityOnUpdate = FleetApplyCapacity("ON_UPDATE") + FleetApplyCapacityOnCreateAndUpdate = FleetApplyCapacity("ON_CREATE_AND_UPDATE") +) + +func (FleetApplyCapacity) ElementType() reflect.Type { + return reflect.TypeOf((*FleetApplyCapacity)(nil)).Elem() +} + +func (e FleetApplyCapacity) ToFleetApplyCapacityOutput() FleetApplyCapacityOutput { + return pulumi.ToOutput(e).(FleetApplyCapacityOutput) +} + +func (e FleetApplyCapacity) ToFleetApplyCapacityOutputWithContext(ctx context.Context) FleetApplyCapacityOutput { + return pulumi.ToOutputWithContext(ctx, e).(FleetApplyCapacityOutput) +} + +func (e FleetApplyCapacity) ToFleetApplyCapacityPtrOutput() FleetApplyCapacityPtrOutput { + return e.ToFleetApplyCapacityPtrOutputWithContext(context.Background()) +} + +func (e FleetApplyCapacity) ToFleetApplyCapacityPtrOutputWithContext(ctx context.Context) FleetApplyCapacityPtrOutput { + return FleetApplyCapacity(e).ToFleetApplyCapacityOutputWithContext(ctx).ToFleetApplyCapacityPtrOutputWithContext(ctx) +} + +func (e FleetApplyCapacity) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetApplyCapacity) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetApplyCapacity) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FleetApplyCapacity) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FleetApplyCapacityOutput struct{ *pulumi.OutputState } + +func (FleetApplyCapacityOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetApplyCapacity)(nil)).Elem() +} + +func (o FleetApplyCapacityOutput) ToFleetApplyCapacityOutput() FleetApplyCapacityOutput { + return o +} + +func (o FleetApplyCapacityOutput) ToFleetApplyCapacityOutputWithContext(ctx context.Context) FleetApplyCapacityOutput { + return o +} + +func (o FleetApplyCapacityOutput) ToFleetApplyCapacityPtrOutput() FleetApplyCapacityPtrOutput { + return o.ToFleetApplyCapacityPtrOutputWithContext(context.Background()) +} + +func (o FleetApplyCapacityOutput) ToFleetApplyCapacityPtrOutputWithContext(ctx context.Context) FleetApplyCapacityPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetApplyCapacity) *FleetApplyCapacity { + return &v + }).(FleetApplyCapacityPtrOutput) +} + +func (o FleetApplyCapacityOutput) ToOutput(ctx context.Context) pulumix.Output[FleetApplyCapacity] { + return pulumix.Output[FleetApplyCapacity]{ + OutputState: o.OutputState, + } +} + +func (o FleetApplyCapacityOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FleetApplyCapacityOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetApplyCapacity) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FleetApplyCapacityOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetApplyCapacityOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetApplyCapacity) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FleetApplyCapacityPtrOutput struct{ *pulumi.OutputState } + +func (FleetApplyCapacityPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetApplyCapacity)(nil)).Elem() +} + +func (o FleetApplyCapacityPtrOutput) ToFleetApplyCapacityPtrOutput() FleetApplyCapacityPtrOutput { + return o +} + +func (o FleetApplyCapacityPtrOutput) ToFleetApplyCapacityPtrOutputWithContext(ctx context.Context) FleetApplyCapacityPtrOutput { + return o +} + +func (o FleetApplyCapacityPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*FleetApplyCapacity] { + return pulumix.Output[*FleetApplyCapacity]{ + OutputState: o.OutputState, + } +} + +func (o FleetApplyCapacityPtrOutput) Elem() FleetApplyCapacityOutput { + return o.ApplyT(func(v *FleetApplyCapacity) FleetApplyCapacity { + if v != nil { + return *v + } + var ret FleetApplyCapacity + return ret + }).(FleetApplyCapacityOutput) +} + +func (o FleetApplyCapacityPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetApplyCapacityPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FleetApplyCapacity) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FleetApplyCapacityInput is an input type that accepts FleetApplyCapacityArgs and FleetApplyCapacityOutput values. +// You can construct a concrete instance of `FleetApplyCapacityInput` via: +// +// FleetApplyCapacityArgs{...} +type FleetApplyCapacityInput interface { + pulumi.Input + + ToFleetApplyCapacityOutput() FleetApplyCapacityOutput + ToFleetApplyCapacityOutputWithContext(context.Context) FleetApplyCapacityOutput +} + +var fleetApplyCapacityPtrType = reflect.TypeOf((**FleetApplyCapacity)(nil)).Elem() + +type FleetApplyCapacityPtrInput interface { + pulumi.Input + + ToFleetApplyCapacityPtrOutput() FleetApplyCapacityPtrOutput + ToFleetApplyCapacityPtrOutputWithContext(context.Context) FleetApplyCapacityPtrOutput +} + +type fleetApplyCapacityPtr string + +func FleetApplyCapacityPtr(v string) FleetApplyCapacityPtrInput { + return (*fleetApplyCapacityPtr)(&v) +} + +func (*fleetApplyCapacityPtr) ElementType() reflect.Type { + return fleetApplyCapacityPtrType +} + +func (in *fleetApplyCapacityPtr) ToFleetApplyCapacityPtrOutput() FleetApplyCapacityPtrOutput { + return pulumi.ToOutput(in).(FleetApplyCapacityPtrOutput) +} + +func (in *fleetApplyCapacityPtr) ToFleetApplyCapacityPtrOutputWithContext(ctx context.Context) FleetApplyCapacityPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FleetApplyCapacityPtrOutput) +} + +func (in *fleetApplyCapacityPtr) ToOutput(ctx context.Context) pulumix.Output[*FleetApplyCapacity] { + return pulumix.Output[*FleetApplyCapacity]{ + OutputState: in.ToFleetApplyCapacityPtrOutputWithContext(ctx).OutputState, + } +} + type FleetCertificateConfigurationCertificateType string const ( @@ -3754,6 +3937,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AliasRoutingStrategyTypePtrInput)(nil)).Elem(), AliasRoutingStrategyType("SIMPLE")) pulumi.RegisterInputType(reflect.TypeOf((*BuildOperatingSystemInput)(nil)).Elem(), BuildOperatingSystem("AMAZON_LINUX")) pulumi.RegisterInputType(reflect.TypeOf((*BuildOperatingSystemPtrInput)(nil)).Elem(), BuildOperatingSystem("AMAZON_LINUX")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetApplyCapacityInput)(nil)).Elem(), FleetApplyCapacity("ON_UPDATE")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetApplyCapacityPtrInput)(nil)).Elem(), FleetApplyCapacity("ON_UPDATE")) pulumi.RegisterInputType(reflect.TypeOf((*FleetCertificateConfigurationCertificateTypeInput)(nil)).Elem(), FleetCertificateConfigurationCertificateType("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*FleetCertificateConfigurationCertificateTypePtrInput)(nil)).Elem(), FleetCertificateConfigurationCertificateType("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeTypeInput)(nil)).Elem(), FleetComputeType("EC2")) @@ -3795,6 +3980,8 @@ func init() { pulumi.RegisterOutputType(AliasRoutingStrategyTypePtrOutput{}) pulumi.RegisterOutputType(BuildOperatingSystemOutput{}) pulumi.RegisterOutputType(BuildOperatingSystemPtrOutput{}) + pulumi.RegisterOutputType(FleetApplyCapacityOutput{}) + pulumi.RegisterOutputType(FleetApplyCapacityPtrOutput{}) pulumi.RegisterOutputType(FleetCertificateConfigurationCertificateTypeOutput{}) pulumi.RegisterOutputType(FleetCertificateConfigurationCertificateTypePtrOutput{}) pulumi.RegisterOutputType(FleetComputeTypeOutput{}) diff --git a/sdk/go/aws/identitystore/getGroupMembership.go b/sdk/go/aws/identitystore/getGroupMembership.go index f93986864e..adf4503880 100644 --- a/sdk/go/aws/identitystore/getGroupMembership.go +++ b/sdk/go/aws/identitystore/getGroupMembership.go @@ -31,10 +31,6 @@ type LookupGroupMembershipArgs struct { } type LookupGroupMembershipResult struct { - // The unique identifier for a group in the identity store. - GroupId *string `pulumi:"groupId"` - // An object containing the identifier of a group member. - MemberId *GroupMembershipMemberId `pulumi:"memberId"` // The identifier for a GroupMembership in the identity store. MembershipId *string `pulumi:"membershipId"` } @@ -83,16 +79,6 @@ func (o LookupGroupMembershipResultOutput) ToOutput(ctx context.Context) pulumix } } -// The unique identifier for a group in the identity store. -func (o LookupGroupMembershipResultOutput) GroupId() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupGroupMembershipResult) *string { return v.GroupId }).(pulumi.StringPtrOutput) -} - -// An object containing the identifier of a group member. -func (o LookupGroupMembershipResultOutput) MemberId() GroupMembershipMemberIdPtrOutput { - return o.ApplyT(func(v LookupGroupMembershipResult) *GroupMembershipMemberId { return v.MemberId }).(GroupMembershipMemberIdPtrOutput) -} - // The identifier for a GroupMembership in the identity store. func (o LookupGroupMembershipResultOutput) MembershipId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupGroupMembershipResult) *string { return v.MembershipId }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/identitystore/groupMembership.go b/sdk/go/aws/identitystore/groupMembership.go index 5cdbb67eb3..9ac4224874 100644 --- a/sdk/go/aws/identitystore/groupMembership.go +++ b/sdk/go/aws/identitystore/groupMembership.go @@ -44,7 +44,9 @@ func NewGroupMembership(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'MemberId'") } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "groupId", "identityStoreId", + "memberId", }) opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) diff --git a/sdk/go/aws/identitystore/pulumiTypes.go b/sdk/go/aws/identitystore/pulumiTypes.go index 33a97dd894..05cb52bfab 100644 --- a/sdk/go/aws/identitystore/pulumiTypes.go +++ b/sdk/go/aws/identitystore/pulumiTypes.go @@ -81,48 +81,7 @@ func (o GroupMembershipMemberIdOutput) UserId() pulumi.StringOutput { return o.ApplyT(func(v GroupMembershipMemberId) string { return v.UserId }).(pulumi.StringOutput) } -type GroupMembershipMemberIdPtrOutput struct{ *pulumi.OutputState } - -func (GroupMembershipMemberIdPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**GroupMembershipMemberId)(nil)).Elem() -} - -func (o GroupMembershipMemberIdPtrOutput) ToGroupMembershipMemberIdPtrOutput() GroupMembershipMemberIdPtrOutput { - return o -} - -func (o GroupMembershipMemberIdPtrOutput) ToGroupMembershipMemberIdPtrOutputWithContext(ctx context.Context) GroupMembershipMemberIdPtrOutput { - return o -} - -func (o GroupMembershipMemberIdPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*GroupMembershipMemberId] { - return pulumix.Output[*GroupMembershipMemberId]{ - OutputState: o.OutputState, - } -} - -func (o GroupMembershipMemberIdPtrOutput) Elem() GroupMembershipMemberIdOutput { - return o.ApplyT(func(v *GroupMembershipMemberId) GroupMembershipMemberId { - if v != nil { - return *v - } - var ret GroupMembershipMemberId - return ret - }).(GroupMembershipMemberIdOutput) -} - -// The identifier for a user in the identity store. -func (o GroupMembershipMemberIdPtrOutput) UserId() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GroupMembershipMemberId) *string { - if v == nil { - return nil - } - return &v.UserId - }).(pulumi.StringPtrOutput) -} - func init() { pulumi.RegisterInputType(reflect.TypeOf((*GroupMembershipMemberIdInput)(nil)).Elem(), GroupMembershipMemberIdArgs{}) pulumi.RegisterOutputType(GroupMembershipMemberIdOutput{}) - pulumi.RegisterOutputType(GroupMembershipMemberIdPtrOutput{}) } diff --git a/sdk/go/aws/imagebuilder/getImage.go b/sdk/go/aws/imagebuilder/getImage.go index 69ad9e53b8..eae0c09ec7 100644 --- a/sdk/go/aws/imagebuilder/getImage.go +++ b/sdk/go/aws/imagebuilder/getImage.go @@ -31,6 +31,8 @@ type LookupImageArgs struct { type LookupImageResult struct { // The Amazon Resource Name (ARN) of the image. Arn *string `pulumi:"arn"` + // The execution role name/ARN for the image build, if provided + ExecutionRole *string `pulumi:"executionRole"` // The AMI ID of the EC2 AMI in current region. ImageId *string `pulumi:"imageId"` // URI for containers created in current Region with default ECR image tag @@ -86,6 +88,11 @@ func (o LookupImageResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupImageResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } +// The execution role name/ARN for the image build, if provided +func (o LookupImageResultOutput) ExecutionRole() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupImageResult) *string { return v.ExecutionRole }).(pulumi.StringPtrOutput) +} + // The AMI ID of the EC2 AMI in current region. func (o LookupImageResultOutput) ImageId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupImageResult) *string { return v.ImageId }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/imagebuilder/getImagePipeline.go b/sdk/go/aws/imagebuilder/getImagePipeline.go index d378e6706d..9bc7cc9268 100644 --- a/sdk/go/aws/imagebuilder/getImagePipeline.go +++ b/sdk/go/aws/imagebuilder/getImagePipeline.go @@ -39,6 +39,8 @@ type LookupImagePipelineResult struct { DistributionConfigurationArn *string `pulumi:"distributionConfigurationArn"` // Collects additional information about the image being created, including the operating system (OS) version and package list. EnhancedImageMetadataEnabled *bool `pulumi:"enhancedImageMetadataEnabled"` + // The execution role name/ARN for the image build, if provided + ExecutionRole *string `pulumi:"executionRole"` // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. ImageRecipeArn *string `pulumi:"imageRecipeArn"` // Contains settings for vulnerability scans. @@ -53,6 +55,8 @@ type LookupImagePipelineResult struct { Status *ImagePipelineStatus `pulumi:"status"` // The tags of this image pipeline. Tags interface{} `pulumi:"tags"` + // Workflows to define the image build process + Workflows []ImagePipelineWorkflowConfiguration `pulumi:"workflows"` } func LookupImagePipelineOutput(ctx *pulumi.Context, args LookupImagePipelineOutputArgs, opts ...pulumi.InvokeOption) LookupImagePipelineResultOutput { @@ -122,6 +126,11 @@ func (o LookupImagePipelineResultOutput) EnhancedImageMetadataEnabled() pulumi.B return o.ApplyT(func(v LookupImagePipelineResult) *bool { return v.EnhancedImageMetadataEnabled }).(pulumi.BoolPtrOutput) } +// The execution role name/ARN for the image build, if provided +func (o LookupImagePipelineResultOutput) ExecutionRole() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupImagePipelineResult) *string { return v.ExecutionRole }).(pulumi.StringPtrOutput) +} + // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. func (o LookupImagePipelineResultOutput) ImageRecipeArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupImagePipelineResult) *string { return v.ImageRecipeArn }).(pulumi.StringPtrOutput) @@ -161,6 +170,11 @@ func (o LookupImagePipelineResultOutput) Tags() pulumi.AnyOutput { return o.ApplyT(func(v LookupImagePipelineResult) interface{} { return v.Tags }).(pulumi.AnyOutput) } +// Workflows to define the image build process +func (o LookupImagePipelineResultOutput) Workflows() ImagePipelineWorkflowConfigurationArrayOutput { + return o.ApplyT(func(v LookupImagePipelineResult) []ImagePipelineWorkflowConfiguration { return v.Workflows }).(ImagePipelineWorkflowConfigurationArrayOutput) +} + func init() { pulumi.RegisterOutputType(LookupImagePipelineResultOutput{}) } diff --git a/sdk/go/aws/imagebuilder/getWorkflow.go b/sdk/go/aws/imagebuilder/getWorkflow.go new file mode 100644 index 0000000000..d4b3f71af2 --- /dev/null +++ b/sdk/go/aws/imagebuilder/getWorkflow.go @@ -0,0 +1,85 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package imagebuilder + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::ImageBuilder::Workflow +func LookupWorkflow(ctx *pulumi.Context, args *LookupWorkflowArgs, opts ...pulumi.InvokeOption) (*LookupWorkflowResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupWorkflowResult + err := ctx.Invoke("aws-native:imagebuilder:getWorkflow", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupWorkflowArgs struct { + // The Amazon Resource Name (ARN) of the workflow. + Arn string `pulumi:"arn"` +} + +type LookupWorkflowResult struct { + // The Amazon Resource Name (ARN) of the workflow. + Arn *string `pulumi:"arn"` +} + +func LookupWorkflowOutput(ctx *pulumi.Context, args LookupWorkflowOutputArgs, opts ...pulumi.InvokeOption) LookupWorkflowResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupWorkflowResult, error) { + args := v.(LookupWorkflowArgs) + r, err := LookupWorkflow(ctx, &args, opts...) + var s LookupWorkflowResult + if r != nil { + s = *r + } + return s, err + }).(LookupWorkflowResultOutput) +} + +type LookupWorkflowOutputArgs struct { + // The Amazon Resource Name (ARN) of the workflow. + Arn pulumi.StringInput `pulumi:"arn"` +} + +func (LookupWorkflowOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupWorkflowArgs)(nil)).Elem() +} + +type LookupWorkflowResultOutput struct{ *pulumi.OutputState } + +func (LookupWorkflowResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupWorkflowResult)(nil)).Elem() +} + +func (o LookupWorkflowResultOutput) ToLookupWorkflowResultOutput() LookupWorkflowResultOutput { + return o +} + +func (o LookupWorkflowResultOutput) ToLookupWorkflowResultOutputWithContext(ctx context.Context) LookupWorkflowResultOutput { + return o +} + +func (o LookupWorkflowResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupWorkflowResult] { + return pulumix.Output[LookupWorkflowResult]{ + OutputState: o.OutputState, + } +} + +// The Amazon Resource Name (ARN) of the workflow. +func (o LookupWorkflowResultOutput) Arn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupWorkflowResult) *string { return v.Arn }).(pulumi.StringPtrOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupWorkflowResultOutput{}) +} diff --git a/sdk/go/aws/imagebuilder/image.go b/sdk/go/aws/imagebuilder/image.go index bd26d4d670..c92cb54990 100644 --- a/sdk/go/aws/imagebuilder/image.go +++ b/sdk/go/aws/imagebuilder/image.go @@ -24,6 +24,8 @@ type Image struct { DistributionConfigurationArn pulumi.StringPtrOutput `pulumi:"distributionConfigurationArn"` // Collects additional information about the image being created, including the operating system (OS) version and package list. EnhancedImageMetadataEnabled pulumi.BoolPtrOutput `pulumi:"enhancedImageMetadataEnabled"` + // The execution role name/ARN for the image build, if provided + ExecutionRole pulumi.StringPtrOutput `pulumi:"executionRole"` // The AMI ID of the EC2 AMI in current region. ImageId pulumi.StringOutput `pulumi:"imageId"` // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. @@ -40,6 +42,8 @@ type Image struct { Name pulumi.StringOutput `pulumi:"name"` // The tags associated with the image. Tags pulumi.AnyOutput `pulumi:"tags"` + // Workflows to define the image build process + Workflows ImageWorkflowConfigurationArrayOutput `pulumi:"workflows"` } // NewImage registers a new resource with the given unique name, arguments, and options. @@ -58,6 +62,7 @@ func NewImage(ctx *pulumi.Context, "imageTestsConfiguration", "infrastructureConfigurationArn", "tags", + "workflows[*]", }) opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) @@ -99,6 +104,8 @@ type imageArgs struct { DistributionConfigurationArn *string `pulumi:"distributionConfigurationArn"` // Collects additional information about the image being created, including the operating system (OS) version and package list. EnhancedImageMetadataEnabled *bool `pulumi:"enhancedImageMetadataEnabled"` + // The execution role name/ARN for the image build, if provided + ExecutionRole *string `pulumi:"executionRole"` // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. ImageRecipeArn *string `pulumi:"imageRecipeArn"` // Contains settings for vulnerability scans. @@ -109,6 +116,8 @@ type imageArgs struct { InfrastructureConfigurationArn *string `pulumi:"infrastructureConfigurationArn"` // The tags associated with the image. Tags interface{} `pulumi:"tags"` + // Workflows to define the image build process + Workflows []ImageWorkflowConfiguration `pulumi:"workflows"` } // The set of arguments for constructing a Image resource. @@ -119,6 +128,8 @@ type ImageArgs struct { DistributionConfigurationArn pulumi.StringPtrInput // Collects additional information about the image being created, including the operating system (OS) version and package list. EnhancedImageMetadataEnabled pulumi.BoolPtrInput + // The execution role name/ARN for the image build, if provided + ExecutionRole pulumi.StringPtrInput // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. ImageRecipeArn pulumi.StringPtrInput // Contains settings for vulnerability scans. @@ -129,6 +140,8 @@ type ImageArgs struct { InfrastructureConfigurationArn pulumi.StringPtrInput // The tags associated with the image. Tags pulumi.Input + // Workflows to define the image build process + Workflows ImageWorkflowConfigurationArrayInput } func (ImageArgs) ElementType() reflect.Type { @@ -200,6 +213,11 @@ func (o ImageOutput) EnhancedImageMetadataEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Image) pulumi.BoolPtrOutput { return v.EnhancedImageMetadataEnabled }).(pulumi.BoolPtrOutput) } +// The execution role name/ARN for the image build, if provided +func (o ImageOutput) ExecutionRole() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Image) pulumi.StringPtrOutput { return v.ExecutionRole }).(pulumi.StringPtrOutput) +} + // The AMI ID of the EC2 AMI in current region. func (o ImageOutput) ImageId() pulumi.StringOutput { return o.ApplyT(func(v *Image) pulumi.StringOutput { return v.ImageId }).(pulumi.StringOutput) @@ -240,6 +258,11 @@ func (o ImageOutput) Tags() pulumi.AnyOutput { return o.ApplyT(func(v *Image) pulumi.AnyOutput { return v.Tags }).(pulumi.AnyOutput) } +// Workflows to define the image build process +func (o ImageOutput) Workflows() ImageWorkflowConfigurationArrayOutput { + return o.ApplyT(func(v *Image) ImageWorkflowConfigurationArrayOutput { return v.Workflows }).(ImageWorkflowConfigurationArrayOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*ImageInput)(nil)).Elem(), &Image{}) pulumi.RegisterOutputType(ImageOutput{}) diff --git a/sdk/go/aws/imagebuilder/imagePipeline.go b/sdk/go/aws/imagebuilder/imagePipeline.go index 83a2e6763b..f8867e53be 100644 --- a/sdk/go/aws/imagebuilder/imagePipeline.go +++ b/sdk/go/aws/imagebuilder/imagePipeline.go @@ -26,6 +26,8 @@ type ImagePipeline struct { DistributionConfigurationArn pulumi.StringPtrOutput `pulumi:"distributionConfigurationArn"` // Collects additional information about the image being created, including the operating system (OS) version and package list. EnhancedImageMetadataEnabled pulumi.BoolPtrOutput `pulumi:"enhancedImageMetadataEnabled"` + // The execution role name/ARN for the image build, if provided + ExecutionRole pulumi.StringPtrOutput `pulumi:"executionRole"` // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. ImageRecipeArn pulumi.StringPtrOutput `pulumi:"imageRecipeArn"` // Contains settings for vulnerability scans. @@ -42,6 +44,8 @@ type ImagePipeline struct { Status ImagePipelineStatusPtrOutput `pulumi:"status"` // The tags of this image pipeline. Tags pulumi.AnyOutput `pulumi:"tags"` + // Workflows to define the image build process + Workflows ImagePipelineWorkflowConfigurationArrayOutput `pulumi:"workflows"` } // NewImagePipeline registers a new resource with the given unique name, arguments, and options. @@ -96,6 +100,8 @@ type imagePipelineArgs struct { DistributionConfigurationArn *string `pulumi:"distributionConfigurationArn"` // Collects additional information about the image being created, including the operating system (OS) version and package list. EnhancedImageMetadataEnabled *bool `pulumi:"enhancedImageMetadataEnabled"` + // The execution role name/ARN for the image build, if provided + ExecutionRole *string `pulumi:"executionRole"` // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. ImageRecipeArn *string `pulumi:"imageRecipeArn"` // Contains settings for vulnerability scans. @@ -112,6 +118,8 @@ type imagePipelineArgs struct { Status *ImagePipelineStatus `pulumi:"status"` // The tags of this image pipeline. Tags interface{} `pulumi:"tags"` + // Workflows to define the image build process + Workflows []ImagePipelineWorkflowConfiguration `pulumi:"workflows"` } // The set of arguments for constructing a ImagePipeline resource. @@ -124,6 +132,8 @@ type ImagePipelineArgs struct { DistributionConfigurationArn pulumi.StringPtrInput // Collects additional information about the image being created, including the operating system (OS) version and package list. EnhancedImageMetadataEnabled pulumi.BoolPtrInput + // The execution role name/ARN for the image build, if provided + ExecutionRole pulumi.StringPtrInput // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. ImageRecipeArn pulumi.StringPtrInput // Contains settings for vulnerability scans. @@ -140,6 +150,8 @@ type ImagePipelineArgs struct { Status ImagePipelineStatusPtrInput // The tags of this image pipeline. Tags pulumi.Input + // Workflows to define the image build process + Workflows ImagePipelineWorkflowConfigurationArrayInput } func (ImagePipelineArgs) ElementType() reflect.Type { @@ -216,6 +228,11 @@ func (o ImagePipelineOutput) EnhancedImageMetadataEnabled() pulumi.BoolPtrOutput return o.ApplyT(func(v *ImagePipeline) pulumi.BoolPtrOutput { return v.EnhancedImageMetadataEnabled }).(pulumi.BoolPtrOutput) } +// The execution role name/ARN for the image build, if provided +func (o ImagePipelineOutput) ExecutionRole() pulumi.StringPtrOutput { + return o.ApplyT(func(v *ImagePipeline) pulumi.StringPtrOutput { return v.ExecutionRole }).(pulumi.StringPtrOutput) +} + // The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. func (o ImagePipelineOutput) ImageRecipeArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *ImagePipeline) pulumi.StringPtrOutput { return v.ImageRecipeArn }).(pulumi.StringPtrOutput) @@ -258,6 +275,11 @@ func (o ImagePipelineOutput) Tags() pulumi.AnyOutput { return o.ApplyT(func(v *ImagePipeline) pulumi.AnyOutput { return v.Tags }).(pulumi.AnyOutput) } +// Workflows to define the image build process +func (o ImagePipelineOutput) Workflows() ImagePipelineWorkflowConfigurationArrayOutput { + return o.ApplyT(func(v *ImagePipeline) ImagePipelineWorkflowConfigurationArrayOutput { return v.Workflows }).(ImagePipelineWorkflowConfigurationArrayOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineInput)(nil)).Elem(), &ImagePipeline{}) pulumi.RegisterOutputType(ImagePipelineOutput{}) diff --git a/sdk/go/aws/imagebuilder/init.go b/sdk/go/aws/imagebuilder/init.go index f6253ebc4c..b8d5ae94de 100644 --- a/sdk/go/aws/imagebuilder/init.go +++ b/sdk/go/aws/imagebuilder/init.go @@ -37,6 +37,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &InfrastructureConfiguration{} case "aws-native:imagebuilder:LifecyclePolicy": r = &LifecyclePolicy{} + case "aws-native:imagebuilder:Workflow": + r = &Workflow{} default: return nil, fmt.Errorf("unknown resource type: %s", typ) } diff --git a/sdk/go/aws/imagebuilder/pulumiEnums.go b/sdk/go/aws/imagebuilder/pulumiEnums.go index c006b81d6f..c6b7bb0213 100644 --- a/sdk/go/aws/imagebuilder/pulumiEnums.go +++ b/sdk/go/aws/imagebuilder/pulumiEnums.go @@ -1580,6 +1580,189 @@ func (in *imagePipelineStatusPtr) ToOutput(ctx context.Context) pulumix.Output[* } } +// Define execution decision in case of workflow failure +type ImagePipelineWorkflowConfigurationOnFailure string + +const ( + ImagePipelineWorkflowConfigurationOnFailureContinue = ImagePipelineWorkflowConfigurationOnFailure("CONTINUE") + ImagePipelineWorkflowConfigurationOnFailureAbort = ImagePipelineWorkflowConfigurationOnFailure("ABORT") +) + +func (ImagePipelineWorkflowConfigurationOnFailure) ElementType() reflect.Type { + return reflect.TypeOf((*ImagePipelineWorkflowConfigurationOnFailure)(nil)).Elem() +} + +func (e ImagePipelineWorkflowConfigurationOnFailure) ToImagePipelineWorkflowConfigurationOnFailureOutput() ImagePipelineWorkflowConfigurationOnFailureOutput { + return pulumi.ToOutput(e).(ImagePipelineWorkflowConfigurationOnFailureOutput) +} + +func (e ImagePipelineWorkflowConfigurationOnFailure) ToImagePipelineWorkflowConfigurationOnFailureOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationOnFailureOutput { + return pulumi.ToOutputWithContext(ctx, e).(ImagePipelineWorkflowConfigurationOnFailureOutput) +} + +func (e ImagePipelineWorkflowConfigurationOnFailure) ToImagePipelineWorkflowConfigurationOnFailurePtrOutput() ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return e.ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(context.Background()) +} + +func (e ImagePipelineWorkflowConfigurationOnFailure) ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return ImagePipelineWorkflowConfigurationOnFailure(e).ToImagePipelineWorkflowConfigurationOnFailureOutputWithContext(ctx).ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(ctx) +} + +func (e ImagePipelineWorkflowConfigurationOnFailure) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ImagePipelineWorkflowConfigurationOnFailure) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ImagePipelineWorkflowConfigurationOnFailure) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ImagePipelineWorkflowConfigurationOnFailure) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ImagePipelineWorkflowConfigurationOnFailureOutput struct{ *pulumi.OutputState } + +func (ImagePipelineWorkflowConfigurationOnFailureOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ImagePipelineWorkflowConfigurationOnFailure)(nil)).Elem() +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToImagePipelineWorkflowConfigurationOnFailureOutput() ImagePipelineWorkflowConfigurationOnFailureOutput { + return o +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToImagePipelineWorkflowConfigurationOnFailureOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationOnFailureOutput { + return o +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToImagePipelineWorkflowConfigurationOnFailurePtrOutput() ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return o.ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(context.Background()) +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ImagePipelineWorkflowConfigurationOnFailure) *ImagePipelineWorkflowConfigurationOnFailure { + return &v + }).(ImagePipelineWorkflowConfigurationOnFailurePtrOutput) +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToOutput(ctx context.Context) pulumix.Output[ImagePipelineWorkflowConfigurationOnFailure] { + return pulumix.Output[ImagePipelineWorkflowConfigurationOnFailure]{ + OutputState: o.OutputState, + } +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ImagePipelineWorkflowConfigurationOnFailure) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ImagePipelineWorkflowConfigurationOnFailureOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ImagePipelineWorkflowConfigurationOnFailure) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ImagePipelineWorkflowConfigurationOnFailurePtrOutput struct{ *pulumi.OutputState } + +func (ImagePipelineWorkflowConfigurationOnFailurePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ImagePipelineWorkflowConfigurationOnFailure)(nil)).Elem() +} + +func (o ImagePipelineWorkflowConfigurationOnFailurePtrOutput) ToImagePipelineWorkflowConfigurationOnFailurePtrOutput() ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return o +} + +func (o ImagePipelineWorkflowConfigurationOnFailurePtrOutput) ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return o +} + +func (o ImagePipelineWorkflowConfigurationOnFailurePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ImagePipelineWorkflowConfigurationOnFailure] { + return pulumix.Output[*ImagePipelineWorkflowConfigurationOnFailure]{ + OutputState: o.OutputState, + } +} + +func (o ImagePipelineWorkflowConfigurationOnFailurePtrOutput) Elem() ImagePipelineWorkflowConfigurationOnFailureOutput { + return o.ApplyT(func(v *ImagePipelineWorkflowConfigurationOnFailure) ImagePipelineWorkflowConfigurationOnFailure { + if v != nil { + return *v + } + var ret ImagePipelineWorkflowConfigurationOnFailure + return ret + }).(ImagePipelineWorkflowConfigurationOnFailureOutput) +} + +func (o ImagePipelineWorkflowConfigurationOnFailurePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ImagePipelineWorkflowConfigurationOnFailurePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ImagePipelineWorkflowConfigurationOnFailure) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ImagePipelineWorkflowConfigurationOnFailureInput is an input type that accepts ImagePipelineWorkflowConfigurationOnFailureArgs and ImagePipelineWorkflowConfigurationOnFailureOutput values. +// You can construct a concrete instance of `ImagePipelineWorkflowConfigurationOnFailureInput` via: +// +// ImagePipelineWorkflowConfigurationOnFailureArgs{...} +type ImagePipelineWorkflowConfigurationOnFailureInput interface { + pulumi.Input + + ToImagePipelineWorkflowConfigurationOnFailureOutput() ImagePipelineWorkflowConfigurationOnFailureOutput + ToImagePipelineWorkflowConfigurationOnFailureOutputWithContext(context.Context) ImagePipelineWorkflowConfigurationOnFailureOutput +} + +var imagePipelineWorkflowConfigurationOnFailurePtrType = reflect.TypeOf((**ImagePipelineWorkflowConfigurationOnFailure)(nil)).Elem() + +type ImagePipelineWorkflowConfigurationOnFailurePtrInput interface { + pulumi.Input + + ToImagePipelineWorkflowConfigurationOnFailurePtrOutput() ImagePipelineWorkflowConfigurationOnFailurePtrOutput + ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(context.Context) ImagePipelineWorkflowConfigurationOnFailurePtrOutput +} + +type imagePipelineWorkflowConfigurationOnFailurePtr string + +func ImagePipelineWorkflowConfigurationOnFailurePtr(v string) ImagePipelineWorkflowConfigurationOnFailurePtrInput { + return (*imagePipelineWorkflowConfigurationOnFailurePtr)(&v) +} + +func (*imagePipelineWorkflowConfigurationOnFailurePtr) ElementType() reflect.Type { + return imagePipelineWorkflowConfigurationOnFailurePtrType +} + +func (in *imagePipelineWorkflowConfigurationOnFailurePtr) ToImagePipelineWorkflowConfigurationOnFailurePtrOutput() ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return pulumi.ToOutput(in).(ImagePipelineWorkflowConfigurationOnFailurePtrOutput) +} + +func (in *imagePipelineWorkflowConfigurationOnFailurePtr) ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ImagePipelineWorkflowConfigurationOnFailurePtrOutput) +} + +func (in *imagePipelineWorkflowConfigurationOnFailurePtr) ToOutput(ctx context.Context) pulumix.Output[*ImagePipelineWorkflowConfigurationOnFailure] { + return pulumix.Output[*ImagePipelineWorkflowConfigurationOnFailure]{ + OutputState: in.ToImagePipelineWorkflowConfigurationOnFailurePtrOutputWithContext(ctx).OutputState, + } +} + // Use to override the device's volume type. type ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType string @@ -1768,6 +1951,189 @@ func (in *imageRecipeEbsInstanceBlockDeviceSpecificationVolumeTypePtr) ToOutput( } } +// Define execution decision in case of workflow failure +type ImageWorkflowConfigurationOnFailure string + +const ( + ImageWorkflowConfigurationOnFailureContinue = ImageWorkflowConfigurationOnFailure("CONTINUE") + ImageWorkflowConfigurationOnFailureAbort = ImageWorkflowConfigurationOnFailure("ABORT") +) + +func (ImageWorkflowConfigurationOnFailure) ElementType() reflect.Type { + return reflect.TypeOf((*ImageWorkflowConfigurationOnFailure)(nil)).Elem() +} + +func (e ImageWorkflowConfigurationOnFailure) ToImageWorkflowConfigurationOnFailureOutput() ImageWorkflowConfigurationOnFailureOutput { + return pulumi.ToOutput(e).(ImageWorkflowConfigurationOnFailureOutput) +} + +func (e ImageWorkflowConfigurationOnFailure) ToImageWorkflowConfigurationOnFailureOutputWithContext(ctx context.Context) ImageWorkflowConfigurationOnFailureOutput { + return pulumi.ToOutputWithContext(ctx, e).(ImageWorkflowConfigurationOnFailureOutput) +} + +func (e ImageWorkflowConfigurationOnFailure) ToImageWorkflowConfigurationOnFailurePtrOutput() ImageWorkflowConfigurationOnFailurePtrOutput { + return e.ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(context.Background()) +} + +func (e ImageWorkflowConfigurationOnFailure) ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(ctx context.Context) ImageWorkflowConfigurationOnFailurePtrOutput { + return ImageWorkflowConfigurationOnFailure(e).ToImageWorkflowConfigurationOnFailureOutputWithContext(ctx).ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(ctx) +} + +func (e ImageWorkflowConfigurationOnFailure) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ImageWorkflowConfigurationOnFailure) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ImageWorkflowConfigurationOnFailure) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ImageWorkflowConfigurationOnFailure) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ImageWorkflowConfigurationOnFailureOutput struct{ *pulumi.OutputState } + +func (ImageWorkflowConfigurationOnFailureOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ImageWorkflowConfigurationOnFailure)(nil)).Elem() +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToImageWorkflowConfigurationOnFailureOutput() ImageWorkflowConfigurationOnFailureOutput { + return o +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToImageWorkflowConfigurationOnFailureOutputWithContext(ctx context.Context) ImageWorkflowConfigurationOnFailureOutput { + return o +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToImageWorkflowConfigurationOnFailurePtrOutput() ImageWorkflowConfigurationOnFailurePtrOutput { + return o.ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(context.Background()) +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(ctx context.Context) ImageWorkflowConfigurationOnFailurePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ImageWorkflowConfigurationOnFailure) *ImageWorkflowConfigurationOnFailure { + return &v + }).(ImageWorkflowConfigurationOnFailurePtrOutput) +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToOutput(ctx context.Context) pulumix.Output[ImageWorkflowConfigurationOnFailure] { + return pulumix.Output[ImageWorkflowConfigurationOnFailure]{ + OutputState: o.OutputState, + } +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ImageWorkflowConfigurationOnFailure) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ImageWorkflowConfigurationOnFailureOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ImageWorkflowConfigurationOnFailure) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ImageWorkflowConfigurationOnFailurePtrOutput struct{ *pulumi.OutputState } + +func (ImageWorkflowConfigurationOnFailurePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ImageWorkflowConfigurationOnFailure)(nil)).Elem() +} + +func (o ImageWorkflowConfigurationOnFailurePtrOutput) ToImageWorkflowConfigurationOnFailurePtrOutput() ImageWorkflowConfigurationOnFailurePtrOutput { + return o +} + +func (o ImageWorkflowConfigurationOnFailurePtrOutput) ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(ctx context.Context) ImageWorkflowConfigurationOnFailurePtrOutput { + return o +} + +func (o ImageWorkflowConfigurationOnFailurePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*ImageWorkflowConfigurationOnFailure] { + return pulumix.Output[*ImageWorkflowConfigurationOnFailure]{ + OutputState: o.OutputState, + } +} + +func (o ImageWorkflowConfigurationOnFailurePtrOutput) Elem() ImageWorkflowConfigurationOnFailureOutput { + return o.ApplyT(func(v *ImageWorkflowConfigurationOnFailure) ImageWorkflowConfigurationOnFailure { + if v != nil { + return *v + } + var ret ImageWorkflowConfigurationOnFailure + return ret + }).(ImageWorkflowConfigurationOnFailureOutput) +} + +func (o ImageWorkflowConfigurationOnFailurePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ImageWorkflowConfigurationOnFailurePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ImageWorkflowConfigurationOnFailure) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ImageWorkflowConfigurationOnFailureInput is an input type that accepts ImageWorkflowConfigurationOnFailureArgs and ImageWorkflowConfigurationOnFailureOutput values. +// You can construct a concrete instance of `ImageWorkflowConfigurationOnFailureInput` via: +// +// ImageWorkflowConfigurationOnFailureArgs{...} +type ImageWorkflowConfigurationOnFailureInput interface { + pulumi.Input + + ToImageWorkflowConfigurationOnFailureOutput() ImageWorkflowConfigurationOnFailureOutput + ToImageWorkflowConfigurationOnFailureOutputWithContext(context.Context) ImageWorkflowConfigurationOnFailureOutput +} + +var imageWorkflowConfigurationOnFailurePtrType = reflect.TypeOf((**ImageWorkflowConfigurationOnFailure)(nil)).Elem() + +type ImageWorkflowConfigurationOnFailurePtrInput interface { + pulumi.Input + + ToImageWorkflowConfigurationOnFailurePtrOutput() ImageWorkflowConfigurationOnFailurePtrOutput + ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(context.Context) ImageWorkflowConfigurationOnFailurePtrOutput +} + +type imageWorkflowConfigurationOnFailurePtr string + +func ImageWorkflowConfigurationOnFailurePtr(v string) ImageWorkflowConfigurationOnFailurePtrInput { + return (*imageWorkflowConfigurationOnFailurePtr)(&v) +} + +func (*imageWorkflowConfigurationOnFailurePtr) ElementType() reflect.Type { + return imageWorkflowConfigurationOnFailurePtrType +} + +func (in *imageWorkflowConfigurationOnFailurePtr) ToImageWorkflowConfigurationOnFailurePtrOutput() ImageWorkflowConfigurationOnFailurePtrOutput { + return pulumi.ToOutput(in).(ImageWorkflowConfigurationOnFailurePtrOutput) +} + +func (in *imageWorkflowConfigurationOnFailurePtr) ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(ctx context.Context) ImageWorkflowConfigurationOnFailurePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ImageWorkflowConfigurationOnFailurePtrOutput) +} + +func (in *imageWorkflowConfigurationOnFailurePtr) ToOutput(ctx context.Context) pulumix.Output[*ImageWorkflowConfigurationOnFailure] { + return pulumix.Output[*ImageWorkflowConfigurationOnFailure]{ + OutputState: in.ToImageWorkflowConfigurationOnFailurePtrOutputWithContext(ctx).OutputState, + } +} + // Indicates whether a signed token header is required for instance metadata retrieval requests. The values affect the response as follows: type InfrastructureConfigurationInstanceMetadataOptionsHttpTokens string @@ -2869,6 +3235,190 @@ func (in *lifecyclePolicyTimeUnitPtr) ToOutput(ctx context.Context) pulumix.Outp } } +// The type of the workflow denotes whether the workflow is used to build, test, or distribute. +type WorkflowType string + +const ( + WorkflowTypeBuild = WorkflowType("BUILD") + WorkflowTypeTest = WorkflowType("TEST") + WorkflowTypeDistribution = WorkflowType("DISTRIBUTION") +) + +func (WorkflowType) ElementType() reflect.Type { + return reflect.TypeOf((*WorkflowType)(nil)).Elem() +} + +func (e WorkflowType) ToWorkflowTypeOutput() WorkflowTypeOutput { + return pulumi.ToOutput(e).(WorkflowTypeOutput) +} + +func (e WorkflowType) ToWorkflowTypeOutputWithContext(ctx context.Context) WorkflowTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(WorkflowTypeOutput) +} + +func (e WorkflowType) ToWorkflowTypePtrOutput() WorkflowTypePtrOutput { + return e.ToWorkflowTypePtrOutputWithContext(context.Background()) +} + +func (e WorkflowType) ToWorkflowTypePtrOutputWithContext(ctx context.Context) WorkflowTypePtrOutput { + return WorkflowType(e).ToWorkflowTypeOutputWithContext(ctx).ToWorkflowTypePtrOutputWithContext(ctx) +} + +func (e WorkflowType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e WorkflowType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e WorkflowType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e WorkflowType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type WorkflowTypeOutput struct{ *pulumi.OutputState } + +func (WorkflowTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*WorkflowType)(nil)).Elem() +} + +func (o WorkflowTypeOutput) ToWorkflowTypeOutput() WorkflowTypeOutput { + return o +} + +func (o WorkflowTypeOutput) ToWorkflowTypeOutputWithContext(ctx context.Context) WorkflowTypeOutput { + return o +} + +func (o WorkflowTypeOutput) ToWorkflowTypePtrOutput() WorkflowTypePtrOutput { + return o.ToWorkflowTypePtrOutputWithContext(context.Background()) +} + +func (o WorkflowTypeOutput) ToWorkflowTypePtrOutputWithContext(ctx context.Context) WorkflowTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v WorkflowType) *WorkflowType { + return &v + }).(WorkflowTypePtrOutput) +} + +func (o WorkflowTypeOutput) ToOutput(ctx context.Context) pulumix.Output[WorkflowType] { + return pulumix.Output[WorkflowType]{ + OutputState: o.OutputState, + } +} + +func (o WorkflowTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o WorkflowTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e WorkflowType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o WorkflowTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o WorkflowTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e WorkflowType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type WorkflowTypePtrOutput struct{ *pulumi.OutputState } + +func (WorkflowTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**WorkflowType)(nil)).Elem() +} + +func (o WorkflowTypePtrOutput) ToWorkflowTypePtrOutput() WorkflowTypePtrOutput { + return o +} + +func (o WorkflowTypePtrOutput) ToWorkflowTypePtrOutputWithContext(ctx context.Context) WorkflowTypePtrOutput { + return o +} + +func (o WorkflowTypePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*WorkflowType] { + return pulumix.Output[*WorkflowType]{ + OutputState: o.OutputState, + } +} + +func (o WorkflowTypePtrOutput) Elem() WorkflowTypeOutput { + return o.ApplyT(func(v *WorkflowType) WorkflowType { + if v != nil { + return *v + } + var ret WorkflowType + return ret + }).(WorkflowTypeOutput) +} + +func (o WorkflowTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o WorkflowTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *WorkflowType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// WorkflowTypeInput is an input type that accepts WorkflowTypeArgs and WorkflowTypeOutput values. +// You can construct a concrete instance of `WorkflowTypeInput` via: +// +// WorkflowTypeArgs{...} +type WorkflowTypeInput interface { + pulumi.Input + + ToWorkflowTypeOutput() WorkflowTypeOutput + ToWorkflowTypeOutputWithContext(context.Context) WorkflowTypeOutput +} + +var workflowTypePtrType = reflect.TypeOf((**WorkflowType)(nil)).Elem() + +type WorkflowTypePtrInput interface { + pulumi.Input + + ToWorkflowTypePtrOutput() WorkflowTypePtrOutput + ToWorkflowTypePtrOutputWithContext(context.Context) WorkflowTypePtrOutput +} + +type workflowTypePtr string + +func WorkflowTypePtr(v string) WorkflowTypePtrInput { + return (*workflowTypePtr)(&v) +} + +func (*workflowTypePtr) ElementType() reflect.Type { + return workflowTypePtrType +} + +func (in *workflowTypePtr) ToWorkflowTypePtrOutput() WorkflowTypePtrOutput { + return pulumi.ToOutput(in).(WorkflowTypePtrOutput) +} + +func (in *workflowTypePtr) ToWorkflowTypePtrOutputWithContext(ctx context.Context) WorkflowTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(WorkflowTypePtrOutput) +} + +func (in *workflowTypePtr) ToOutput(ctx context.Context) pulumix.Output[*WorkflowType] { + return pulumix.Output[*WorkflowType]{ + OutputState: in.ToWorkflowTypePtrOutputWithContext(ctx).OutputState, + } +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*ComponentPlatformInput)(nil)).Elem(), ComponentPlatform("Windows")) pulumi.RegisterInputType(reflect.TypeOf((*ComponentPlatformPtrInput)(nil)).Elem(), ComponentPlatform("Windows")) @@ -2886,8 +3436,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineSchedulePipelineExecutionStartConditionPtrInput)(nil)).Elem(), ImagePipelineSchedulePipelineExecutionStartCondition("EXPRESSION_MATCH_ONLY")) pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineStatusInput)(nil)).Elem(), ImagePipelineStatus("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineStatusPtrInput)(nil)).Elem(), ImagePipelineStatus("DISABLED")) + pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineWorkflowConfigurationOnFailureInput)(nil)).Elem(), ImagePipelineWorkflowConfigurationOnFailure("CONTINUE")) + pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineWorkflowConfigurationOnFailurePtrInput)(nil)).Elem(), ImagePipelineWorkflowConfigurationOnFailure("CONTINUE")) pulumi.RegisterInputType(reflect.TypeOf((*ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeTypeInput)(nil)).Elem(), ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType("standard")) pulumi.RegisterInputType(reflect.TypeOf((*ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeTypePtrInput)(nil)).Elem(), ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType("standard")) + pulumi.RegisterInputType(reflect.TypeOf((*ImageWorkflowConfigurationOnFailureInput)(nil)).Elem(), ImageWorkflowConfigurationOnFailure("CONTINUE")) + pulumi.RegisterInputType(reflect.TypeOf((*ImageWorkflowConfigurationOnFailurePtrInput)(nil)).Elem(), ImageWorkflowConfigurationOnFailure("CONTINUE")) pulumi.RegisterInputType(reflect.TypeOf((*InfrastructureConfigurationInstanceMetadataOptionsHttpTokensInput)(nil)).Elem(), InfrastructureConfigurationInstanceMetadataOptionsHttpTokens("required")) pulumi.RegisterInputType(reflect.TypeOf((*InfrastructureConfigurationInstanceMetadataOptionsHttpTokensPtrInput)(nil)).Elem(), InfrastructureConfigurationInstanceMetadataOptionsHttpTokens("required")) pulumi.RegisterInputType(reflect.TypeOf((*LifecyclePolicyActionTypeInput)(nil)).Elem(), LifecyclePolicyActionType("DELETE")) @@ -2900,6 +3454,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*LifecyclePolicyStatusPtrInput)(nil)).Elem(), LifecyclePolicyStatus("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*LifecyclePolicyTimeUnitInput)(nil)).Elem(), LifecyclePolicyTimeUnit("DAYS")) pulumi.RegisterInputType(reflect.TypeOf((*LifecyclePolicyTimeUnitPtrInput)(nil)).Elem(), LifecyclePolicyTimeUnit("DAYS")) + pulumi.RegisterInputType(reflect.TypeOf((*WorkflowTypeInput)(nil)).Elem(), WorkflowType("BUILD")) + pulumi.RegisterInputType(reflect.TypeOf((*WorkflowTypePtrInput)(nil)).Elem(), WorkflowType("BUILD")) pulumi.RegisterOutputType(ComponentPlatformOutput{}) pulumi.RegisterOutputType(ComponentPlatformPtrOutput{}) pulumi.RegisterOutputType(ComponentTypeOutput{}) @@ -2918,8 +3474,12 @@ func init() { pulumi.RegisterOutputType(ImagePipelineSchedulePipelineExecutionStartConditionPtrOutput{}) pulumi.RegisterOutputType(ImagePipelineStatusOutput{}) pulumi.RegisterOutputType(ImagePipelineStatusPtrOutput{}) + pulumi.RegisterOutputType(ImagePipelineWorkflowConfigurationOnFailureOutput{}) + pulumi.RegisterOutputType(ImagePipelineWorkflowConfigurationOnFailurePtrOutput{}) pulumi.RegisterOutputType(ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeTypeOutput{}) pulumi.RegisterOutputType(ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeTypePtrOutput{}) + pulumi.RegisterOutputType(ImageWorkflowConfigurationOnFailureOutput{}) + pulumi.RegisterOutputType(ImageWorkflowConfigurationOnFailurePtrOutput{}) pulumi.RegisterOutputType(InfrastructureConfigurationInstanceMetadataOptionsHttpTokensOutput{}) pulumi.RegisterOutputType(InfrastructureConfigurationInstanceMetadataOptionsHttpTokensPtrOutput{}) pulumi.RegisterOutputType(LifecyclePolicyActionTypeOutput{}) @@ -2932,4 +3492,6 @@ func init() { pulumi.RegisterOutputType(LifecyclePolicyStatusPtrOutput{}) pulumi.RegisterOutputType(LifecyclePolicyTimeUnitOutput{}) pulumi.RegisterOutputType(LifecyclePolicyTimeUnitPtrOutput{}) + pulumi.RegisterOutputType(WorkflowTypeOutput{}) + pulumi.RegisterOutputType(WorkflowTypePtrOutput{}) } diff --git a/sdk/go/aws/imagebuilder/pulumiTypes.go b/sdk/go/aws/imagebuilder/pulumiTypes.go index e06c054909..fcb5d5ac1a 100644 --- a/sdk/go/aws/imagebuilder/pulumiTypes.go +++ b/sdk/go/aws/imagebuilder/pulumiTypes.go @@ -3739,6 +3739,286 @@ func (o ImagePipelineSchedulePtrOutput) ScheduleExpression() pulumi.StringPtrOut }).(pulumi.StringPtrOutput) } +// The workflow configuration of the image +type ImagePipelineWorkflowConfiguration struct { + // Define execution decision in case of workflow failure + OnFailure *ImagePipelineWorkflowConfigurationOnFailure `pulumi:"onFailure"` + // The parallel group name + ParallelGroup *string `pulumi:"parallelGroup"` + // The parameters associated with the workflow + Parameters []ImagePipelineWorkflowParameter `pulumi:"parameters"` + // The Amazon Resource Name (ARN) of the workflow + WorkflowArn *string `pulumi:"workflowArn"` +} + +// ImagePipelineWorkflowConfigurationInput is an input type that accepts ImagePipelineWorkflowConfigurationArgs and ImagePipelineWorkflowConfigurationOutput values. +// You can construct a concrete instance of `ImagePipelineWorkflowConfigurationInput` via: +// +// ImagePipelineWorkflowConfigurationArgs{...} +type ImagePipelineWorkflowConfigurationInput interface { + pulumi.Input + + ToImagePipelineWorkflowConfigurationOutput() ImagePipelineWorkflowConfigurationOutput + ToImagePipelineWorkflowConfigurationOutputWithContext(context.Context) ImagePipelineWorkflowConfigurationOutput +} + +// The workflow configuration of the image +type ImagePipelineWorkflowConfigurationArgs struct { + // Define execution decision in case of workflow failure + OnFailure ImagePipelineWorkflowConfigurationOnFailurePtrInput `pulumi:"onFailure"` + // The parallel group name + ParallelGroup pulumi.StringPtrInput `pulumi:"parallelGroup"` + // The parameters associated with the workflow + Parameters ImagePipelineWorkflowParameterArrayInput `pulumi:"parameters"` + // The Amazon Resource Name (ARN) of the workflow + WorkflowArn pulumi.StringPtrInput `pulumi:"workflowArn"` +} + +func (ImagePipelineWorkflowConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ImagePipelineWorkflowConfiguration)(nil)).Elem() +} + +func (i ImagePipelineWorkflowConfigurationArgs) ToImagePipelineWorkflowConfigurationOutput() ImagePipelineWorkflowConfigurationOutput { + return i.ToImagePipelineWorkflowConfigurationOutputWithContext(context.Background()) +} + +func (i ImagePipelineWorkflowConfigurationArgs) ToImagePipelineWorkflowConfigurationOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(ImagePipelineWorkflowConfigurationOutput) +} + +func (i ImagePipelineWorkflowConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[ImagePipelineWorkflowConfiguration] { + return pulumix.Output[ImagePipelineWorkflowConfiguration]{ + OutputState: i.ToImagePipelineWorkflowConfigurationOutputWithContext(ctx).OutputState, + } +} + +// ImagePipelineWorkflowConfigurationArrayInput is an input type that accepts ImagePipelineWorkflowConfigurationArray and ImagePipelineWorkflowConfigurationArrayOutput values. +// You can construct a concrete instance of `ImagePipelineWorkflowConfigurationArrayInput` via: +// +// ImagePipelineWorkflowConfigurationArray{ ImagePipelineWorkflowConfigurationArgs{...} } +type ImagePipelineWorkflowConfigurationArrayInput interface { + pulumi.Input + + ToImagePipelineWorkflowConfigurationArrayOutput() ImagePipelineWorkflowConfigurationArrayOutput + ToImagePipelineWorkflowConfigurationArrayOutputWithContext(context.Context) ImagePipelineWorkflowConfigurationArrayOutput +} + +type ImagePipelineWorkflowConfigurationArray []ImagePipelineWorkflowConfigurationInput + +func (ImagePipelineWorkflowConfigurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ImagePipelineWorkflowConfiguration)(nil)).Elem() +} + +func (i ImagePipelineWorkflowConfigurationArray) ToImagePipelineWorkflowConfigurationArrayOutput() ImagePipelineWorkflowConfigurationArrayOutput { + return i.ToImagePipelineWorkflowConfigurationArrayOutputWithContext(context.Background()) +} + +func (i ImagePipelineWorkflowConfigurationArray) ToImagePipelineWorkflowConfigurationArrayOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ImagePipelineWorkflowConfigurationArrayOutput) +} + +func (i ImagePipelineWorkflowConfigurationArray) ToOutput(ctx context.Context) pulumix.Output[[]ImagePipelineWorkflowConfiguration] { + return pulumix.Output[[]ImagePipelineWorkflowConfiguration]{ + OutputState: i.ToImagePipelineWorkflowConfigurationArrayOutputWithContext(ctx).OutputState, + } +} + +// The workflow configuration of the image +type ImagePipelineWorkflowConfigurationOutput struct{ *pulumi.OutputState } + +func (ImagePipelineWorkflowConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ImagePipelineWorkflowConfiguration)(nil)).Elem() +} + +func (o ImagePipelineWorkflowConfigurationOutput) ToImagePipelineWorkflowConfigurationOutput() ImagePipelineWorkflowConfigurationOutput { + return o +} + +func (o ImagePipelineWorkflowConfigurationOutput) ToImagePipelineWorkflowConfigurationOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationOutput { + return o +} + +func (o ImagePipelineWorkflowConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[ImagePipelineWorkflowConfiguration] { + return pulumix.Output[ImagePipelineWorkflowConfiguration]{ + OutputState: o.OutputState, + } +} + +// Define execution decision in case of workflow failure +func (o ImagePipelineWorkflowConfigurationOutput) OnFailure() ImagePipelineWorkflowConfigurationOnFailurePtrOutput { + return o.ApplyT(func(v ImagePipelineWorkflowConfiguration) *ImagePipelineWorkflowConfigurationOnFailure { + return v.OnFailure + }).(ImagePipelineWorkflowConfigurationOnFailurePtrOutput) +} + +// The parallel group name +func (o ImagePipelineWorkflowConfigurationOutput) ParallelGroup() pulumi.StringPtrOutput { + return o.ApplyT(func(v ImagePipelineWorkflowConfiguration) *string { return v.ParallelGroup }).(pulumi.StringPtrOutput) +} + +// The parameters associated with the workflow +func (o ImagePipelineWorkflowConfigurationOutput) Parameters() ImagePipelineWorkflowParameterArrayOutput { + return o.ApplyT(func(v ImagePipelineWorkflowConfiguration) []ImagePipelineWorkflowParameter { return v.Parameters }).(ImagePipelineWorkflowParameterArrayOutput) +} + +// The Amazon Resource Name (ARN) of the workflow +func (o ImagePipelineWorkflowConfigurationOutput) WorkflowArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v ImagePipelineWorkflowConfiguration) *string { return v.WorkflowArn }).(pulumi.StringPtrOutput) +} + +type ImagePipelineWorkflowConfigurationArrayOutput struct{ *pulumi.OutputState } + +func (ImagePipelineWorkflowConfigurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ImagePipelineWorkflowConfiguration)(nil)).Elem() +} + +func (o ImagePipelineWorkflowConfigurationArrayOutput) ToImagePipelineWorkflowConfigurationArrayOutput() ImagePipelineWorkflowConfigurationArrayOutput { + return o +} + +func (o ImagePipelineWorkflowConfigurationArrayOutput) ToImagePipelineWorkflowConfigurationArrayOutputWithContext(ctx context.Context) ImagePipelineWorkflowConfigurationArrayOutput { + return o +} + +func (o ImagePipelineWorkflowConfigurationArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ImagePipelineWorkflowConfiguration] { + return pulumix.Output[[]ImagePipelineWorkflowConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o ImagePipelineWorkflowConfigurationArrayOutput) Index(i pulumi.IntInput) ImagePipelineWorkflowConfigurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ImagePipelineWorkflowConfiguration { + return vs[0].([]ImagePipelineWorkflowConfiguration)[vs[1].(int)] + }).(ImagePipelineWorkflowConfigurationOutput) +} + +// A parameter associated with the workflow +type ImagePipelineWorkflowParameter struct { + Name *string `pulumi:"name"` + Value []string `pulumi:"value"` +} + +// ImagePipelineWorkflowParameterInput is an input type that accepts ImagePipelineWorkflowParameterArgs and ImagePipelineWorkflowParameterOutput values. +// You can construct a concrete instance of `ImagePipelineWorkflowParameterInput` via: +// +// ImagePipelineWorkflowParameterArgs{...} +type ImagePipelineWorkflowParameterInput interface { + pulumi.Input + + ToImagePipelineWorkflowParameterOutput() ImagePipelineWorkflowParameterOutput + ToImagePipelineWorkflowParameterOutputWithContext(context.Context) ImagePipelineWorkflowParameterOutput +} + +// A parameter associated with the workflow +type ImagePipelineWorkflowParameterArgs struct { + Name pulumi.StringPtrInput `pulumi:"name"` + Value pulumi.StringArrayInput `pulumi:"value"` +} + +func (ImagePipelineWorkflowParameterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ImagePipelineWorkflowParameter)(nil)).Elem() +} + +func (i ImagePipelineWorkflowParameterArgs) ToImagePipelineWorkflowParameterOutput() ImagePipelineWorkflowParameterOutput { + return i.ToImagePipelineWorkflowParameterOutputWithContext(context.Background()) +} + +func (i ImagePipelineWorkflowParameterArgs) ToImagePipelineWorkflowParameterOutputWithContext(ctx context.Context) ImagePipelineWorkflowParameterOutput { + return pulumi.ToOutputWithContext(ctx, i).(ImagePipelineWorkflowParameterOutput) +} + +func (i ImagePipelineWorkflowParameterArgs) ToOutput(ctx context.Context) pulumix.Output[ImagePipelineWorkflowParameter] { + return pulumix.Output[ImagePipelineWorkflowParameter]{ + OutputState: i.ToImagePipelineWorkflowParameterOutputWithContext(ctx).OutputState, + } +} + +// ImagePipelineWorkflowParameterArrayInput is an input type that accepts ImagePipelineWorkflowParameterArray and ImagePipelineWorkflowParameterArrayOutput values. +// You can construct a concrete instance of `ImagePipelineWorkflowParameterArrayInput` via: +// +// ImagePipelineWorkflowParameterArray{ ImagePipelineWorkflowParameterArgs{...} } +type ImagePipelineWorkflowParameterArrayInput interface { + pulumi.Input + + ToImagePipelineWorkflowParameterArrayOutput() ImagePipelineWorkflowParameterArrayOutput + ToImagePipelineWorkflowParameterArrayOutputWithContext(context.Context) ImagePipelineWorkflowParameterArrayOutput +} + +type ImagePipelineWorkflowParameterArray []ImagePipelineWorkflowParameterInput + +func (ImagePipelineWorkflowParameterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ImagePipelineWorkflowParameter)(nil)).Elem() +} + +func (i ImagePipelineWorkflowParameterArray) ToImagePipelineWorkflowParameterArrayOutput() ImagePipelineWorkflowParameterArrayOutput { + return i.ToImagePipelineWorkflowParameterArrayOutputWithContext(context.Background()) +} + +func (i ImagePipelineWorkflowParameterArray) ToImagePipelineWorkflowParameterArrayOutputWithContext(ctx context.Context) ImagePipelineWorkflowParameterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ImagePipelineWorkflowParameterArrayOutput) +} + +func (i ImagePipelineWorkflowParameterArray) ToOutput(ctx context.Context) pulumix.Output[[]ImagePipelineWorkflowParameter] { + return pulumix.Output[[]ImagePipelineWorkflowParameter]{ + OutputState: i.ToImagePipelineWorkflowParameterArrayOutputWithContext(ctx).OutputState, + } +} + +// A parameter associated with the workflow +type ImagePipelineWorkflowParameterOutput struct{ *pulumi.OutputState } + +func (ImagePipelineWorkflowParameterOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ImagePipelineWorkflowParameter)(nil)).Elem() +} + +func (o ImagePipelineWorkflowParameterOutput) ToImagePipelineWorkflowParameterOutput() ImagePipelineWorkflowParameterOutput { + return o +} + +func (o ImagePipelineWorkflowParameterOutput) ToImagePipelineWorkflowParameterOutputWithContext(ctx context.Context) ImagePipelineWorkflowParameterOutput { + return o +} + +func (o ImagePipelineWorkflowParameterOutput) ToOutput(ctx context.Context) pulumix.Output[ImagePipelineWorkflowParameter] { + return pulumix.Output[ImagePipelineWorkflowParameter]{ + OutputState: o.OutputState, + } +} + +func (o ImagePipelineWorkflowParameterOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v ImagePipelineWorkflowParameter) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +func (o ImagePipelineWorkflowParameterOutput) Value() pulumi.StringArrayOutput { + return o.ApplyT(func(v ImagePipelineWorkflowParameter) []string { return v.Value }).(pulumi.StringArrayOutput) +} + +type ImagePipelineWorkflowParameterArrayOutput struct{ *pulumi.OutputState } + +func (ImagePipelineWorkflowParameterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ImagePipelineWorkflowParameter)(nil)).Elem() +} + +func (o ImagePipelineWorkflowParameterArrayOutput) ToImagePipelineWorkflowParameterArrayOutput() ImagePipelineWorkflowParameterArrayOutput { + return o +} + +func (o ImagePipelineWorkflowParameterArrayOutput) ToImagePipelineWorkflowParameterArrayOutputWithContext(ctx context.Context) ImagePipelineWorkflowParameterArrayOutput { + return o +} + +func (o ImagePipelineWorkflowParameterArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ImagePipelineWorkflowParameter] { + return pulumix.Output[[]ImagePipelineWorkflowParameter]{ + OutputState: o.OutputState, + } +} + +func (o ImagePipelineWorkflowParameterArrayOutput) Index(i pulumi.IntInput) ImagePipelineWorkflowParameterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ImagePipelineWorkflowParameter { + return vs[0].([]ImagePipelineWorkflowParameter)[vs[1].(int)] + }).(ImagePipelineWorkflowParameterOutput) +} + // Specify additional settings and launch scripts for your build instances. type ImageRecipeAdditionalInstanceConfiguration struct { // Contains settings for the SSM agent on your build instance. @@ -5172,6 +5452,284 @@ func (o ImageTestsConfigurationPtrOutput) TimeoutMinutes() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } +// The workflow configuration of the image +type ImageWorkflowConfiguration struct { + // Define execution decision in case of workflow failure + OnFailure *ImageWorkflowConfigurationOnFailure `pulumi:"onFailure"` + // The parallel group name + ParallelGroup *string `pulumi:"parallelGroup"` + // The parameters associated with the workflow + Parameters []ImageWorkflowParameter `pulumi:"parameters"` + // The Amazon Resource Name (ARN) of the workflow + WorkflowArn *string `pulumi:"workflowArn"` +} + +// ImageWorkflowConfigurationInput is an input type that accepts ImageWorkflowConfigurationArgs and ImageWorkflowConfigurationOutput values. +// You can construct a concrete instance of `ImageWorkflowConfigurationInput` via: +// +// ImageWorkflowConfigurationArgs{...} +type ImageWorkflowConfigurationInput interface { + pulumi.Input + + ToImageWorkflowConfigurationOutput() ImageWorkflowConfigurationOutput + ToImageWorkflowConfigurationOutputWithContext(context.Context) ImageWorkflowConfigurationOutput +} + +// The workflow configuration of the image +type ImageWorkflowConfigurationArgs struct { + // Define execution decision in case of workflow failure + OnFailure ImageWorkflowConfigurationOnFailurePtrInput `pulumi:"onFailure"` + // The parallel group name + ParallelGroup pulumi.StringPtrInput `pulumi:"parallelGroup"` + // The parameters associated with the workflow + Parameters ImageWorkflowParameterArrayInput `pulumi:"parameters"` + // The Amazon Resource Name (ARN) of the workflow + WorkflowArn pulumi.StringPtrInput `pulumi:"workflowArn"` +} + +func (ImageWorkflowConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ImageWorkflowConfiguration)(nil)).Elem() +} + +func (i ImageWorkflowConfigurationArgs) ToImageWorkflowConfigurationOutput() ImageWorkflowConfigurationOutput { + return i.ToImageWorkflowConfigurationOutputWithContext(context.Background()) +} + +func (i ImageWorkflowConfigurationArgs) ToImageWorkflowConfigurationOutputWithContext(ctx context.Context) ImageWorkflowConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(ImageWorkflowConfigurationOutput) +} + +func (i ImageWorkflowConfigurationArgs) ToOutput(ctx context.Context) pulumix.Output[ImageWorkflowConfiguration] { + return pulumix.Output[ImageWorkflowConfiguration]{ + OutputState: i.ToImageWorkflowConfigurationOutputWithContext(ctx).OutputState, + } +} + +// ImageWorkflowConfigurationArrayInput is an input type that accepts ImageWorkflowConfigurationArray and ImageWorkflowConfigurationArrayOutput values. +// You can construct a concrete instance of `ImageWorkflowConfigurationArrayInput` via: +// +// ImageWorkflowConfigurationArray{ ImageWorkflowConfigurationArgs{...} } +type ImageWorkflowConfigurationArrayInput interface { + pulumi.Input + + ToImageWorkflowConfigurationArrayOutput() ImageWorkflowConfigurationArrayOutput + ToImageWorkflowConfigurationArrayOutputWithContext(context.Context) ImageWorkflowConfigurationArrayOutput +} + +type ImageWorkflowConfigurationArray []ImageWorkflowConfigurationInput + +func (ImageWorkflowConfigurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ImageWorkflowConfiguration)(nil)).Elem() +} + +func (i ImageWorkflowConfigurationArray) ToImageWorkflowConfigurationArrayOutput() ImageWorkflowConfigurationArrayOutput { + return i.ToImageWorkflowConfigurationArrayOutputWithContext(context.Background()) +} + +func (i ImageWorkflowConfigurationArray) ToImageWorkflowConfigurationArrayOutputWithContext(ctx context.Context) ImageWorkflowConfigurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ImageWorkflowConfigurationArrayOutput) +} + +func (i ImageWorkflowConfigurationArray) ToOutput(ctx context.Context) pulumix.Output[[]ImageWorkflowConfiguration] { + return pulumix.Output[[]ImageWorkflowConfiguration]{ + OutputState: i.ToImageWorkflowConfigurationArrayOutputWithContext(ctx).OutputState, + } +} + +// The workflow configuration of the image +type ImageWorkflowConfigurationOutput struct{ *pulumi.OutputState } + +func (ImageWorkflowConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ImageWorkflowConfiguration)(nil)).Elem() +} + +func (o ImageWorkflowConfigurationOutput) ToImageWorkflowConfigurationOutput() ImageWorkflowConfigurationOutput { + return o +} + +func (o ImageWorkflowConfigurationOutput) ToImageWorkflowConfigurationOutputWithContext(ctx context.Context) ImageWorkflowConfigurationOutput { + return o +} + +func (o ImageWorkflowConfigurationOutput) ToOutput(ctx context.Context) pulumix.Output[ImageWorkflowConfiguration] { + return pulumix.Output[ImageWorkflowConfiguration]{ + OutputState: o.OutputState, + } +} + +// Define execution decision in case of workflow failure +func (o ImageWorkflowConfigurationOutput) OnFailure() ImageWorkflowConfigurationOnFailurePtrOutput { + return o.ApplyT(func(v ImageWorkflowConfiguration) *ImageWorkflowConfigurationOnFailure { return v.OnFailure }).(ImageWorkflowConfigurationOnFailurePtrOutput) +} + +// The parallel group name +func (o ImageWorkflowConfigurationOutput) ParallelGroup() pulumi.StringPtrOutput { + return o.ApplyT(func(v ImageWorkflowConfiguration) *string { return v.ParallelGroup }).(pulumi.StringPtrOutput) +} + +// The parameters associated with the workflow +func (o ImageWorkflowConfigurationOutput) Parameters() ImageWorkflowParameterArrayOutput { + return o.ApplyT(func(v ImageWorkflowConfiguration) []ImageWorkflowParameter { return v.Parameters }).(ImageWorkflowParameterArrayOutput) +} + +// The Amazon Resource Name (ARN) of the workflow +func (o ImageWorkflowConfigurationOutput) WorkflowArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v ImageWorkflowConfiguration) *string { return v.WorkflowArn }).(pulumi.StringPtrOutput) +} + +type ImageWorkflowConfigurationArrayOutput struct{ *pulumi.OutputState } + +func (ImageWorkflowConfigurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ImageWorkflowConfiguration)(nil)).Elem() +} + +func (o ImageWorkflowConfigurationArrayOutput) ToImageWorkflowConfigurationArrayOutput() ImageWorkflowConfigurationArrayOutput { + return o +} + +func (o ImageWorkflowConfigurationArrayOutput) ToImageWorkflowConfigurationArrayOutputWithContext(ctx context.Context) ImageWorkflowConfigurationArrayOutput { + return o +} + +func (o ImageWorkflowConfigurationArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ImageWorkflowConfiguration] { + return pulumix.Output[[]ImageWorkflowConfiguration]{ + OutputState: o.OutputState, + } +} + +func (o ImageWorkflowConfigurationArrayOutput) Index(i pulumi.IntInput) ImageWorkflowConfigurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ImageWorkflowConfiguration { + return vs[0].([]ImageWorkflowConfiguration)[vs[1].(int)] + }).(ImageWorkflowConfigurationOutput) +} + +// A parameter associated with the workflow +type ImageWorkflowParameter struct { + Name *string `pulumi:"name"` + Value []string `pulumi:"value"` +} + +// ImageWorkflowParameterInput is an input type that accepts ImageWorkflowParameterArgs and ImageWorkflowParameterOutput values. +// You can construct a concrete instance of `ImageWorkflowParameterInput` via: +// +// ImageWorkflowParameterArgs{...} +type ImageWorkflowParameterInput interface { + pulumi.Input + + ToImageWorkflowParameterOutput() ImageWorkflowParameterOutput + ToImageWorkflowParameterOutputWithContext(context.Context) ImageWorkflowParameterOutput +} + +// A parameter associated with the workflow +type ImageWorkflowParameterArgs struct { + Name pulumi.StringPtrInput `pulumi:"name"` + Value pulumi.StringArrayInput `pulumi:"value"` +} + +func (ImageWorkflowParameterArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ImageWorkflowParameter)(nil)).Elem() +} + +func (i ImageWorkflowParameterArgs) ToImageWorkflowParameterOutput() ImageWorkflowParameterOutput { + return i.ToImageWorkflowParameterOutputWithContext(context.Background()) +} + +func (i ImageWorkflowParameterArgs) ToImageWorkflowParameterOutputWithContext(ctx context.Context) ImageWorkflowParameterOutput { + return pulumi.ToOutputWithContext(ctx, i).(ImageWorkflowParameterOutput) +} + +func (i ImageWorkflowParameterArgs) ToOutput(ctx context.Context) pulumix.Output[ImageWorkflowParameter] { + return pulumix.Output[ImageWorkflowParameter]{ + OutputState: i.ToImageWorkflowParameterOutputWithContext(ctx).OutputState, + } +} + +// ImageWorkflowParameterArrayInput is an input type that accepts ImageWorkflowParameterArray and ImageWorkflowParameterArrayOutput values. +// You can construct a concrete instance of `ImageWorkflowParameterArrayInput` via: +// +// ImageWorkflowParameterArray{ ImageWorkflowParameterArgs{...} } +type ImageWorkflowParameterArrayInput interface { + pulumi.Input + + ToImageWorkflowParameterArrayOutput() ImageWorkflowParameterArrayOutput + ToImageWorkflowParameterArrayOutputWithContext(context.Context) ImageWorkflowParameterArrayOutput +} + +type ImageWorkflowParameterArray []ImageWorkflowParameterInput + +func (ImageWorkflowParameterArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ImageWorkflowParameter)(nil)).Elem() +} + +func (i ImageWorkflowParameterArray) ToImageWorkflowParameterArrayOutput() ImageWorkflowParameterArrayOutput { + return i.ToImageWorkflowParameterArrayOutputWithContext(context.Background()) +} + +func (i ImageWorkflowParameterArray) ToImageWorkflowParameterArrayOutputWithContext(ctx context.Context) ImageWorkflowParameterArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ImageWorkflowParameterArrayOutput) +} + +func (i ImageWorkflowParameterArray) ToOutput(ctx context.Context) pulumix.Output[[]ImageWorkflowParameter] { + return pulumix.Output[[]ImageWorkflowParameter]{ + OutputState: i.ToImageWorkflowParameterArrayOutputWithContext(ctx).OutputState, + } +} + +// A parameter associated with the workflow +type ImageWorkflowParameterOutput struct{ *pulumi.OutputState } + +func (ImageWorkflowParameterOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ImageWorkflowParameter)(nil)).Elem() +} + +func (o ImageWorkflowParameterOutput) ToImageWorkflowParameterOutput() ImageWorkflowParameterOutput { + return o +} + +func (o ImageWorkflowParameterOutput) ToImageWorkflowParameterOutputWithContext(ctx context.Context) ImageWorkflowParameterOutput { + return o +} + +func (o ImageWorkflowParameterOutput) ToOutput(ctx context.Context) pulumix.Output[ImageWorkflowParameter] { + return pulumix.Output[ImageWorkflowParameter]{ + OutputState: o.OutputState, + } +} + +func (o ImageWorkflowParameterOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v ImageWorkflowParameter) *string { return v.Name }).(pulumi.StringPtrOutput) +} + +func (o ImageWorkflowParameterOutput) Value() pulumi.StringArrayOutput { + return o.ApplyT(func(v ImageWorkflowParameter) []string { return v.Value }).(pulumi.StringArrayOutput) +} + +type ImageWorkflowParameterArrayOutput struct{ *pulumi.OutputState } + +func (ImageWorkflowParameterArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ImageWorkflowParameter)(nil)).Elem() +} + +func (o ImageWorkflowParameterArrayOutput) ToImageWorkflowParameterArrayOutput() ImageWorkflowParameterArrayOutput { + return o +} + +func (o ImageWorkflowParameterArrayOutput) ToImageWorkflowParameterArrayOutputWithContext(ctx context.Context) ImageWorkflowParameterArrayOutput { + return o +} + +func (o ImageWorkflowParameterArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]ImageWorkflowParameter] { + return pulumix.Output[[]ImageWorkflowParameter]{ + OutputState: o.OutputState, + } +} + +func (o ImageWorkflowParameterArrayOutput) Index(i pulumi.IntInput) ImageWorkflowParameterOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ImageWorkflowParameter { + return vs[0].([]ImageWorkflowParameter)[vs[1].(int)] + }).(ImageWorkflowParameterOutput) +} + // The instance metadata option settings for the infrastructure configuration. type InfrastructureConfigurationInstanceMetadataOptions struct { // Limit the number of hops that an instance metadata request can traverse to reach its destination. @@ -7104,6 +7662,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineImageTestsConfigurationPtrInput)(nil)).Elem(), ImagePipelineImageTestsConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineScheduleInput)(nil)).Elem(), ImagePipelineScheduleArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineSchedulePtrInput)(nil)).Elem(), ImagePipelineScheduleArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineWorkflowConfigurationInput)(nil)).Elem(), ImagePipelineWorkflowConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineWorkflowConfigurationArrayInput)(nil)).Elem(), ImagePipelineWorkflowConfigurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineWorkflowParameterInput)(nil)).Elem(), ImagePipelineWorkflowParameterArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineWorkflowParameterArrayInput)(nil)).Elem(), ImagePipelineWorkflowParameterArray{}) pulumi.RegisterInputType(reflect.TypeOf((*ImageRecipeAdditionalInstanceConfigurationInput)(nil)).Elem(), ImageRecipeAdditionalInstanceConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ImageRecipeAdditionalInstanceConfigurationPtrInput)(nil)).Elem(), ImageRecipeAdditionalInstanceConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ImageRecipeComponentConfigurationInput)(nil)).Elem(), ImageRecipeComponentConfigurationArgs{}) @@ -7120,6 +7682,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ImageScanningConfigurationPtrInput)(nil)).Elem(), ImageScanningConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ImageTestsConfigurationInput)(nil)).Elem(), ImageTestsConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ImageTestsConfigurationPtrInput)(nil)).Elem(), ImageTestsConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ImageWorkflowConfigurationInput)(nil)).Elem(), ImageWorkflowConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ImageWorkflowConfigurationArrayInput)(nil)).Elem(), ImageWorkflowConfigurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ImageWorkflowParameterInput)(nil)).Elem(), ImageWorkflowParameterArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ImageWorkflowParameterArrayInput)(nil)).Elem(), ImageWorkflowParameterArray{}) pulumi.RegisterInputType(reflect.TypeOf((*InfrastructureConfigurationInstanceMetadataOptionsInput)(nil)).Elem(), InfrastructureConfigurationInstanceMetadataOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InfrastructureConfigurationInstanceMetadataOptionsPtrInput)(nil)).Elem(), InfrastructureConfigurationInstanceMetadataOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*InfrastructureConfigurationLoggingInput)(nil)).Elem(), InfrastructureConfigurationLoggingArgs{}) @@ -7181,6 +7747,10 @@ func init() { pulumi.RegisterOutputType(ImagePipelineImageTestsConfigurationPtrOutput{}) pulumi.RegisterOutputType(ImagePipelineScheduleOutput{}) pulumi.RegisterOutputType(ImagePipelineSchedulePtrOutput{}) + pulumi.RegisterOutputType(ImagePipelineWorkflowConfigurationOutput{}) + pulumi.RegisterOutputType(ImagePipelineWorkflowConfigurationArrayOutput{}) + pulumi.RegisterOutputType(ImagePipelineWorkflowParameterOutput{}) + pulumi.RegisterOutputType(ImagePipelineWorkflowParameterArrayOutput{}) pulumi.RegisterOutputType(ImageRecipeAdditionalInstanceConfigurationOutput{}) pulumi.RegisterOutputType(ImageRecipeAdditionalInstanceConfigurationPtrOutput{}) pulumi.RegisterOutputType(ImageRecipeComponentConfigurationOutput{}) @@ -7197,6 +7767,10 @@ func init() { pulumi.RegisterOutputType(ImageScanningConfigurationPtrOutput{}) pulumi.RegisterOutputType(ImageTestsConfigurationOutput{}) pulumi.RegisterOutputType(ImageTestsConfigurationPtrOutput{}) + pulumi.RegisterOutputType(ImageWorkflowConfigurationOutput{}) + pulumi.RegisterOutputType(ImageWorkflowConfigurationArrayOutput{}) + pulumi.RegisterOutputType(ImageWorkflowParameterOutput{}) + pulumi.RegisterOutputType(ImageWorkflowParameterArrayOutput{}) pulumi.RegisterOutputType(InfrastructureConfigurationInstanceMetadataOptionsOutput{}) pulumi.RegisterOutputType(InfrastructureConfigurationInstanceMetadataOptionsPtrOutput{}) pulumi.RegisterOutputType(InfrastructureConfigurationLoggingOutput{}) diff --git a/sdk/go/aws/imagebuilder/workflow.go b/sdk/go/aws/imagebuilder/workflow.go new file mode 100644 index 0000000000..3bb000842c --- /dev/null +++ b/sdk/go/aws/imagebuilder/workflow.go @@ -0,0 +1,244 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package imagebuilder + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Resource schema for AWS::ImageBuilder::Workflow +type Workflow struct { + pulumi.CustomResourceState + + // The Amazon Resource Name (ARN) of the workflow. + Arn pulumi.StringOutput `pulumi:"arn"` + // The change description of the workflow. + ChangeDescription pulumi.StringPtrOutput `pulumi:"changeDescription"` + // The data of the workflow. + Data pulumi.StringPtrOutput `pulumi:"data"` + // The description of the workflow. + Description pulumi.StringPtrOutput `pulumi:"description"` + // The KMS key identifier used to encrypt the workflow. + KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"` + // The name of the workflow. + Name pulumi.StringOutput `pulumi:"name"` + // The tags associated with the workflow. + Tags pulumi.AnyOutput `pulumi:"tags"` + // The type of the workflow denotes whether the workflow is used to build, test, or distribute. + Type WorkflowTypeOutput `pulumi:"type"` + // The uri of the workflow. + Uri pulumi.StringPtrOutput `pulumi:"uri"` + // The version of the workflow. + Version pulumi.StringOutput `pulumi:"version"` +} + +// NewWorkflow registers a new resource with the given unique name, arguments, and options. +func NewWorkflow(ctx *pulumi.Context, + name string, args *WorkflowArgs, opts ...pulumi.ResourceOption) (*Workflow, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.Type == nil { + return nil, errors.New("invalid value for required argument 'Type'") + } + if args.Version == nil { + return nil, errors.New("invalid value for required argument 'Version'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "changeDescription", + "data", + "description", + "kmsKeyId", + "name", + "tags", + "type", + "uri", + "version", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource Workflow + err := ctx.RegisterResource("aws-native:imagebuilder:Workflow", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetWorkflow gets an existing Workflow 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 GetWorkflow(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *WorkflowState, opts ...pulumi.ResourceOption) (*Workflow, error) { + var resource Workflow + err := ctx.ReadResource("aws-native:imagebuilder:Workflow", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering Workflow resources. +type workflowState struct { +} + +type WorkflowState struct { +} + +func (WorkflowState) ElementType() reflect.Type { + return reflect.TypeOf((*workflowState)(nil)).Elem() +} + +type workflowArgs struct { + // The change description of the workflow. + ChangeDescription *string `pulumi:"changeDescription"` + // The data of the workflow. + Data *string `pulumi:"data"` + // The description of the workflow. + Description *string `pulumi:"description"` + // The KMS key identifier used to encrypt the workflow. + KmsKeyId *string `pulumi:"kmsKeyId"` + // The name of the workflow. + Name *string `pulumi:"name"` + // The tags associated with the workflow. + Tags interface{} `pulumi:"tags"` + // The type of the workflow denotes whether the workflow is used to build, test, or distribute. + Type WorkflowType `pulumi:"type"` + // The uri of the workflow. + Uri *string `pulumi:"uri"` + // The version of the workflow. + Version string `pulumi:"version"` +} + +// The set of arguments for constructing a Workflow resource. +type WorkflowArgs struct { + // The change description of the workflow. + ChangeDescription pulumi.StringPtrInput + // The data of the workflow. + Data pulumi.StringPtrInput + // The description of the workflow. + Description pulumi.StringPtrInput + // The KMS key identifier used to encrypt the workflow. + KmsKeyId pulumi.StringPtrInput + // The name of the workflow. + Name pulumi.StringPtrInput + // The tags associated with the workflow. + Tags pulumi.Input + // The type of the workflow denotes whether the workflow is used to build, test, or distribute. + Type WorkflowTypeInput + // The uri of the workflow. + Uri pulumi.StringPtrInput + // The version of the workflow. + Version pulumi.StringInput +} + +func (WorkflowArgs) ElementType() reflect.Type { + return reflect.TypeOf((*workflowArgs)(nil)).Elem() +} + +type WorkflowInput interface { + pulumi.Input + + ToWorkflowOutput() WorkflowOutput + ToWorkflowOutputWithContext(ctx context.Context) WorkflowOutput +} + +func (*Workflow) ElementType() reflect.Type { + return reflect.TypeOf((**Workflow)(nil)).Elem() +} + +func (i *Workflow) ToWorkflowOutput() WorkflowOutput { + return i.ToWorkflowOutputWithContext(context.Background()) +} + +func (i *Workflow) ToWorkflowOutputWithContext(ctx context.Context) WorkflowOutput { + return pulumi.ToOutputWithContext(ctx, i).(WorkflowOutput) +} + +func (i *Workflow) ToOutput(ctx context.Context) pulumix.Output[*Workflow] { + return pulumix.Output[*Workflow]{ + OutputState: i.ToWorkflowOutputWithContext(ctx).OutputState, + } +} + +type WorkflowOutput struct{ *pulumi.OutputState } + +func (WorkflowOutput) ElementType() reflect.Type { + return reflect.TypeOf((**Workflow)(nil)).Elem() +} + +func (o WorkflowOutput) ToWorkflowOutput() WorkflowOutput { + return o +} + +func (o WorkflowOutput) ToWorkflowOutputWithContext(ctx context.Context) WorkflowOutput { + return o +} + +func (o WorkflowOutput) ToOutput(ctx context.Context) pulumix.Output[*Workflow] { + return pulumix.Output[*Workflow]{ + OutputState: o.OutputState, + } +} + +// The Amazon Resource Name (ARN) of the workflow. +func (o WorkflowOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *Workflow) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +// The change description of the workflow. +func (o WorkflowOutput) ChangeDescription() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Workflow) pulumi.StringPtrOutput { return v.ChangeDescription }).(pulumi.StringPtrOutput) +} + +// The data of the workflow. +func (o WorkflowOutput) Data() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Workflow) pulumi.StringPtrOutput { return v.Data }).(pulumi.StringPtrOutput) +} + +// The description of the workflow. +func (o WorkflowOutput) Description() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Workflow) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) +} + +// The KMS key identifier used to encrypt the workflow. +func (o WorkflowOutput) KmsKeyId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Workflow) pulumi.StringPtrOutput { return v.KmsKeyId }).(pulumi.StringPtrOutput) +} + +// The name of the workflow. +func (o WorkflowOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v *Workflow) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) +} + +// The tags associated with the workflow. +func (o WorkflowOutput) Tags() pulumi.AnyOutput { + return o.ApplyT(func(v *Workflow) pulumi.AnyOutput { return v.Tags }).(pulumi.AnyOutput) +} + +// The type of the workflow denotes whether the workflow is used to build, test, or distribute. +func (o WorkflowOutput) Type() WorkflowTypeOutput { + return o.ApplyT(func(v *Workflow) WorkflowTypeOutput { return v.Type }).(WorkflowTypeOutput) +} + +// The uri of the workflow. +func (o WorkflowOutput) Uri() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Workflow) pulumi.StringPtrOutput { return v.Uri }).(pulumi.StringPtrOutput) +} + +// The version of the workflow. +func (o WorkflowOutput) Version() pulumi.StringOutput { + return o.ApplyT(func(v *Workflow) pulumi.StringOutput { return v.Version }).(pulumi.StringOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*WorkflowInput)(nil)).Elem(), &Workflow{}) + pulumi.RegisterOutputType(WorkflowOutput{}) +} diff --git a/sdk/go/aws/iot/certificateProvider.go b/sdk/go/aws/iot/certificateProvider.go new file mode 100644 index 0000000000..06206e4b39 --- /dev/null +++ b/sdk/go/aws/iot/certificateProvider.go @@ -0,0 +1,169 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package iot + +import ( + "context" + "reflect" + + "errors" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. +type CertificateProvider struct { + pulumi.CustomResourceState + + AccountDefaultForOperations CertificateProviderOperationArrayOutput `pulumi:"accountDefaultForOperations"` + Arn pulumi.StringOutput `pulumi:"arn"` + CertificateProviderName pulumi.StringPtrOutput `pulumi:"certificateProviderName"` + LambdaFunctionArn pulumi.StringOutput `pulumi:"lambdaFunctionArn"` + // An array of key-value pairs to apply to this resource. + Tags CertificateProviderTagArrayOutput `pulumi:"tags"` +} + +// NewCertificateProvider registers a new resource with the given unique name, arguments, and options. +func NewCertificateProvider(ctx *pulumi.Context, + name string, args *CertificateProviderArgs, opts ...pulumi.ResourceOption) (*CertificateProvider, error) { + if args == nil { + return nil, errors.New("missing one or more required arguments") + } + + if args.AccountDefaultForOperations == nil { + return nil, errors.New("invalid value for required argument 'AccountDefaultForOperations'") + } + if args.LambdaFunctionArn == nil { + return nil, errors.New("invalid value for required argument 'LambdaFunctionArn'") + } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "certificateProviderName", + }) + opts = append(opts, replaceOnChanges) + opts = internal.PkgResourceDefaultOpts(opts) + var resource CertificateProvider + err := ctx.RegisterResource("aws-native:iot:CertificateProvider", name, args, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// GetCertificateProvider gets an existing CertificateProvider 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 GetCertificateProvider(ctx *pulumi.Context, + name string, id pulumi.IDInput, state *CertificateProviderState, opts ...pulumi.ResourceOption) (*CertificateProvider, error) { + var resource CertificateProvider + err := ctx.ReadResource("aws-native:iot:CertificateProvider", name, id, state, &resource, opts...) + if err != nil { + return nil, err + } + return &resource, nil +} + +// Input properties used for looking up and filtering CertificateProvider resources. +type certificateProviderState struct { +} + +type CertificateProviderState struct { +} + +func (CertificateProviderState) ElementType() reflect.Type { + return reflect.TypeOf((*certificateProviderState)(nil)).Elem() +} + +type certificateProviderArgs struct { + AccountDefaultForOperations []CertificateProviderOperation `pulumi:"accountDefaultForOperations"` + CertificateProviderName *string `pulumi:"certificateProviderName"` + LambdaFunctionArn string `pulumi:"lambdaFunctionArn"` + // An array of key-value pairs to apply to this resource. + Tags []CertificateProviderTag `pulumi:"tags"` +} + +// The set of arguments for constructing a CertificateProvider resource. +type CertificateProviderArgs struct { + AccountDefaultForOperations CertificateProviderOperationArrayInput + CertificateProviderName pulumi.StringPtrInput + LambdaFunctionArn pulumi.StringInput + // An array of key-value pairs to apply to this resource. + Tags CertificateProviderTagArrayInput +} + +func (CertificateProviderArgs) ElementType() reflect.Type { + return reflect.TypeOf((*certificateProviderArgs)(nil)).Elem() +} + +type CertificateProviderInput interface { + pulumi.Input + + ToCertificateProviderOutput() CertificateProviderOutput + ToCertificateProviderOutputWithContext(ctx context.Context) CertificateProviderOutput +} + +func (*CertificateProvider) ElementType() reflect.Type { + return reflect.TypeOf((**CertificateProvider)(nil)).Elem() +} + +func (i *CertificateProvider) ToCertificateProviderOutput() CertificateProviderOutput { + return i.ToCertificateProviderOutputWithContext(context.Background()) +} + +func (i *CertificateProvider) ToCertificateProviderOutputWithContext(ctx context.Context) CertificateProviderOutput { + return pulumi.ToOutputWithContext(ctx, i).(CertificateProviderOutput) +} + +func (i *CertificateProvider) ToOutput(ctx context.Context) pulumix.Output[*CertificateProvider] { + return pulumix.Output[*CertificateProvider]{ + OutputState: i.ToCertificateProviderOutputWithContext(ctx).OutputState, + } +} + +type CertificateProviderOutput struct{ *pulumi.OutputState } + +func (CertificateProviderOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CertificateProvider)(nil)).Elem() +} + +func (o CertificateProviderOutput) ToCertificateProviderOutput() CertificateProviderOutput { + return o +} + +func (o CertificateProviderOutput) ToCertificateProviderOutputWithContext(ctx context.Context) CertificateProviderOutput { + return o +} + +func (o CertificateProviderOutput) ToOutput(ctx context.Context) pulumix.Output[*CertificateProvider] { + return pulumix.Output[*CertificateProvider]{ + OutputState: o.OutputState, + } +} + +func (o CertificateProviderOutput) AccountDefaultForOperations() CertificateProviderOperationArrayOutput { + return o.ApplyT(func(v *CertificateProvider) CertificateProviderOperationArrayOutput { + return v.AccountDefaultForOperations + }).(CertificateProviderOperationArrayOutput) +} + +func (o CertificateProviderOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *CertificateProvider) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +func (o CertificateProviderOutput) CertificateProviderName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *CertificateProvider) pulumi.StringPtrOutput { return v.CertificateProviderName }).(pulumi.StringPtrOutput) +} + +func (o CertificateProviderOutput) LambdaFunctionArn() pulumi.StringOutput { + return o.ApplyT(func(v *CertificateProvider) pulumi.StringOutput { return v.LambdaFunctionArn }).(pulumi.StringOutput) +} + +// An array of key-value pairs to apply to this resource. +func (o CertificateProviderOutput) Tags() CertificateProviderTagArrayOutput { + return o.ApplyT(func(v *CertificateProvider) CertificateProviderTagArrayOutput { return v.Tags }).(CertificateProviderTagArrayOutput) +} + +func init() { + pulumi.RegisterInputType(reflect.TypeOf((*CertificateProviderInput)(nil)).Elem(), &CertificateProvider{}) + pulumi.RegisterOutputType(CertificateProviderOutput{}) +} diff --git a/sdk/go/aws/iot/getCertificateProvider.go b/sdk/go/aws/iot/getCertificateProvider.go new file mode 100644 index 0000000000..530bbf831d --- /dev/null +++ b/sdk/go/aws/iot/getCertificateProvider.go @@ -0,0 +1,100 @@ +// Code generated by the Pulumi SDK Generator DO NOT EDIT. +// *** WARNING: Do not edit by hand unless you're certain you know what you are doing! *** + +package iot + +import ( + "context" + "reflect" + + "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" + "github.com/pulumi/pulumi/sdk/v3/go/pulumi" + "github.com/pulumi/pulumi/sdk/v3/go/pulumix" +) + +// Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. +func LookupCertificateProvider(ctx *pulumi.Context, args *LookupCertificateProviderArgs, opts ...pulumi.InvokeOption) (*LookupCertificateProviderResult, error) { + opts = internal.PkgInvokeDefaultOpts(opts) + var rv LookupCertificateProviderResult + err := ctx.Invoke("aws-native:iot:getCertificateProvider", args, &rv, opts...) + if err != nil { + return nil, err + } + return &rv, nil +} + +type LookupCertificateProviderArgs struct { + CertificateProviderName string `pulumi:"certificateProviderName"` +} + +type LookupCertificateProviderResult struct { + AccountDefaultForOperations []CertificateProviderOperation `pulumi:"accountDefaultForOperations"` + Arn *string `pulumi:"arn"` + LambdaFunctionArn *string `pulumi:"lambdaFunctionArn"` + // An array of key-value pairs to apply to this resource. + Tags []CertificateProviderTag `pulumi:"tags"` +} + +func LookupCertificateProviderOutput(ctx *pulumi.Context, args LookupCertificateProviderOutputArgs, opts ...pulumi.InvokeOption) LookupCertificateProviderResultOutput { + return pulumi.ToOutputWithContext(context.Background(), args). + ApplyT(func(v interface{}) (LookupCertificateProviderResult, error) { + args := v.(LookupCertificateProviderArgs) + r, err := LookupCertificateProvider(ctx, &args, opts...) + var s LookupCertificateProviderResult + if r != nil { + s = *r + } + return s, err + }).(LookupCertificateProviderResultOutput) +} + +type LookupCertificateProviderOutputArgs struct { + CertificateProviderName pulumi.StringInput `pulumi:"certificateProviderName"` +} + +func (LookupCertificateProviderOutputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*LookupCertificateProviderArgs)(nil)).Elem() +} + +type LookupCertificateProviderResultOutput struct{ *pulumi.OutputState } + +func (LookupCertificateProviderResultOutput) ElementType() reflect.Type { + return reflect.TypeOf((*LookupCertificateProviderResult)(nil)).Elem() +} + +func (o LookupCertificateProviderResultOutput) ToLookupCertificateProviderResultOutput() LookupCertificateProviderResultOutput { + return o +} + +func (o LookupCertificateProviderResultOutput) ToLookupCertificateProviderResultOutputWithContext(ctx context.Context) LookupCertificateProviderResultOutput { + return o +} + +func (o LookupCertificateProviderResultOutput) ToOutput(ctx context.Context) pulumix.Output[LookupCertificateProviderResult] { + return pulumix.Output[LookupCertificateProviderResult]{ + OutputState: o.OutputState, + } +} + +func (o LookupCertificateProviderResultOutput) AccountDefaultForOperations() CertificateProviderOperationArrayOutput { + return o.ApplyT(func(v LookupCertificateProviderResult) []CertificateProviderOperation { + return v.AccountDefaultForOperations + }).(CertificateProviderOperationArrayOutput) +} + +func (o LookupCertificateProviderResultOutput) Arn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupCertificateProviderResult) *string { return v.Arn }).(pulumi.StringPtrOutput) +} + +func (o LookupCertificateProviderResultOutput) LambdaFunctionArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupCertificateProviderResult) *string { return v.LambdaFunctionArn }).(pulumi.StringPtrOutput) +} + +// An array of key-value pairs to apply to this resource. +func (o LookupCertificateProviderResultOutput) Tags() CertificateProviderTagArrayOutput { + return o.ApplyT(func(v LookupCertificateProviderResult) []CertificateProviderTag { return v.Tags }).(CertificateProviderTagArrayOutput) +} + +func init() { + pulumi.RegisterOutputType(LookupCertificateProviderResultOutput{}) +} diff --git a/sdk/go/aws/iot/init.go b/sdk/go/aws/iot/init.go index 79e834722f..df2a6ff627 100644 --- a/sdk/go/aws/iot/init.go +++ b/sdk/go/aws/iot/init.go @@ -31,6 +31,8 @@ func (m *module) Construct(ctx *pulumi.Context, name, typ, urn string) (r pulumi r = &CaCertificate{} case "aws-native:iot:Certificate": r = &Certificate{} + case "aws-native:iot:CertificateProvider": + r = &CertificateProvider{} case "aws-native:iot:CustomMetric": r = &CustomMetric{} case "aws-native:iot:Dimension": diff --git a/sdk/go/aws/iot/pulumiEnums.go b/sdk/go/aws/iot/pulumiEnums.go index bebb58a76f..197c76c780 100644 --- a/sdk/go/aws/iot/pulumiEnums.go +++ b/sdk/go/aws/iot/pulumiEnums.go @@ -921,6 +921,244 @@ func (in *certificateModePtr) ToOutput(ctx context.Context) pulumix.Output[*Cert } } +type CertificateProviderOperation string + +const ( + CertificateProviderOperationCreateCertificateFromCsr = CertificateProviderOperation("CreateCertificateFromCsr") +) + +func (CertificateProviderOperation) ElementType() reflect.Type { + return reflect.TypeOf((*CertificateProviderOperation)(nil)).Elem() +} + +func (e CertificateProviderOperation) ToCertificateProviderOperationOutput() CertificateProviderOperationOutput { + return pulumi.ToOutput(e).(CertificateProviderOperationOutput) +} + +func (e CertificateProviderOperation) ToCertificateProviderOperationOutputWithContext(ctx context.Context) CertificateProviderOperationOutput { + return pulumi.ToOutputWithContext(ctx, e).(CertificateProviderOperationOutput) +} + +func (e CertificateProviderOperation) ToCertificateProviderOperationPtrOutput() CertificateProviderOperationPtrOutput { + return e.ToCertificateProviderOperationPtrOutputWithContext(context.Background()) +} + +func (e CertificateProviderOperation) ToCertificateProviderOperationPtrOutputWithContext(ctx context.Context) CertificateProviderOperationPtrOutput { + return CertificateProviderOperation(e).ToCertificateProviderOperationOutputWithContext(ctx).ToCertificateProviderOperationPtrOutputWithContext(ctx) +} + +func (e CertificateProviderOperation) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CertificateProviderOperation) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CertificateProviderOperation) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e CertificateProviderOperation) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type CertificateProviderOperationOutput struct{ *pulumi.OutputState } + +func (CertificateProviderOperationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CertificateProviderOperation)(nil)).Elem() +} + +func (o CertificateProviderOperationOutput) ToCertificateProviderOperationOutput() CertificateProviderOperationOutput { + return o +} + +func (o CertificateProviderOperationOutput) ToCertificateProviderOperationOutputWithContext(ctx context.Context) CertificateProviderOperationOutput { + return o +} + +func (o CertificateProviderOperationOutput) ToCertificateProviderOperationPtrOutput() CertificateProviderOperationPtrOutput { + return o.ToCertificateProviderOperationPtrOutputWithContext(context.Background()) +} + +func (o CertificateProviderOperationOutput) ToCertificateProviderOperationPtrOutputWithContext(ctx context.Context) CertificateProviderOperationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CertificateProviderOperation) *CertificateProviderOperation { + return &v + }).(CertificateProviderOperationPtrOutput) +} + +func (o CertificateProviderOperationOutput) ToOutput(ctx context.Context) pulumix.Output[CertificateProviderOperation] { + return pulumix.Output[CertificateProviderOperation]{ + OutputState: o.OutputState, + } +} + +func (o CertificateProviderOperationOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o CertificateProviderOperationOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CertificateProviderOperation) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o CertificateProviderOperationOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CertificateProviderOperationOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CertificateProviderOperation) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type CertificateProviderOperationPtrOutput struct{ *pulumi.OutputState } + +func (CertificateProviderOperationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CertificateProviderOperation)(nil)).Elem() +} + +func (o CertificateProviderOperationPtrOutput) ToCertificateProviderOperationPtrOutput() CertificateProviderOperationPtrOutput { + return o +} + +func (o CertificateProviderOperationPtrOutput) ToCertificateProviderOperationPtrOutputWithContext(ctx context.Context) CertificateProviderOperationPtrOutput { + return o +} + +func (o CertificateProviderOperationPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*CertificateProviderOperation] { + return pulumix.Output[*CertificateProviderOperation]{ + OutputState: o.OutputState, + } +} + +func (o CertificateProviderOperationPtrOutput) Elem() CertificateProviderOperationOutput { + return o.ApplyT(func(v *CertificateProviderOperation) CertificateProviderOperation { + if v != nil { + return *v + } + var ret CertificateProviderOperation + return ret + }).(CertificateProviderOperationOutput) +} + +func (o CertificateProviderOperationPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CertificateProviderOperationPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *CertificateProviderOperation) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// CertificateProviderOperationInput is an input type that accepts CertificateProviderOperationArgs and CertificateProviderOperationOutput values. +// You can construct a concrete instance of `CertificateProviderOperationInput` via: +// +// CertificateProviderOperationArgs{...} +type CertificateProviderOperationInput interface { + pulumi.Input + + ToCertificateProviderOperationOutput() CertificateProviderOperationOutput + ToCertificateProviderOperationOutputWithContext(context.Context) CertificateProviderOperationOutput +} + +var certificateProviderOperationPtrType = reflect.TypeOf((**CertificateProviderOperation)(nil)).Elem() + +type CertificateProviderOperationPtrInput interface { + pulumi.Input + + ToCertificateProviderOperationPtrOutput() CertificateProviderOperationPtrOutput + ToCertificateProviderOperationPtrOutputWithContext(context.Context) CertificateProviderOperationPtrOutput +} + +type certificateProviderOperationPtr string + +func CertificateProviderOperationPtr(v string) CertificateProviderOperationPtrInput { + return (*certificateProviderOperationPtr)(&v) +} + +func (*certificateProviderOperationPtr) ElementType() reflect.Type { + return certificateProviderOperationPtrType +} + +func (in *certificateProviderOperationPtr) ToCertificateProviderOperationPtrOutput() CertificateProviderOperationPtrOutput { + return pulumi.ToOutput(in).(CertificateProviderOperationPtrOutput) +} + +func (in *certificateProviderOperationPtr) ToCertificateProviderOperationPtrOutputWithContext(ctx context.Context) CertificateProviderOperationPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(CertificateProviderOperationPtrOutput) +} + +func (in *certificateProviderOperationPtr) ToOutput(ctx context.Context) pulumix.Output[*CertificateProviderOperation] { + return pulumix.Output[*CertificateProviderOperation]{ + OutputState: in.ToCertificateProviderOperationPtrOutputWithContext(ctx).OutputState, + } +} + +// CertificateProviderOperationArrayInput is an input type that accepts CertificateProviderOperationArray and CertificateProviderOperationArrayOutput values. +// You can construct a concrete instance of `CertificateProviderOperationArrayInput` via: +// +// CertificateProviderOperationArray{ CertificateProviderOperationArgs{...} } +type CertificateProviderOperationArrayInput interface { + pulumi.Input + + ToCertificateProviderOperationArrayOutput() CertificateProviderOperationArrayOutput + ToCertificateProviderOperationArrayOutputWithContext(context.Context) CertificateProviderOperationArrayOutput +} + +type CertificateProviderOperationArray []CertificateProviderOperation + +func (CertificateProviderOperationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]CertificateProviderOperation)(nil)).Elem() +} + +func (i CertificateProviderOperationArray) ToCertificateProviderOperationArrayOutput() CertificateProviderOperationArrayOutput { + return i.ToCertificateProviderOperationArrayOutputWithContext(context.Background()) +} + +func (i CertificateProviderOperationArray) ToCertificateProviderOperationArrayOutputWithContext(ctx context.Context) CertificateProviderOperationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(CertificateProviderOperationArrayOutput) +} + +func (i CertificateProviderOperationArray) ToOutput(ctx context.Context) pulumix.Output[[]CertificateProviderOperation] { + return pulumix.Output[[]CertificateProviderOperation]{ + OutputState: i.ToCertificateProviderOperationArrayOutputWithContext(ctx).OutputState, + } +} + +type CertificateProviderOperationArrayOutput struct{ *pulumi.OutputState } + +func (CertificateProviderOperationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]CertificateProviderOperation)(nil)).Elem() +} + +func (o CertificateProviderOperationArrayOutput) ToCertificateProviderOperationArrayOutput() CertificateProviderOperationArrayOutput { + return o +} + +func (o CertificateProviderOperationArrayOutput) ToCertificateProviderOperationArrayOutputWithContext(ctx context.Context) CertificateProviderOperationArrayOutput { + return o +} + +func (o CertificateProviderOperationArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]CertificateProviderOperation] { + return pulumix.Output[[]CertificateProviderOperation]{ + OutputState: o.OutputState, + } +} + +func (o CertificateProviderOperationArrayOutput) Index(i pulumi.IntInput) CertificateProviderOperationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) CertificateProviderOperation { + return vs[0].([]CertificateProviderOperation)[vs[1].(int)] + }).(CertificateProviderOperationOutput) +} + type CertificateStatus string const ( @@ -5673,6 +5911,9 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*CaCertificateStatusPtrInput)(nil)).Elem(), CaCertificateStatus("ACTIVE")) pulumi.RegisterInputType(reflect.TypeOf((*CertificateModeInput)(nil)).Elem(), CertificateMode("DEFAULT")) pulumi.RegisterInputType(reflect.TypeOf((*CertificateModePtrInput)(nil)).Elem(), CertificateMode("DEFAULT")) + pulumi.RegisterInputType(reflect.TypeOf((*CertificateProviderOperationInput)(nil)).Elem(), CertificateProviderOperation("CreateCertificateFromCsr")) + pulumi.RegisterInputType(reflect.TypeOf((*CertificateProviderOperationPtrInput)(nil)).Elem(), CertificateProviderOperation("CreateCertificateFromCsr")) + pulumi.RegisterInputType(reflect.TypeOf((*CertificateProviderOperationArrayInput)(nil)).Elem(), CertificateProviderOperationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*CertificateStatusInput)(nil)).Elem(), CertificateStatus("ACTIVE")) pulumi.RegisterInputType(reflect.TypeOf((*CertificateStatusPtrInput)(nil)).Elem(), CertificateStatus("ACTIVE")) pulumi.RegisterInputType(reflect.TypeOf((*CustomMetricMetricTypeInput)(nil)).Elem(), CustomMetricMetricType("string-list")) @@ -5731,6 +5972,9 @@ func init() { pulumi.RegisterOutputType(CaCertificateStatusPtrOutput{}) pulumi.RegisterOutputType(CertificateModeOutput{}) pulumi.RegisterOutputType(CertificateModePtrOutput{}) + pulumi.RegisterOutputType(CertificateProviderOperationOutput{}) + pulumi.RegisterOutputType(CertificateProviderOperationPtrOutput{}) + pulumi.RegisterOutputType(CertificateProviderOperationArrayOutput{}) pulumi.RegisterOutputType(CertificateStatusOutput{}) pulumi.RegisterOutputType(CertificateStatusPtrOutput{}) pulumi.RegisterOutputType(CustomMetricMetricTypeOutput{}) diff --git a/sdk/go/aws/iot/pulumiTypes.go b/sdk/go/aws/iot/pulumiTypes.go index f948b36459..7fc974c8bc 100644 --- a/sdk/go/aws/iot/pulumiTypes.go +++ b/sdk/go/aws/iot/pulumiTypes.go @@ -1793,6 +1793,139 @@ func (o CaCertificateTagArrayOutput) Index(i pulumi.IntInput) CaCertificateTagOu }).(CaCertificateTagOutput) } +// A key-value pair to associate with a resource. +type CertificateProviderTag struct { + // The key name of the tag. You can specify a value that is 1 to 127 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 1 to 255 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"` +} + +// CertificateProviderTagInput is an input type that accepts CertificateProviderTagArgs and CertificateProviderTagOutput values. +// You can construct a concrete instance of `CertificateProviderTagInput` via: +// +// CertificateProviderTagArgs{...} +type CertificateProviderTagInput interface { + pulumi.Input + + ToCertificateProviderTagOutput() CertificateProviderTagOutput + ToCertificateProviderTagOutputWithContext(context.Context) CertificateProviderTagOutput +} + +// A key-value pair to associate with a resource. +type CertificateProviderTagArgs struct { + // The key name of the tag. You can specify a value that is 1 to 127 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 1 to 255 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 (CertificateProviderTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*CertificateProviderTag)(nil)).Elem() +} + +func (i CertificateProviderTagArgs) ToCertificateProviderTagOutput() CertificateProviderTagOutput { + return i.ToCertificateProviderTagOutputWithContext(context.Background()) +} + +func (i CertificateProviderTagArgs) ToCertificateProviderTagOutputWithContext(ctx context.Context) CertificateProviderTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(CertificateProviderTagOutput) +} + +func (i CertificateProviderTagArgs) ToOutput(ctx context.Context) pulumix.Output[CertificateProviderTag] { + return pulumix.Output[CertificateProviderTag]{ + OutputState: i.ToCertificateProviderTagOutputWithContext(ctx).OutputState, + } +} + +// CertificateProviderTagArrayInput is an input type that accepts CertificateProviderTagArray and CertificateProviderTagArrayOutput values. +// You can construct a concrete instance of `CertificateProviderTagArrayInput` via: +// +// CertificateProviderTagArray{ CertificateProviderTagArgs{...} } +type CertificateProviderTagArrayInput interface { + pulumi.Input + + ToCertificateProviderTagArrayOutput() CertificateProviderTagArrayOutput + ToCertificateProviderTagArrayOutputWithContext(context.Context) CertificateProviderTagArrayOutput +} + +type CertificateProviderTagArray []CertificateProviderTagInput + +func (CertificateProviderTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]CertificateProviderTag)(nil)).Elem() +} + +func (i CertificateProviderTagArray) ToCertificateProviderTagArrayOutput() CertificateProviderTagArrayOutput { + return i.ToCertificateProviderTagArrayOutputWithContext(context.Background()) +} + +func (i CertificateProviderTagArray) ToCertificateProviderTagArrayOutputWithContext(ctx context.Context) CertificateProviderTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(CertificateProviderTagArrayOutput) +} + +func (i CertificateProviderTagArray) ToOutput(ctx context.Context) pulumix.Output[[]CertificateProviderTag] { + return pulumix.Output[[]CertificateProviderTag]{ + OutputState: i.ToCertificateProviderTagArrayOutputWithContext(ctx).OutputState, + } +} + +// A key-value pair to associate with a resource. +type CertificateProviderTagOutput struct{ *pulumi.OutputState } + +func (CertificateProviderTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CertificateProviderTag)(nil)).Elem() +} + +func (o CertificateProviderTagOutput) ToCertificateProviderTagOutput() CertificateProviderTagOutput { + return o +} + +func (o CertificateProviderTagOutput) ToCertificateProviderTagOutputWithContext(ctx context.Context) CertificateProviderTagOutput { + return o +} + +func (o CertificateProviderTagOutput) ToOutput(ctx context.Context) pulumix.Output[CertificateProviderTag] { + return pulumix.Output[CertificateProviderTag]{ + OutputState: o.OutputState, + } +} + +// The key name of the tag. You can specify a value that is 1 to 127 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 CertificateProviderTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v CertificateProviderTag) string { return v.Key }).(pulumi.StringOutput) +} + +// The value for the tag. You can specify a value that is 1 to 255 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 CertificateProviderTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v CertificateProviderTag) string { return v.Value }).(pulumi.StringOutput) +} + +type CertificateProviderTagArrayOutput struct{ *pulumi.OutputState } + +func (CertificateProviderTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]CertificateProviderTag)(nil)).Elem() +} + +func (o CertificateProviderTagArrayOutput) ToCertificateProviderTagArrayOutput() CertificateProviderTagArrayOutput { + return o +} + +func (o CertificateProviderTagArrayOutput) ToCertificateProviderTagArrayOutputWithContext(ctx context.Context) CertificateProviderTagArrayOutput { + return o +} + +func (o CertificateProviderTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]CertificateProviderTag] { + return pulumix.Output[[]CertificateProviderTag]{ + OutputState: o.OutputState, + } +} + +func (o CertificateProviderTagArrayOutput) Index(i pulumi.IntInput) CertificateProviderTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) CertificateProviderTag { + return vs[0].([]CertificateProviderTag)[vs[1].(int)] + }).(CertificateProviderTagOutput) +} + // A key-value pair to associate with a resource. type CustomMetricTag struct { // The tag's key. @@ -17161,6 +17294,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*CaCertificateRegistrationConfigPtrInput)(nil)).Elem(), CaCertificateRegistrationConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CaCertificateTagInput)(nil)).Elem(), CaCertificateTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CaCertificateTagArrayInput)(nil)).Elem(), CaCertificateTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*CertificateProviderTagInput)(nil)).Elem(), CertificateProviderTagArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*CertificateProviderTagArrayInput)(nil)).Elem(), CertificateProviderTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*CustomMetricTagInput)(nil)).Elem(), CustomMetricTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*CustomMetricTagArrayInput)(nil)).Elem(), CustomMetricTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DimensionTagInput)(nil)).Elem(), DimensionTagArgs{}) @@ -17356,6 +17491,8 @@ func init() { pulumi.RegisterOutputType(CaCertificateRegistrationConfigPtrOutput{}) pulumi.RegisterOutputType(CaCertificateTagOutput{}) pulumi.RegisterOutputType(CaCertificateTagArrayOutput{}) + pulumi.RegisterOutputType(CertificateProviderTagOutput{}) + pulumi.RegisterOutputType(CertificateProviderTagArrayOutput{}) pulumi.RegisterOutputType(CustomMetricTagOutput{}) pulumi.RegisterOutputType(CustomMetricTagArrayOutput{}) pulumi.RegisterOutputType(DimensionTagOutput{}) diff --git a/sdk/go/aws/kinesisfirehose/pulumiEnums.go b/sdk/go/aws/kinesisfirehose/pulumiEnums.go index ef621e8e0a..2a107743fc 100644 --- a/sdk/go/aws/kinesisfirehose/pulumiEnums.go +++ b/sdk/go/aws/kinesisfirehose/pulumiEnums.go @@ -2207,6 +2207,7 @@ type DeliveryStreamProcessorType string const ( DeliveryStreamProcessorTypeRecordDeAggregation = DeliveryStreamProcessorType("RecordDeAggregation") + DeliveryStreamProcessorTypeDecompression = DeliveryStreamProcessorType("Decompression") DeliveryStreamProcessorTypeLambda = DeliveryStreamProcessorType("Lambda") DeliveryStreamProcessorTypeMetadataExtraction = DeliveryStreamProcessorType("MetadataExtraction") DeliveryStreamProcessorTypeAppendDelimiterToRecord = DeliveryStreamProcessorType("AppendDelimiterToRecord") diff --git a/sdk/go/aws/lambda/eventInvokeConfig.go b/sdk/go/aws/lambda/eventInvokeConfig.go index 6cf420ffb6..20b45de87d 100644 --- a/sdk/go/aws/lambda/eventInvokeConfig.go +++ b/sdk/go/aws/lambda/eventInvokeConfig.go @@ -13,15 +13,19 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::Lambda::EventInvokeConfig +// The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. type EventInvokeConfig struct { pulumi.CustomResourceState - DestinationConfig EventInvokeConfigDestinationConfigPtrOutput `pulumi:"destinationConfig"` - FunctionName pulumi.StringOutput `pulumi:"functionName"` - MaximumEventAgeInSeconds pulumi.IntPtrOutput `pulumi:"maximumEventAgeInSeconds"` - MaximumRetryAttempts pulumi.IntPtrOutput `pulumi:"maximumRetryAttempts"` - Qualifier pulumi.StringOutput `pulumi:"qualifier"` + DestinationConfig EventInvokeConfigDestinationConfigPtrOutput `pulumi:"destinationConfig"` + // The name of the Lambda function. + FunctionName pulumi.StringOutput `pulumi:"functionName"` + // The maximum age of a request that Lambda sends to a function for processing. + MaximumEventAgeInSeconds pulumi.IntPtrOutput `pulumi:"maximumEventAgeInSeconds"` + // The maximum number of times to retry when the function returns an error. + MaximumRetryAttempts pulumi.IntPtrOutput `pulumi:"maximumRetryAttempts"` + // The identifier of a version or alias. + Qualifier pulumi.StringOutput `pulumi:"qualifier"` } // NewEventInvokeConfig registers a new resource with the given unique name, arguments, and options. @@ -75,20 +79,28 @@ func (EventInvokeConfigState) ElementType() reflect.Type { } type eventInvokeConfigArgs struct { - DestinationConfig *EventInvokeConfigDestinationConfig `pulumi:"destinationConfig"` - FunctionName string `pulumi:"functionName"` - MaximumEventAgeInSeconds *int `pulumi:"maximumEventAgeInSeconds"` - MaximumRetryAttempts *int `pulumi:"maximumRetryAttempts"` - Qualifier string `pulumi:"qualifier"` + DestinationConfig *EventInvokeConfigDestinationConfig `pulumi:"destinationConfig"` + // The name of the Lambda function. + FunctionName string `pulumi:"functionName"` + // The maximum age of a request that Lambda sends to a function for processing. + MaximumEventAgeInSeconds *int `pulumi:"maximumEventAgeInSeconds"` + // The maximum number of times to retry when the function returns an error. + MaximumRetryAttempts *int `pulumi:"maximumRetryAttempts"` + // The identifier of a version or alias. + Qualifier string `pulumi:"qualifier"` } // The set of arguments for constructing a EventInvokeConfig resource. type EventInvokeConfigArgs struct { - DestinationConfig EventInvokeConfigDestinationConfigPtrInput - FunctionName pulumi.StringInput + DestinationConfig EventInvokeConfigDestinationConfigPtrInput + // The name of the Lambda function. + FunctionName pulumi.StringInput + // The maximum age of a request that Lambda sends to a function for processing. MaximumEventAgeInSeconds pulumi.IntPtrInput - MaximumRetryAttempts pulumi.IntPtrInput - Qualifier pulumi.StringInput + // The maximum number of times to retry when the function returns an error. + MaximumRetryAttempts pulumi.IntPtrInput + // The identifier of a version or alias. + Qualifier pulumi.StringInput } func (EventInvokeConfigArgs) ElementType() reflect.Type { @@ -144,18 +156,22 @@ func (o EventInvokeConfigOutput) DestinationConfig() EventInvokeConfigDestinatio return o.ApplyT(func(v *EventInvokeConfig) EventInvokeConfigDestinationConfigPtrOutput { return v.DestinationConfig }).(EventInvokeConfigDestinationConfigPtrOutput) } +// The name of the Lambda function. func (o EventInvokeConfigOutput) FunctionName() pulumi.StringOutput { return o.ApplyT(func(v *EventInvokeConfig) pulumi.StringOutput { return v.FunctionName }).(pulumi.StringOutput) } +// The maximum age of a request that Lambda sends to a function for processing. func (o EventInvokeConfigOutput) MaximumEventAgeInSeconds() pulumi.IntPtrOutput { return o.ApplyT(func(v *EventInvokeConfig) pulumi.IntPtrOutput { return v.MaximumEventAgeInSeconds }).(pulumi.IntPtrOutput) } +// The maximum number of times to retry when the function returns an error. func (o EventInvokeConfigOutput) MaximumRetryAttempts() pulumi.IntPtrOutput { return o.ApplyT(func(v *EventInvokeConfig) pulumi.IntPtrOutput { return v.MaximumRetryAttempts }).(pulumi.IntPtrOutput) } +// The identifier of a version or alias. func (o EventInvokeConfigOutput) Qualifier() pulumi.StringOutput { return o.ApplyT(func(v *EventInvokeConfig) pulumi.StringOutput { return v.Qualifier }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/lambda/function.go b/sdk/go/aws/lambda/function.go index d8c8d243f1..fb8312c944 100644 --- a/sdk/go/aws/lambda/function.go +++ b/sdk/go/aws/lambda/function.go @@ -50,8 +50,6 @@ type Function struct { MemorySize pulumi.IntPtrOutput `pulumi:"memorySize"` // PackageType. PackageType FunctionPackageTypePtrOutput `pulumi:"packageType"` - // The resource policy of your function - Policy pulumi.AnyOutput `pulumi:"policy"` // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions pulumi.IntPtrOutput `pulumi:"reservedConcurrentExecutions"` // The Amazon Resource Name (ARN) of the function's execution role. @@ -155,8 +153,6 @@ type functionArgs struct { MemorySize *int `pulumi:"memorySize"` // PackageType. PackageType *FunctionPackageType `pulumi:"packageType"` - // The resource policy of your function - Policy interface{} `pulumi:"policy"` // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions *int `pulumi:"reservedConcurrentExecutions"` // The Amazon Resource Name (ARN) of the function's execution role. @@ -210,8 +206,6 @@ type FunctionArgs struct { MemorySize pulumi.IntPtrInput // PackageType. PackageType FunctionPackageTypePtrInput - // The resource policy of your function - Policy pulumi.Input // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions pulumi.IntPtrInput // The Amazon Resource Name (ARN) of the function's execution role. @@ -365,11 +359,6 @@ func (o FunctionOutput) PackageType() FunctionPackageTypePtrOutput { return o.ApplyT(func(v *Function) FunctionPackageTypePtrOutput { return v.PackageType }).(FunctionPackageTypePtrOutput) } -// The resource policy of your function -func (o FunctionOutput) Policy() pulumi.AnyOutput { - return o.ApplyT(func(v *Function) pulumi.AnyOutput { return v.Policy }).(pulumi.AnyOutput) -} - // The number of simultaneous executions to reserve for the function. func (o FunctionOutput) ReservedConcurrentExecutions() pulumi.IntPtrOutput { return o.ApplyT(func(v *Function) pulumi.IntPtrOutput { return v.ReservedConcurrentExecutions }).(pulumi.IntPtrOutput) diff --git a/sdk/go/aws/lambda/getEventInvokeConfig.go b/sdk/go/aws/lambda/getEventInvokeConfig.go index 06b459581b..c58615ee79 100644 --- a/sdk/go/aws/lambda/getEventInvokeConfig.go +++ b/sdk/go/aws/lambda/getEventInvokeConfig.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::Lambda::EventInvokeConfig +// The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. func LookupEventInvokeConfig(ctx *pulumi.Context, args *LookupEventInvokeConfigArgs, opts ...pulumi.InvokeOption) (*LookupEventInvokeConfigResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupEventInvokeConfigResult @@ -24,14 +24,18 @@ func LookupEventInvokeConfig(ctx *pulumi.Context, args *LookupEventInvokeConfigA } type LookupEventInvokeConfigArgs struct { - Id string `pulumi:"id"` + // The name of the Lambda function. + FunctionName string `pulumi:"functionName"` + // The identifier of a version or alias. + Qualifier string `pulumi:"qualifier"` } type LookupEventInvokeConfigResult struct { - DestinationConfig *EventInvokeConfigDestinationConfig `pulumi:"destinationConfig"` - Id *string `pulumi:"id"` - MaximumEventAgeInSeconds *int `pulumi:"maximumEventAgeInSeconds"` - MaximumRetryAttempts *int `pulumi:"maximumRetryAttempts"` + DestinationConfig *EventInvokeConfigDestinationConfig `pulumi:"destinationConfig"` + // The maximum age of a request that Lambda sends to a function for processing. + MaximumEventAgeInSeconds *int `pulumi:"maximumEventAgeInSeconds"` + // The maximum number of times to retry when the function returns an error. + MaximumRetryAttempts *int `pulumi:"maximumRetryAttempts"` } func LookupEventInvokeConfigOutput(ctx *pulumi.Context, args LookupEventInvokeConfigOutputArgs, opts ...pulumi.InvokeOption) LookupEventInvokeConfigResultOutput { @@ -48,7 +52,10 @@ func LookupEventInvokeConfigOutput(ctx *pulumi.Context, args LookupEventInvokeCo } type LookupEventInvokeConfigOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + // The name of the Lambda function. + FunctionName pulumi.StringInput `pulumi:"functionName"` + // The identifier of a version or alias. + Qualifier pulumi.StringInput `pulumi:"qualifier"` } func (LookupEventInvokeConfigOutputArgs) ElementType() reflect.Type { @@ -79,14 +86,12 @@ func (o LookupEventInvokeConfigResultOutput) DestinationConfig() EventInvokeConf return o.ApplyT(func(v LookupEventInvokeConfigResult) *EventInvokeConfigDestinationConfig { return v.DestinationConfig }).(EventInvokeConfigDestinationConfigPtrOutput) } -func (o LookupEventInvokeConfigResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupEventInvokeConfigResult) *string { return v.Id }).(pulumi.StringPtrOutput) -} - +// The maximum age of a request that Lambda sends to a function for processing. func (o LookupEventInvokeConfigResultOutput) MaximumEventAgeInSeconds() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupEventInvokeConfigResult) *int { return v.MaximumEventAgeInSeconds }).(pulumi.IntPtrOutput) } +// The maximum number of times to retry when the function returns an error. func (o LookupEventInvokeConfigResultOutput) MaximumRetryAttempts() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupEventInvokeConfigResult) *int { return v.MaximumRetryAttempts }).(pulumi.IntPtrOutput) } diff --git a/sdk/go/aws/lambda/pulumiTypes.go b/sdk/go/aws/lambda/pulumiTypes.go index c693b76262..33eca3970f 100644 --- a/sdk/go/aws/lambda/pulumiTypes.go +++ b/sdk/go/aws/lambda/pulumiTypes.go @@ -725,6 +725,7 @@ func (o CodeSigningConfigCodeSigningPoliciesPtrOutput) UntrustedArtifactOnDeploy }).(CodeSigningConfigCodeSigningPoliciesUntrustedArtifactOnDeploymentPtrOutput) } +// A destination for events after they have been sent to a function for processing. type EventInvokeConfigDestinationConfig struct { OnFailure *EventInvokeConfigOnFailure `pulumi:"onFailure"` OnSuccess *EventInvokeConfigOnSuccess `pulumi:"onSuccess"` @@ -741,6 +742,7 @@ type EventInvokeConfigDestinationConfigInput interface { ToEventInvokeConfigDestinationConfigOutputWithContext(context.Context) EventInvokeConfigDestinationConfigOutput } +// A destination for events after they have been sent to a function for processing. type EventInvokeConfigDestinationConfigArgs struct { OnFailure EventInvokeConfigOnFailurePtrInput `pulumi:"onFailure"` OnSuccess EventInvokeConfigOnSuccessPtrInput `pulumi:"onSuccess"` @@ -811,6 +813,7 @@ func (i *eventInvokeConfigDestinationConfigPtrType) ToOutput(ctx context.Context } } +// A destination for events after they have been sent to a function for processing. type EventInvokeConfigDestinationConfigOutput struct{ *pulumi.OutputState } func (EventInvokeConfigDestinationConfigOutput) ElementType() reflect.Type { @@ -897,7 +900,9 @@ func (o EventInvokeConfigDestinationConfigPtrOutput) OnSuccess() EventInvokeConf }).(EventInvokeConfigOnSuccessPtrOutput) } +// The destination configuration for failed invocations. type EventInvokeConfigOnFailure struct { + // The Amazon Resource Name (ARN) of the destination resource. Destination string `pulumi:"destination"` } @@ -912,7 +917,9 @@ type EventInvokeConfigOnFailureInput interface { ToEventInvokeConfigOnFailureOutputWithContext(context.Context) EventInvokeConfigOnFailureOutput } +// The destination configuration for failed invocations. type EventInvokeConfigOnFailureArgs struct { + // The Amazon Resource Name (ARN) of the destination resource. Destination pulumi.StringInput `pulumi:"destination"` } @@ -981,6 +988,7 @@ func (i *eventInvokeConfigOnFailurePtrType) ToOutput(ctx context.Context) pulumi } } +// The destination configuration for failed invocations. type EventInvokeConfigOnFailureOutput struct{ *pulumi.OutputState } func (EventInvokeConfigOnFailureOutput) ElementType() reflect.Type { @@ -1011,6 +1019,7 @@ func (o EventInvokeConfigOnFailureOutput) ToOutput(ctx context.Context) pulumix. } } +// The Amazon Resource Name (ARN) of the destination resource. func (o EventInvokeConfigOnFailureOutput) Destination() pulumi.StringOutput { return o.ApplyT(func(v EventInvokeConfigOnFailure) string { return v.Destination }).(pulumi.StringOutput) } @@ -1045,6 +1054,7 @@ func (o EventInvokeConfigOnFailurePtrOutput) Elem() EventInvokeConfigOnFailureOu }).(EventInvokeConfigOnFailureOutput) } +// The Amazon Resource Name (ARN) of the destination resource. func (o EventInvokeConfigOnFailurePtrOutput) Destination() pulumi.StringPtrOutput { return o.ApplyT(func(v *EventInvokeConfigOnFailure) *string { if v == nil { @@ -1054,7 +1064,9 @@ func (o EventInvokeConfigOnFailurePtrOutput) Destination() pulumi.StringPtrOutpu }).(pulumi.StringPtrOutput) } +// The destination configuration for successful invocations. type EventInvokeConfigOnSuccess struct { + // The Amazon Resource Name (ARN) of the destination resource. Destination string `pulumi:"destination"` } @@ -1069,7 +1081,9 @@ type EventInvokeConfigOnSuccessInput interface { ToEventInvokeConfigOnSuccessOutputWithContext(context.Context) EventInvokeConfigOnSuccessOutput } +// The destination configuration for successful invocations. type EventInvokeConfigOnSuccessArgs struct { + // The Amazon Resource Name (ARN) of the destination resource. Destination pulumi.StringInput `pulumi:"destination"` } @@ -1138,6 +1152,7 @@ func (i *eventInvokeConfigOnSuccessPtrType) ToOutput(ctx context.Context) pulumi } } +// The destination configuration for successful invocations. type EventInvokeConfigOnSuccessOutput struct{ *pulumi.OutputState } func (EventInvokeConfigOnSuccessOutput) ElementType() reflect.Type { @@ -1168,6 +1183,7 @@ func (o EventInvokeConfigOnSuccessOutput) ToOutput(ctx context.Context) pulumix. } } +// The Amazon Resource Name (ARN) of the destination resource. func (o EventInvokeConfigOnSuccessOutput) Destination() pulumi.StringOutput { return o.ApplyT(func(v EventInvokeConfigOnSuccess) string { return v.Destination }).(pulumi.StringOutput) } @@ -1202,6 +1218,7 @@ func (o EventInvokeConfigOnSuccessPtrOutput) Elem() EventInvokeConfigOnSuccessOu }).(EventInvokeConfigOnSuccessOutput) } +// The Amazon Resource Name (ARN) of the destination resource. func (o EventInvokeConfigOnSuccessPtrOutput) Destination() pulumi.StringPtrOutput { return o.ApplyT(func(v *EventInvokeConfigOnSuccess) *string { if v == nil { diff --git a/sdk/go/aws/logs/delivery.go b/sdk/go/aws/logs/delivery.go index b98ef77140..4b313a135b 100644 --- a/sdk/go/aws/logs/delivery.go +++ b/sdk/go/aws/logs/delivery.go @@ -13,21 +13,25 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::Logs::Delivery. +// This structure contains information about one delivery in your account. +// +// A delivery is a connection between a logical delivery source and a logical delivery destination. +// +// For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). type Delivery struct { pulumi.CustomResourceState - // The value of the Arn property for this object. + // The Amazon Resource Name (ARN) that uniquely identifies this delivery. Arn pulumi.StringOutput `pulumi:"arn"` - // The value of the DeliveryDestinationArn property for this object. + // The ARN of the delivery destination that is associated with this delivery. DeliveryDestinationArn pulumi.StringOutput `pulumi:"deliveryDestinationArn"` - // The value of the DeliveryDestinationType property for this object. + // Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. DeliveryDestinationType pulumi.StringOutput `pulumi:"deliveryDestinationType"` - // The value of the Id property for this object. + // The unique ID that identifies this delivery in your account. DeliveryId pulumi.StringOutput `pulumi:"deliveryId"` - // The value of the DeliverySourceName property for this object. + // The name of the delivery source that is associated with this delivery. DeliverySourceName pulumi.StringOutput `pulumi:"deliverySourceName"` - // The value of the Tags property for this object. + // The tags that have been assigned to this delivery. Tags DeliveryTagArrayOutput `pulumi:"tags"` } @@ -82,21 +86,21 @@ func (DeliveryState) ElementType() reflect.Type { } type deliveryArgs struct { - // The value of the DeliveryDestinationArn property for this object. + // The ARN of the delivery destination that is associated with this delivery. DeliveryDestinationArn string `pulumi:"deliveryDestinationArn"` - // The value of the DeliverySourceName property for this object. + // The name of the delivery source that is associated with this delivery. DeliverySourceName string `pulumi:"deliverySourceName"` - // The value of the Tags property for this object. + // The tags that have been assigned to this delivery. Tags []DeliveryTag `pulumi:"tags"` } // The set of arguments for constructing a Delivery resource. type DeliveryArgs struct { - // The value of the DeliveryDestinationArn property for this object. + // The ARN of the delivery destination that is associated with this delivery. DeliveryDestinationArn pulumi.StringInput - // The value of the DeliverySourceName property for this object. + // The name of the delivery source that is associated with this delivery. DeliverySourceName pulumi.StringInput - // The value of the Tags property for this object. + // The tags that have been assigned to this delivery. Tags DeliveryTagArrayInput } @@ -149,32 +153,32 @@ func (o DeliveryOutput) ToOutput(ctx context.Context) pulumix.Output[*Delivery] } } -// The value of the Arn property for this object. +// The Amazon Resource Name (ARN) that uniquely identifies this delivery. func (o DeliveryOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *Delivery) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } -// The value of the DeliveryDestinationArn property for this object. +// The ARN of the delivery destination that is associated with this delivery. func (o DeliveryOutput) DeliveryDestinationArn() pulumi.StringOutput { return o.ApplyT(func(v *Delivery) pulumi.StringOutput { return v.DeliveryDestinationArn }).(pulumi.StringOutput) } -// The value of the DeliveryDestinationType property for this object. +// Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. func (o DeliveryOutput) DeliveryDestinationType() pulumi.StringOutput { return o.ApplyT(func(v *Delivery) pulumi.StringOutput { return v.DeliveryDestinationType }).(pulumi.StringOutput) } -// The value of the Id property for this object. +// The unique ID that identifies this delivery in your account. func (o DeliveryOutput) DeliveryId() pulumi.StringOutput { return o.ApplyT(func(v *Delivery) pulumi.StringOutput { return v.DeliveryId }).(pulumi.StringOutput) } -// The value of the DeliverySourceName property for this object. +// The name of the delivery source that is associated with this delivery. func (o DeliveryOutput) DeliverySourceName() pulumi.StringOutput { return o.ApplyT(func(v *Delivery) pulumi.StringOutput { return v.DeliverySourceName }).(pulumi.StringOutput) } -// The value of the Tags property for this object. +// The tags that have been assigned to this delivery. func (o DeliveryOutput) Tags() DeliveryTagArrayOutput { return o.ApplyT(func(v *Delivery) DeliveryTagArrayOutput { return v.Tags }).(DeliveryTagArrayOutput) } diff --git a/sdk/go/aws/logs/deliveryDestination.go b/sdk/go/aws/logs/deliveryDestination.go index 68d2ef37ca..69714a5f79 100644 --- a/sdk/go/aws/logs/deliveryDestination.go +++ b/sdk/go/aws/logs/deliveryDestination.go @@ -12,11 +12,13 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::Logs::DeliveryDestination +// This structure contains information about one delivery destination in your account. +// +// A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. type DeliveryDestination struct { pulumi.CustomResourceState - // The value of the Arn property for this object. + // The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. Arn pulumi.StringOutput `pulumi:"arn"` // IAM policy that grants permissions to CloudWatch Logs to deliver logs cross-account to a specified destination in this account. // @@ -24,13 +26,13 @@ type DeliveryDestination struct { // // Length Constraints: Maximum length of 51200 DeliveryDestinationPolicy pulumi.AnyOutput `pulumi:"deliveryDestinationPolicy"` - // The value of the DeliveryDestinationType property for this object. + // Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. DeliveryDestinationType pulumi.StringOutput `pulumi:"deliveryDestinationType"` - // The ARN of the Destination Resource. + // The ARN of the AWS resource that will receive the logs. DestinationResourceArn pulumi.StringPtrOutput `pulumi:"destinationResourceArn"` - // The unique name of the Delivery Destination. + // The name of this delivery destination. Name pulumi.StringOutput `pulumi:"name"` - // An array of key-value pairs to apply to this resource. + // The tags that have been assigned to this delivery destination. Tags DeliveryDestinationTagArrayOutput `pulumi:"tags"` } @@ -85,11 +87,11 @@ type deliveryDestinationArgs struct { // // Length Constraints: Maximum length of 51200 DeliveryDestinationPolicy interface{} `pulumi:"deliveryDestinationPolicy"` - // The ARN of the Destination Resource. + // The ARN of the AWS resource that will receive the logs. DestinationResourceArn *string `pulumi:"destinationResourceArn"` - // The unique name of the Delivery Destination. + // The name of this delivery destination. Name *string `pulumi:"name"` - // An array of key-value pairs to apply to this resource. + // The tags that have been assigned to this delivery destination. Tags []DeliveryDestinationTag `pulumi:"tags"` } @@ -101,11 +103,11 @@ type DeliveryDestinationArgs struct { // // Length Constraints: Maximum length of 51200 DeliveryDestinationPolicy pulumi.Input - // The ARN of the Destination Resource. + // The ARN of the AWS resource that will receive the logs. DestinationResourceArn pulumi.StringPtrInput - // The unique name of the Delivery Destination. + // The name of this delivery destination. Name pulumi.StringPtrInput - // An array of key-value pairs to apply to this resource. + // The tags that have been assigned to this delivery destination. Tags DeliveryDestinationTagArrayInput } @@ -158,7 +160,7 @@ func (o DeliveryDestinationOutput) ToOutput(ctx context.Context) pulumix.Output[ } } -// The value of the Arn property for this object. +// The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. func (o DeliveryDestinationOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *DeliveryDestination) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } @@ -172,22 +174,22 @@ func (o DeliveryDestinationOutput) DeliveryDestinationPolicy() pulumi.AnyOutput return o.ApplyT(func(v *DeliveryDestination) pulumi.AnyOutput { return v.DeliveryDestinationPolicy }).(pulumi.AnyOutput) } -// The value of the DeliveryDestinationType property for this object. +// Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. func (o DeliveryDestinationOutput) DeliveryDestinationType() pulumi.StringOutput { return o.ApplyT(func(v *DeliveryDestination) pulumi.StringOutput { return v.DeliveryDestinationType }).(pulumi.StringOutput) } -// The ARN of the Destination Resource. +// The ARN of the AWS resource that will receive the logs. func (o DeliveryDestinationOutput) DestinationResourceArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeliveryDestination) pulumi.StringPtrOutput { return v.DestinationResourceArn }).(pulumi.StringPtrOutput) } -// The unique name of the Delivery Destination. +// The name of this delivery destination. func (o DeliveryDestinationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *DeliveryDestination) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } -// An array of key-value pairs to apply to this resource. +// The tags that have been assigned to this delivery destination. func (o DeliveryDestinationOutput) Tags() DeliveryDestinationTagArrayOutput { return o.ApplyT(func(v *DeliveryDestination) DeliveryDestinationTagArrayOutput { return v.Tags }).(DeliveryDestinationTagArrayOutput) } diff --git a/sdk/go/aws/logs/deliverySource.go b/sdk/go/aws/logs/deliverySource.go index b60904b2da..8cd716825c 100644 --- a/sdk/go/aws/logs/deliverySource.go +++ b/sdk/go/aws/logs/deliverySource.go @@ -12,11 +12,13 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::Logs::DeliverySource. +// A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. +// +// Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). type DeliverySource struct { pulumi.CustomResourceState - // The ARN of the Aqueduct Source. + // The Amazon Resource Name (ARN) that uniquely identifies this delivery source. Arn pulumi.StringOutput `pulumi:"arn"` // The type of logs being delivered. Only mandatory when the resourceArn could match more than one. In such a case, the error message will contain all the possible options. LogType pulumi.StringPtrOutput `pulumi:"logType"` @@ -24,11 +26,11 @@ type DeliverySource struct { Name pulumi.StringOutput `pulumi:"name"` // The ARN of the resource that will be sending the logs. ResourceArn pulumi.StringPtrOutput `pulumi:"resourceArn"` - // List of ARN of the resource that will be sending the logs + // This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. ResourceArns pulumi.StringArrayOutput `pulumi:"resourceArns"` - // The service generating the log + // The AWS service that is sending logs. Service pulumi.StringOutput `pulumi:"service"` - // An array of key-value pairs to apply to this resource. + // The tags that have been assigned to this delivery source. Tags DeliverySourceTagArrayOutput `pulumi:"tags"` } @@ -82,7 +84,7 @@ type deliverySourceArgs struct { Name *string `pulumi:"name"` // The ARN of the resource that will be sending the logs. ResourceArn *string `pulumi:"resourceArn"` - // An array of key-value pairs to apply to this resource. + // The tags that have been assigned to this delivery source. Tags []DeliverySourceTag `pulumi:"tags"` } @@ -94,7 +96,7 @@ type DeliverySourceArgs struct { Name pulumi.StringPtrInput // The ARN of the resource that will be sending the logs. ResourceArn pulumi.StringPtrInput - // An array of key-value pairs to apply to this resource. + // The tags that have been assigned to this delivery source. Tags DeliverySourceTagArrayInput } @@ -147,7 +149,7 @@ func (o DeliverySourceOutput) ToOutput(ctx context.Context) pulumix.Output[*Deli } } -// The ARN of the Aqueduct Source. +// The Amazon Resource Name (ARN) that uniquely identifies this delivery source. func (o DeliverySourceOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *DeliverySource) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } @@ -167,17 +169,17 @@ func (o DeliverySourceOutput) ResourceArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeliverySource) pulumi.StringPtrOutput { return v.ResourceArn }).(pulumi.StringPtrOutput) } -// List of ARN of the resource that will be sending the logs +// This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. func (o DeliverySourceOutput) ResourceArns() pulumi.StringArrayOutput { return o.ApplyT(func(v *DeliverySource) pulumi.StringArrayOutput { return v.ResourceArns }).(pulumi.StringArrayOutput) } -// The service generating the log +// The AWS service that is sending logs. func (o DeliverySourceOutput) Service() pulumi.StringOutput { return o.ApplyT(func(v *DeliverySource) pulumi.StringOutput { return v.Service }).(pulumi.StringOutput) } -// An array of key-value pairs to apply to this resource. +// The tags that have been assigned to this delivery source. func (o DeliverySourceOutput) Tags() DeliverySourceTagArrayOutput { return o.ApplyT(func(v *DeliverySource) DeliverySourceTagArrayOutput { return v.Tags }).(DeliverySourceTagArrayOutput) } diff --git a/sdk/go/aws/logs/getDelivery.go b/sdk/go/aws/logs/getDelivery.go index eb870251ef..b6883df75e 100644 --- a/sdk/go/aws/logs/getDelivery.go +++ b/sdk/go/aws/logs/getDelivery.go @@ -12,7 +12,11 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::Logs::Delivery. +// This structure contains information about one delivery in your account. +// +// A delivery is a connection between a logical delivery source and a logical delivery destination. +// +// For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). func LookupDelivery(ctx *pulumi.Context, args *LookupDeliveryArgs, opts ...pulumi.InvokeOption) (*LookupDeliveryResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupDeliveryResult @@ -24,18 +28,18 @@ func LookupDelivery(ctx *pulumi.Context, args *LookupDeliveryArgs, opts ...pulum } type LookupDeliveryArgs struct { - // The value of the Id property for this object. + // The unique ID that identifies this delivery in your account. DeliveryId string `pulumi:"deliveryId"` } type LookupDeliveryResult struct { - // The value of the Arn property for this object. + // The Amazon Resource Name (ARN) that uniquely identifies this delivery. Arn *string `pulumi:"arn"` - // The value of the DeliveryDestinationType property for this object. + // Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. DeliveryDestinationType *string `pulumi:"deliveryDestinationType"` - // The value of the Id property for this object. + // The unique ID that identifies this delivery in your account. DeliveryId *string `pulumi:"deliveryId"` - // The value of the Tags property for this object. + // The tags that have been assigned to this delivery. Tags []DeliveryTag `pulumi:"tags"` } @@ -53,7 +57,7 @@ func LookupDeliveryOutput(ctx *pulumi.Context, args LookupDeliveryOutputArgs, op } type LookupDeliveryOutputArgs struct { - // The value of the Id property for this object. + // The unique ID that identifies this delivery in your account. DeliveryId pulumi.StringInput `pulumi:"deliveryId"` } @@ -81,22 +85,22 @@ func (o LookupDeliveryResultOutput) ToOutput(ctx context.Context) pulumix.Output } } -// The value of the Arn property for this object. +// The Amazon Resource Name (ARN) that uniquely identifies this delivery. func (o LookupDeliveryResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeliveryResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } -// The value of the DeliveryDestinationType property for this object. +// Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. func (o LookupDeliveryResultOutput) DeliveryDestinationType() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeliveryResult) *string { return v.DeliveryDestinationType }).(pulumi.StringPtrOutput) } -// The value of the Id property for this object. +// The unique ID that identifies this delivery in your account. func (o LookupDeliveryResultOutput) DeliveryId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeliveryResult) *string { return v.DeliveryId }).(pulumi.StringPtrOutput) } -// The value of the Tags property for this object. +// The tags that have been assigned to this delivery. func (o LookupDeliveryResultOutput) Tags() DeliveryTagArrayOutput { return o.ApplyT(func(v LookupDeliveryResult) []DeliveryTag { return v.Tags }).(DeliveryTagArrayOutput) } diff --git a/sdk/go/aws/logs/getDeliveryDestination.go b/sdk/go/aws/logs/getDeliveryDestination.go index f83b9063df..96f2535fb6 100644 --- a/sdk/go/aws/logs/getDeliveryDestination.go +++ b/sdk/go/aws/logs/getDeliveryDestination.go @@ -12,7 +12,9 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::Logs::DeliveryDestination +// This structure contains information about one delivery destination in your account. +// +// A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. func LookupDeliveryDestination(ctx *pulumi.Context, args *LookupDeliveryDestinationArgs, opts ...pulumi.InvokeOption) (*LookupDeliveryDestinationResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupDeliveryDestinationResult @@ -24,12 +26,12 @@ func LookupDeliveryDestination(ctx *pulumi.Context, args *LookupDeliveryDestinat } type LookupDeliveryDestinationArgs struct { - // The unique name of the Delivery Destination. + // The name of this delivery destination. Name string `pulumi:"name"` } type LookupDeliveryDestinationResult struct { - // The value of the Arn property for this object. + // The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. Arn *string `pulumi:"arn"` // IAM policy that grants permissions to CloudWatch Logs to deliver logs cross-account to a specified destination in this account. // @@ -37,9 +39,9 @@ type LookupDeliveryDestinationResult struct { // // Length Constraints: Maximum length of 51200 DeliveryDestinationPolicy interface{} `pulumi:"deliveryDestinationPolicy"` - // The value of the DeliveryDestinationType property for this object. + // Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. DeliveryDestinationType *string `pulumi:"deliveryDestinationType"` - // An array of key-value pairs to apply to this resource. + // The tags that have been assigned to this delivery destination. Tags []DeliveryDestinationTag `pulumi:"tags"` } @@ -57,7 +59,7 @@ func LookupDeliveryDestinationOutput(ctx *pulumi.Context, args LookupDeliveryDes } type LookupDeliveryDestinationOutputArgs struct { - // The unique name of the Delivery Destination. + // The name of this delivery destination. Name pulumi.StringInput `pulumi:"name"` } @@ -85,7 +87,7 @@ func (o LookupDeliveryDestinationResultOutput) ToOutput(ctx context.Context) pul } } -// The value of the Arn property for this object. +// The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. func (o LookupDeliveryDestinationResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeliveryDestinationResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } @@ -99,12 +101,12 @@ func (o LookupDeliveryDestinationResultOutput) DeliveryDestinationPolicy() pulum return o.ApplyT(func(v LookupDeliveryDestinationResult) interface{} { return v.DeliveryDestinationPolicy }).(pulumi.AnyOutput) } -// The value of the DeliveryDestinationType property for this object. +// Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. func (o LookupDeliveryDestinationResultOutput) DeliveryDestinationType() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeliveryDestinationResult) *string { return v.DeliveryDestinationType }).(pulumi.StringPtrOutput) } -// An array of key-value pairs to apply to this resource. +// The tags that have been assigned to this delivery destination. func (o LookupDeliveryDestinationResultOutput) Tags() DeliveryDestinationTagArrayOutput { return o.ApplyT(func(v LookupDeliveryDestinationResult) []DeliveryDestinationTag { return v.Tags }).(DeliveryDestinationTagArrayOutput) } diff --git a/sdk/go/aws/logs/getDeliverySource.go b/sdk/go/aws/logs/getDeliverySource.go index 06df4efdb5..1c6437ca82 100644 --- a/sdk/go/aws/logs/getDeliverySource.go +++ b/sdk/go/aws/logs/getDeliverySource.go @@ -12,7 +12,9 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::Logs::DeliverySource. +// A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. +// +// Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). func LookupDeliverySource(ctx *pulumi.Context, args *LookupDeliverySourceArgs, opts ...pulumi.InvokeOption) (*LookupDeliverySourceResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupDeliverySourceResult @@ -29,15 +31,15 @@ type LookupDeliverySourceArgs struct { } type LookupDeliverySourceResult struct { - // The ARN of the Aqueduct Source. + // The Amazon Resource Name (ARN) that uniquely identifies this delivery source. Arn *string `pulumi:"arn"` // The type of logs being delivered. Only mandatory when the resourceArn could match more than one. In such a case, the error message will contain all the possible options. LogType *string `pulumi:"logType"` - // List of ARN of the resource that will be sending the logs + // This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. ResourceArns []string `pulumi:"resourceArns"` - // The service generating the log + // The AWS service that is sending logs. Service *string `pulumi:"service"` - // An array of key-value pairs to apply to this resource. + // The tags that have been assigned to this delivery source. Tags []DeliverySourceTag `pulumi:"tags"` } @@ -83,7 +85,7 @@ func (o LookupDeliverySourceResultOutput) ToOutput(ctx context.Context) pulumix. } } -// The ARN of the Aqueduct Source. +// The Amazon Resource Name (ARN) that uniquely identifies this delivery source. func (o LookupDeliverySourceResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeliverySourceResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } @@ -93,17 +95,17 @@ func (o LookupDeliverySourceResultOutput) LogType() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeliverySourceResult) *string { return v.LogType }).(pulumi.StringPtrOutput) } -// List of ARN of the resource that will be sending the logs +// This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. func (o LookupDeliverySourceResultOutput) ResourceArns() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupDeliverySourceResult) []string { return v.ResourceArns }).(pulumi.StringArrayOutput) } -// The service generating the log +// The AWS service that is sending logs. func (o LookupDeliverySourceResultOutput) Service() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeliverySourceResult) *string { return v.Service }).(pulumi.StringPtrOutput) } -// An array of key-value pairs to apply to this resource. +// The tags that have been assigned to this delivery source. func (o LookupDeliverySourceResultOutput) Tags() DeliverySourceTagArrayOutput { return o.ApplyT(func(v LookupDeliverySourceResult) []DeliverySourceTag { return v.Tags }).(DeliverySourceTagArrayOutput) } diff --git a/sdk/go/aws/opensearchservice/domain.go b/sdk/go/aws/opensearchservice/domain.go index e823da7173..8887edea69 100644 --- a/sdk/go/aws/opensearchservice/domain.go +++ b/sdk/go/aws/opensearchservice/domain.go @@ -25,11 +25,13 @@ type Domain struct { DomainArn pulumi.StringOutput `pulumi:"domainArn"` DomainEndpoint pulumi.StringOutput `pulumi:"domainEndpoint"` DomainEndpointOptions DomainEndpointOptionsPtrOutput `pulumi:"domainEndpointOptions"` + DomainEndpointV2 pulumi.StringOutput `pulumi:"domainEndpointV2"` DomainEndpoints pulumi.AnyOutput `pulumi:"domainEndpoints"` DomainName pulumi.StringPtrOutput `pulumi:"domainName"` EbsOptions DomainEbsOptionsPtrOutput `pulumi:"ebsOptions"` EncryptionAtRestOptions DomainEncryptionAtRestOptionsPtrOutput `pulumi:"encryptionAtRestOptions"` EngineVersion pulumi.StringPtrOutput `pulumi:"engineVersion"` + IpAddressType pulumi.StringPtrOutput `pulumi:"ipAddressType"` LogPublishingOptions pulumi.AnyOutput `pulumi:"logPublishingOptions"` NodeToNodeEncryptionOptions DomainNodeToNodeEncryptionOptionsPtrOutput `pulumi:"nodeToNodeEncryptionOptions"` OffPeakWindowOptions DomainOffPeakWindowOptionsPtrOutput `pulumi:"offPeakWindowOptions"` @@ -95,6 +97,7 @@ type domainArgs struct { EbsOptions *DomainEbsOptions `pulumi:"ebsOptions"` EncryptionAtRestOptions *DomainEncryptionAtRestOptions `pulumi:"encryptionAtRestOptions"` EngineVersion *string `pulumi:"engineVersion"` + IpAddressType *string `pulumi:"ipAddressType"` LogPublishingOptions interface{} `pulumi:"logPublishingOptions"` NodeToNodeEncryptionOptions *DomainNodeToNodeEncryptionOptions `pulumi:"nodeToNodeEncryptionOptions"` OffPeakWindowOptions *DomainOffPeakWindowOptions `pulumi:"offPeakWindowOptions"` @@ -117,6 +120,7 @@ type DomainArgs struct { EbsOptions DomainEbsOptionsPtrInput EncryptionAtRestOptions DomainEncryptionAtRestOptionsPtrInput EngineVersion pulumi.StringPtrInput + IpAddressType pulumi.StringPtrInput LogPublishingOptions pulumi.Input NodeToNodeEncryptionOptions DomainNodeToNodeEncryptionOptionsPtrInput OffPeakWindowOptions DomainOffPeakWindowOptionsPtrInput @@ -212,6 +216,10 @@ func (o DomainOutput) DomainEndpointOptions() DomainEndpointOptionsPtrOutput { return o.ApplyT(func(v *Domain) DomainEndpointOptionsPtrOutput { return v.DomainEndpointOptions }).(DomainEndpointOptionsPtrOutput) } +func (o DomainOutput) DomainEndpointV2() pulumi.StringOutput { + return o.ApplyT(func(v *Domain) pulumi.StringOutput { return v.DomainEndpointV2 }).(pulumi.StringOutput) +} + func (o DomainOutput) DomainEndpoints() pulumi.AnyOutput { return o.ApplyT(func(v *Domain) pulumi.AnyOutput { return v.DomainEndpoints }).(pulumi.AnyOutput) } @@ -232,6 +240,10 @@ func (o DomainOutput) EngineVersion() pulumi.StringPtrOutput { return o.ApplyT(func(v *Domain) pulumi.StringPtrOutput { return v.EngineVersion }).(pulumi.StringPtrOutput) } +func (o DomainOutput) IpAddressType() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Domain) pulumi.StringPtrOutput { return v.IpAddressType }).(pulumi.StringPtrOutput) +} + func (o DomainOutput) LogPublishingOptions() pulumi.AnyOutput { return o.ApplyT(func(v *Domain) pulumi.AnyOutput { return v.LogPublishingOptions }).(pulumi.AnyOutput) } diff --git a/sdk/go/aws/opensearchservice/getDomain.go b/sdk/go/aws/opensearchservice/getDomain.go index 1e6e29b6bc..8fde0e9f0f 100644 --- a/sdk/go/aws/opensearchservice/getDomain.go +++ b/sdk/go/aws/opensearchservice/getDomain.go @@ -37,11 +37,13 @@ type LookupDomainResult struct { DomainArn *string `pulumi:"domainArn"` DomainEndpoint *string `pulumi:"domainEndpoint"` DomainEndpointOptions *DomainEndpointOptions `pulumi:"domainEndpointOptions"` + DomainEndpointV2 *string `pulumi:"domainEndpointV2"` DomainEndpoints interface{} `pulumi:"domainEndpoints"` EbsOptions *DomainEbsOptions `pulumi:"ebsOptions"` EncryptionAtRestOptions *DomainEncryptionAtRestOptions `pulumi:"encryptionAtRestOptions"` EngineVersion *string `pulumi:"engineVersion"` Id *string `pulumi:"id"` + IpAddressType *string `pulumi:"ipAddressType"` LogPublishingOptions interface{} `pulumi:"logPublishingOptions"` NodeToNodeEncryptionOptions *DomainNodeToNodeEncryptionOptions `pulumi:"nodeToNodeEncryptionOptions"` OffPeakWindowOptions *DomainOffPeakWindowOptions `pulumi:"offPeakWindowOptions"` @@ -130,6 +132,10 @@ func (o LookupDomainResultOutput) DomainEndpointOptions() DomainEndpointOptionsP return o.ApplyT(func(v LookupDomainResult) *DomainEndpointOptions { return v.DomainEndpointOptions }).(DomainEndpointOptionsPtrOutput) } +func (o LookupDomainResultOutput) DomainEndpointV2() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDomainResult) *string { return v.DomainEndpointV2 }).(pulumi.StringPtrOutput) +} + func (o LookupDomainResultOutput) DomainEndpoints() pulumi.AnyOutput { return o.ApplyT(func(v LookupDomainResult) interface{} { return v.DomainEndpoints }).(pulumi.AnyOutput) } @@ -150,6 +156,10 @@ func (o LookupDomainResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDomainResult) *string { return v.Id }).(pulumi.StringPtrOutput) } +func (o LookupDomainResultOutput) IpAddressType() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDomainResult) *string { return v.IpAddressType }).(pulumi.StringPtrOutput) +} + func (o LookupDomainResultOutput) LogPublishingOptions() pulumi.AnyOutput { return o.ApplyT(func(v LookupDomainResult) interface{} { return v.LogPublishingOptions }).(pulumi.AnyOutput) } diff --git a/sdk/go/aws/osis/getPipeline.go b/sdk/go/aws/osis/getPipeline.go index 71e05908f9..7d6f1542bf 100644 --- a/sdk/go/aws/osis/getPipeline.go +++ b/sdk/go/aws/osis/getPipeline.go @@ -29,6 +29,8 @@ type LookupPipelineArgs struct { } type LookupPipelineResult struct { + BufferOptions *PipelineBufferOptions `pulumi:"bufferOptions"` + EncryptionAtRestOptions *PipelineEncryptionAtRestOptions `pulumi:"encryptionAtRestOptions"` // A list of endpoints that can be used for ingesting data into a pipeline IngestEndpointUrls []string `pulumi:"ingestEndpointUrls"` LogPublishingOptions *PipelineLogPublishingOptions `pulumi:"logPublishingOptions"` @@ -88,6 +90,14 @@ func (o LookupPipelineResultOutput) ToOutput(ctx context.Context) pulumix.Output } } +func (o LookupPipelineResultOutput) BufferOptions() PipelineBufferOptionsPtrOutput { + return o.ApplyT(func(v LookupPipelineResult) *PipelineBufferOptions { return v.BufferOptions }).(PipelineBufferOptionsPtrOutput) +} + +func (o LookupPipelineResultOutput) EncryptionAtRestOptions() PipelineEncryptionAtRestOptionsPtrOutput { + return o.ApplyT(func(v LookupPipelineResult) *PipelineEncryptionAtRestOptions { return v.EncryptionAtRestOptions }).(PipelineEncryptionAtRestOptionsPtrOutput) +} + // A list of endpoints that can be used for ingesting data into a pipeline func (o LookupPipelineResultOutput) IngestEndpointUrls() pulumi.StringArrayOutput { return o.ApplyT(func(v LookupPipelineResult) []string { return v.IngestEndpointUrls }).(pulumi.StringArrayOutput) diff --git a/sdk/go/aws/osis/pipeline.go b/sdk/go/aws/osis/pipeline.go index 5f0ddc0d19..d41c9e21fa 100644 --- a/sdk/go/aws/osis/pipeline.go +++ b/sdk/go/aws/osis/pipeline.go @@ -17,6 +17,8 @@ import ( type Pipeline struct { pulumi.CustomResourceState + BufferOptions PipelineBufferOptionsPtrOutput `pulumi:"bufferOptions"` + EncryptionAtRestOptions PipelineEncryptionAtRestOptionsPtrOutput `pulumi:"encryptionAtRestOptions"` // A list of endpoints that can be used for ingesting data into a pipeline IngestEndpointUrls pulumi.StringArrayOutput `pulumi:"ingestEndpointUrls"` LogPublishingOptions PipelineLogPublishingOptionsPtrOutput `pulumi:"logPublishingOptions"` @@ -90,7 +92,9 @@ func (PipelineState) ElementType() reflect.Type { } type pipelineArgs struct { - LogPublishingOptions *PipelineLogPublishingOptions `pulumi:"logPublishingOptions"` + BufferOptions *PipelineBufferOptions `pulumi:"bufferOptions"` + EncryptionAtRestOptions *PipelineEncryptionAtRestOptions `pulumi:"encryptionAtRestOptions"` + LogPublishingOptions *PipelineLogPublishingOptions `pulumi:"logPublishingOptions"` // The maximum pipeline capacity, in Ingestion Compute Units (ICUs). MaxUnits int `pulumi:"maxUnits"` // The minimum pipeline capacity, in Ingestion Compute Units (ICUs). @@ -106,7 +110,9 @@ type pipelineArgs struct { // The set of arguments for constructing a Pipeline resource. type PipelineArgs struct { - LogPublishingOptions PipelineLogPublishingOptionsPtrInput + BufferOptions PipelineBufferOptionsPtrInput + EncryptionAtRestOptions PipelineEncryptionAtRestOptionsPtrInput + LogPublishingOptions PipelineLogPublishingOptionsPtrInput // The maximum pipeline capacity, in Ingestion Compute Units (ICUs). MaxUnits pulumi.IntInput // The minimum pipeline capacity, in Ingestion Compute Units (ICUs). @@ -169,6 +175,14 @@ func (o PipelineOutput) ToOutput(ctx context.Context) pulumix.Output[*Pipeline] } } +func (o PipelineOutput) BufferOptions() PipelineBufferOptionsPtrOutput { + return o.ApplyT(func(v *Pipeline) PipelineBufferOptionsPtrOutput { return v.BufferOptions }).(PipelineBufferOptionsPtrOutput) +} + +func (o PipelineOutput) EncryptionAtRestOptions() PipelineEncryptionAtRestOptionsPtrOutput { + return o.ApplyT(func(v *Pipeline) PipelineEncryptionAtRestOptionsPtrOutput { return v.EncryptionAtRestOptions }).(PipelineEncryptionAtRestOptionsPtrOutput) +} + // A list of endpoints that can be used for ingesting data into a pipeline func (o PipelineOutput) IngestEndpointUrls() pulumi.StringArrayOutput { return o.ApplyT(func(v *Pipeline) pulumi.StringArrayOutput { return v.IngestEndpointUrls }).(pulumi.StringArrayOutput) diff --git a/sdk/go/aws/osis/pulumiTypes.go b/sdk/go/aws/osis/pulumiTypes.go index 8d9433b827..897d66522b 100644 --- a/sdk/go/aws/osis/pulumiTypes.go +++ b/sdk/go/aws/osis/pulumiTypes.go @@ -14,6 +14,334 @@ import ( var _ = internal.GetEnvOrDefault +// Key-value pairs to configure buffering. +type PipelineBufferOptions struct { + // Whether persistent buffering should be enabled. + PersistentBufferEnabled bool `pulumi:"persistentBufferEnabled"` +} + +// PipelineBufferOptionsInput is an input type that accepts PipelineBufferOptionsArgs and PipelineBufferOptionsOutput values. +// You can construct a concrete instance of `PipelineBufferOptionsInput` via: +// +// PipelineBufferOptionsArgs{...} +type PipelineBufferOptionsInput interface { + pulumi.Input + + ToPipelineBufferOptionsOutput() PipelineBufferOptionsOutput + ToPipelineBufferOptionsOutputWithContext(context.Context) PipelineBufferOptionsOutput +} + +// Key-value pairs to configure buffering. +type PipelineBufferOptionsArgs struct { + // Whether persistent buffering should be enabled. + PersistentBufferEnabled pulumi.BoolInput `pulumi:"persistentBufferEnabled"` +} + +func (PipelineBufferOptionsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineBufferOptions)(nil)).Elem() +} + +func (i PipelineBufferOptionsArgs) ToPipelineBufferOptionsOutput() PipelineBufferOptionsOutput { + return i.ToPipelineBufferOptionsOutputWithContext(context.Background()) +} + +func (i PipelineBufferOptionsArgs) ToPipelineBufferOptionsOutputWithContext(ctx context.Context) PipelineBufferOptionsOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineBufferOptionsOutput) +} + +func (i PipelineBufferOptionsArgs) ToOutput(ctx context.Context) pulumix.Output[PipelineBufferOptions] { + return pulumix.Output[PipelineBufferOptions]{ + OutputState: i.ToPipelineBufferOptionsOutputWithContext(ctx).OutputState, + } +} + +func (i PipelineBufferOptionsArgs) ToPipelineBufferOptionsPtrOutput() PipelineBufferOptionsPtrOutput { + return i.ToPipelineBufferOptionsPtrOutputWithContext(context.Background()) +} + +func (i PipelineBufferOptionsArgs) ToPipelineBufferOptionsPtrOutputWithContext(ctx context.Context) PipelineBufferOptionsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineBufferOptionsOutput).ToPipelineBufferOptionsPtrOutputWithContext(ctx) +} + +// PipelineBufferOptionsPtrInput is an input type that accepts PipelineBufferOptionsArgs, PipelineBufferOptionsPtr and PipelineBufferOptionsPtrOutput values. +// You can construct a concrete instance of `PipelineBufferOptionsPtrInput` via: +// +// PipelineBufferOptionsArgs{...} +// +// or: +// +// nil +type PipelineBufferOptionsPtrInput interface { + pulumi.Input + + ToPipelineBufferOptionsPtrOutput() PipelineBufferOptionsPtrOutput + ToPipelineBufferOptionsPtrOutputWithContext(context.Context) PipelineBufferOptionsPtrOutput +} + +type pipelineBufferOptionsPtrType PipelineBufferOptionsArgs + +func PipelineBufferOptionsPtr(v *PipelineBufferOptionsArgs) PipelineBufferOptionsPtrInput { + return (*pipelineBufferOptionsPtrType)(v) +} + +func (*pipelineBufferOptionsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**PipelineBufferOptions)(nil)).Elem() +} + +func (i *pipelineBufferOptionsPtrType) ToPipelineBufferOptionsPtrOutput() PipelineBufferOptionsPtrOutput { + return i.ToPipelineBufferOptionsPtrOutputWithContext(context.Background()) +} + +func (i *pipelineBufferOptionsPtrType) ToPipelineBufferOptionsPtrOutputWithContext(ctx context.Context) PipelineBufferOptionsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineBufferOptionsPtrOutput) +} + +func (i *pipelineBufferOptionsPtrType) ToOutput(ctx context.Context) pulumix.Output[*PipelineBufferOptions] { + return pulumix.Output[*PipelineBufferOptions]{ + OutputState: i.ToPipelineBufferOptionsPtrOutputWithContext(ctx).OutputState, + } +} + +// Key-value pairs to configure buffering. +type PipelineBufferOptionsOutput struct{ *pulumi.OutputState } + +func (PipelineBufferOptionsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineBufferOptions)(nil)).Elem() +} + +func (o PipelineBufferOptionsOutput) ToPipelineBufferOptionsOutput() PipelineBufferOptionsOutput { + return o +} + +func (o PipelineBufferOptionsOutput) ToPipelineBufferOptionsOutputWithContext(ctx context.Context) PipelineBufferOptionsOutput { + return o +} + +func (o PipelineBufferOptionsOutput) ToPipelineBufferOptionsPtrOutput() PipelineBufferOptionsPtrOutput { + return o.ToPipelineBufferOptionsPtrOutputWithContext(context.Background()) +} + +func (o PipelineBufferOptionsOutput) ToPipelineBufferOptionsPtrOutputWithContext(ctx context.Context) PipelineBufferOptionsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v PipelineBufferOptions) *PipelineBufferOptions { + return &v + }).(PipelineBufferOptionsPtrOutput) +} + +func (o PipelineBufferOptionsOutput) ToOutput(ctx context.Context) pulumix.Output[PipelineBufferOptions] { + return pulumix.Output[PipelineBufferOptions]{ + OutputState: o.OutputState, + } +} + +// Whether persistent buffering should be enabled. +func (o PipelineBufferOptionsOutput) PersistentBufferEnabled() pulumi.BoolOutput { + return o.ApplyT(func(v PipelineBufferOptions) bool { return v.PersistentBufferEnabled }).(pulumi.BoolOutput) +} + +type PipelineBufferOptionsPtrOutput struct{ *pulumi.OutputState } + +func (PipelineBufferOptionsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**PipelineBufferOptions)(nil)).Elem() +} + +func (o PipelineBufferOptionsPtrOutput) ToPipelineBufferOptionsPtrOutput() PipelineBufferOptionsPtrOutput { + return o +} + +func (o PipelineBufferOptionsPtrOutput) ToPipelineBufferOptionsPtrOutputWithContext(ctx context.Context) PipelineBufferOptionsPtrOutput { + return o +} + +func (o PipelineBufferOptionsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*PipelineBufferOptions] { + return pulumix.Output[*PipelineBufferOptions]{ + OutputState: o.OutputState, + } +} + +func (o PipelineBufferOptionsPtrOutput) Elem() PipelineBufferOptionsOutput { + return o.ApplyT(func(v *PipelineBufferOptions) PipelineBufferOptions { + if v != nil { + return *v + } + var ret PipelineBufferOptions + return ret + }).(PipelineBufferOptionsOutput) +} + +// Whether persistent buffering should be enabled. +func (o PipelineBufferOptionsPtrOutput) PersistentBufferEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *PipelineBufferOptions) *bool { + if v == nil { + return nil + } + return &v.PersistentBufferEnabled + }).(pulumi.BoolPtrOutput) +} + +// Key-value pairs to configure encryption at rest. +type PipelineEncryptionAtRestOptions struct { + // The KMS key to use for encrypting data. By default an AWS owned key is used + KmsKeyArn string `pulumi:"kmsKeyArn"` +} + +// PipelineEncryptionAtRestOptionsInput is an input type that accepts PipelineEncryptionAtRestOptionsArgs and PipelineEncryptionAtRestOptionsOutput values. +// You can construct a concrete instance of `PipelineEncryptionAtRestOptionsInput` via: +// +// PipelineEncryptionAtRestOptionsArgs{...} +type PipelineEncryptionAtRestOptionsInput interface { + pulumi.Input + + ToPipelineEncryptionAtRestOptionsOutput() PipelineEncryptionAtRestOptionsOutput + ToPipelineEncryptionAtRestOptionsOutputWithContext(context.Context) PipelineEncryptionAtRestOptionsOutput +} + +// Key-value pairs to configure encryption at rest. +type PipelineEncryptionAtRestOptionsArgs struct { + // The KMS key to use for encrypting data. By default an AWS owned key is used + KmsKeyArn pulumi.StringInput `pulumi:"kmsKeyArn"` +} + +func (PipelineEncryptionAtRestOptionsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineEncryptionAtRestOptions)(nil)).Elem() +} + +func (i PipelineEncryptionAtRestOptionsArgs) ToPipelineEncryptionAtRestOptionsOutput() PipelineEncryptionAtRestOptionsOutput { + return i.ToPipelineEncryptionAtRestOptionsOutputWithContext(context.Background()) +} + +func (i PipelineEncryptionAtRestOptionsArgs) ToPipelineEncryptionAtRestOptionsOutputWithContext(ctx context.Context) PipelineEncryptionAtRestOptionsOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineEncryptionAtRestOptionsOutput) +} + +func (i PipelineEncryptionAtRestOptionsArgs) ToOutput(ctx context.Context) pulumix.Output[PipelineEncryptionAtRestOptions] { + return pulumix.Output[PipelineEncryptionAtRestOptions]{ + OutputState: i.ToPipelineEncryptionAtRestOptionsOutputWithContext(ctx).OutputState, + } +} + +func (i PipelineEncryptionAtRestOptionsArgs) ToPipelineEncryptionAtRestOptionsPtrOutput() PipelineEncryptionAtRestOptionsPtrOutput { + return i.ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(context.Background()) +} + +func (i PipelineEncryptionAtRestOptionsArgs) ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(ctx context.Context) PipelineEncryptionAtRestOptionsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineEncryptionAtRestOptionsOutput).ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(ctx) +} + +// PipelineEncryptionAtRestOptionsPtrInput is an input type that accepts PipelineEncryptionAtRestOptionsArgs, PipelineEncryptionAtRestOptionsPtr and PipelineEncryptionAtRestOptionsPtrOutput values. +// You can construct a concrete instance of `PipelineEncryptionAtRestOptionsPtrInput` via: +// +// PipelineEncryptionAtRestOptionsArgs{...} +// +// or: +// +// nil +type PipelineEncryptionAtRestOptionsPtrInput interface { + pulumi.Input + + ToPipelineEncryptionAtRestOptionsPtrOutput() PipelineEncryptionAtRestOptionsPtrOutput + ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(context.Context) PipelineEncryptionAtRestOptionsPtrOutput +} + +type pipelineEncryptionAtRestOptionsPtrType PipelineEncryptionAtRestOptionsArgs + +func PipelineEncryptionAtRestOptionsPtr(v *PipelineEncryptionAtRestOptionsArgs) PipelineEncryptionAtRestOptionsPtrInput { + return (*pipelineEncryptionAtRestOptionsPtrType)(v) +} + +func (*pipelineEncryptionAtRestOptionsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**PipelineEncryptionAtRestOptions)(nil)).Elem() +} + +func (i *pipelineEncryptionAtRestOptionsPtrType) ToPipelineEncryptionAtRestOptionsPtrOutput() PipelineEncryptionAtRestOptionsPtrOutput { + return i.ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(context.Background()) +} + +func (i *pipelineEncryptionAtRestOptionsPtrType) ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(ctx context.Context) PipelineEncryptionAtRestOptionsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(PipelineEncryptionAtRestOptionsPtrOutput) +} + +func (i *pipelineEncryptionAtRestOptionsPtrType) ToOutput(ctx context.Context) pulumix.Output[*PipelineEncryptionAtRestOptions] { + return pulumix.Output[*PipelineEncryptionAtRestOptions]{ + OutputState: i.ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(ctx).OutputState, + } +} + +// Key-value pairs to configure encryption at rest. +type PipelineEncryptionAtRestOptionsOutput struct{ *pulumi.OutputState } + +func (PipelineEncryptionAtRestOptionsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*PipelineEncryptionAtRestOptions)(nil)).Elem() +} + +func (o PipelineEncryptionAtRestOptionsOutput) ToPipelineEncryptionAtRestOptionsOutput() PipelineEncryptionAtRestOptionsOutput { + return o +} + +func (o PipelineEncryptionAtRestOptionsOutput) ToPipelineEncryptionAtRestOptionsOutputWithContext(ctx context.Context) PipelineEncryptionAtRestOptionsOutput { + return o +} + +func (o PipelineEncryptionAtRestOptionsOutput) ToPipelineEncryptionAtRestOptionsPtrOutput() PipelineEncryptionAtRestOptionsPtrOutput { + return o.ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(context.Background()) +} + +func (o PipelineEncryptionAtRestOptionsOutput) ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(ctx context.Context) PipelineEncryptionAtRestOptionsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v PipelineEncryptionAtRestOptions) *PipelineEncryptionAtRestOptions { + return &v + }).(PipelineEncryptionAtRestOptionsPtrOutput) +} + +func (o PipelineEncryptionAtRestOptionsOutput) ToOutput(ctx context.Context) pulumix.Output[PipelineEncryptionAtRestOptions] { + return pulumix.Output[PipelineEncryptionAtRestOptions]{ + OutputState: o.OutputState, + } +} + +// The KMS key to use for encrypting data. By default an AWS owned key is used +func (o PipelineEncryptionAtRestOptionsOutput) KmsKeyArn() pulumi.StringOutput { + return o.ApplyT(func(v PipelineEncryptionAtRestOptions) string { return v.KmsKeyArn }).(pulumi.StringOutput) +} + +type PipelineEncryptionAtRestOptionsPtrOutput struct{ *pulumi.OutputState } + +func (PipelineEncryptionAtRestOptionsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**PipelineEncryptionAtRestOptions)(nil)).Elem() +} + +func (o PipelineEncryptionAtRestOptionsPtrOutput) ToPipelineEncryptionAtRestOptionsPtrOutput() PipelineEncryptionAtRestOptionsPtrOutput { + return o +} + +func (o PipelineEncryptionAtRestOptionsPtrOutput) ToPipelineEncryptionAtRestOptionsPtrOutputWithContext(ctx context.Context) PipelineEncryptionAtRestOptionsPtrOutput { + return o +} + +func (o PipelineEncryptionAtRestOptionsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*PipelineEncryptionAtRestOptions] { + return pulumix.Output[*PipelineEncryptionAtRestOptions]{ + OutputState: o.OutputState, + } +} + +func (o PipelineEncryptionAtRestOptionsPtrOutput) Elem() PipelineEncryptionAtRestOptionsOutput { + return o.ApplyT(func(v *PipelineEncryptionAtRestOptions) PipelineEncryptionAtRestOptions { + if v != nil { + return *v + } + var ret PipelineEncryptionAtRestOptions + return ret + }).(PipelineEncryptionAtRestOptionsOutput) +} + +// The KMS key to use for encrypting data. By default an AWS owned key is used +func (o PipelineEncryptionAtRestOptionsPtrOutput) KmsKeyArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *PipelineEncryptionAtRestOptions) *string { + if v == nil { + return nil + } + return &v.KmsKeyArn + }).(pulumi.StringPtrOutput) +} + // Key-value pairs to configure log publishing. type PipelineLogPublishingOptions struct { // The destination for OpenSearch Ingestion Service logs sent to Amazon CloudWatch. @@ -201,7 +529,7 @@ func (o PipelineLogPublishingOptionsPtrOutput) IsLoggingEnabled() pulumi.BoolPtr // The destination for OpenSearch Ingestion Service logs sent to Amazon CloudWatch. type PipelineLogPublishingOptionsCloudWatchLogDestinationProperties struct { - LogGroup *string `pulumi:"logGroup"` + LogGroup string `pulumi:"logGroup"` } // PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesInput is an input type that accepts PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs and PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesOutput values. @@ -217,7 +545,7 @@ type PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesInput interfa // The destination for OpenSearch Ingestion Service logs sent to Amazon CloudWatch. type PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs struct { - LogGroup pulumi.StringPtrInput `pulumi:"logGroup"` + LogGroup pulumi.StringInput `pulumi:"logGroup"` } func (PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs) ElementType() reflect.Type { @@ -316,8 +644,8 @@ func (o PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesOutput) To } } -func (o PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesOutput) LogGroup() pulumi.StringPtrOutput { - return o.ApplyT(func(v PipelineLogPublishingOptionsCloudWatchLogDestinationProperties) *string { return v.LogGroup }).(pulumi.StringPtrOutput) +func (o PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesOutput) LogGroup() pulumi.StringOutput { + return o.ApplyT(func(v PipelineLogPublishingOptionsCloudWatchLogDestinationProperties) string { return v.LogGroup }).(pulumi.StringOutput) } type PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesPtrOutput struct{ *pulumi.OutputState } @@ -355,7 +683,7 @@ func (o PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesPtrOutput) if v == nil { return nil } - return v.LogGroup + return &v.LogGroup }).(pulumi.StringPtrOutput) } @@ -746,6 +1074,10 @@ func (o PipelineVpcOptionsPtrOutput) SubnetIds() pulumi.StringArrayOutput { } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*PipelineBufferOptionsInput)(nil)).Elem(), PipelineBufferOptionsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineBufferOptionsPtrInput)(nil)).Elem(), PipelineBufferOptionsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineEncryptionAtRestOptionsInput)(nil)).Elem(), PipelineEncryptionAtRestOptionsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*PipelineEncryptionAtRestOptionsPtrInput)(nil)).Elem(), PipelineEncryptionAtRestOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineLogPublishingOptionsInput)(nil)).Elem(), PipelineLogPublishingOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineLogPublishingOptionsPtrInput)(nil)).Elem(), PipelineLogPublishingOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesInput)(nil)).Elem(), PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs{}) @@ -754,6 +1086,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*PipelineTagArrayInput)(nil)).Elem(), PipelineTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineVpcOptionsInput)(nil)).Elem(), PipelineVpcOptionsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*PipelineVpcOptionsPtrInput)(nil)).Elem(), PipelineVpcOptionsArgs{}) + pulumi.RegisterOutputType(PipelineBufferOptionsOutput{}) + pulumi.RegisterOutputType(PipelineBufferOptionsPtrOutput{}) + pulumi.RegisterOutputType(PipelineEncryptionAtRestOptionsOutput{}) + pulumi.RegisterOutputType(PipelineEncryptionAtRestOptionsPtrOutput{}) pulumi.RegisterOutputType(PipelineLogPublishingOptionsOutput{}) pulumi.RegisterOutputType(PipelineLogPublishingOptionsPtrOutput{}) pulumi.RegisterOutputType(PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesOutput{}) diff --git a/sdk/go/aws/route53resolver/getResolverConfig.go b/sdk/go/aws/route53resolver/getResolverConfig.go index 86cc266b39..613928d976 100644 --- a/sdk/go/aws/route53resolver/getResolverConfig.go +++ b/sdk/go/aws/route53resolver/getResolverConfig.go @@ -24,8 +24,8 @@ func LookupResolverConfig(ctx *pulumi.Context, args *LookupResolverConfigArgs, o } type LookupResolverConfigArgs struct { - // Id - Id string `pulumi:"id"` + // ResourceId + ResourceId string `pulumi:"resourceId"` } type LookupResolverConfigResult struct { @@ -51,8 +51,8 @@ func LookupResolverConfigOutput(ctx *pulumi.Context, args LookupResolverConfigOu } type LookupResolverConfigOutputArgs struct { - // Id - Id pulumi.StringInput `pulumi:"id"` + // ResourceId + ResourceId pulumi.StringInput `pulumi:"resourceId"` } func (LookupResolverConfigOutputArgs) ElementType() reflect.Type { diff --git a/sdk/go/aws/s3/pulumiEnums.go b/sdk/go/aws/s3/pulumiEnums.go index be60bba22f..238f5f0e68 100644 --- a/sdk/go/aws/s3/pulumiEnums.go +++ b/sdk/go/aws/s3/pulumiEnums.go @@ -2207,6 +2207,9 @@ const ( BucketInventoryConfigurationOptionalFieldsItemObjectLockLegalHoldStatus = BucketInventoryConfigurationOptionalFieldsItem("ObjectLockLegalHoldStatus") BucketInventoryConfigurationOptionalFieldsItemIntelligentTieringAccessTier = BucketInventoryConfigurationOptionalFieldsItem("IntelligentTieringAccessTier") BucketInventoryConfigurationOptionalFieldsItemBucketKeyStatus = BucketInventoryConfigurationOptionalFieldsItem("BucketKeyStatus") + BucketInventoryConfigurationOptionalFieldsItemChecksumAlgorithm = BucketInventoryConfigurationOptionalFieldsItem("ChecksumAlgorithm") + BucketInventoryConfigurationOptionalFieldsItemObjectAccessControlList = BucketInventoryConfigurationOptionalFieldsItem("ObjectAccessControlList") + BucketInventoryConfigurationOptionalFieldsItemObjectOwner = BucketInventoryConfigurationOptionalFieldsItem("ObjectOwner") ) func (BucketInventoryConfigurationOptionalFieldsItem) ElementType() reflect.Type { diff --git a/sdk/go/aws/s3/pulumiTypes.go b/sdk/go/aws/s3/pulumiTypes.go index 39a3d9bc71..1d44f1ba62 100644 --- a/sdk/go/aws/s3/pulumiTypes.go +++ b/sdk/go/aws/s3/pulumiTypes.go @@ -4038,8 +4038,9 @@ func (o BucketLifecycleConfigurationPtrOutput) Rules() BucketRuleArrayOutput { type BucketLoggingConfiguration struct { // The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - DestinationBucketName *string `pulumi:"destinationBucketName"` - LogFilePrefix *string `pulumi:"logFilePrefix"` + DestinationBucketName *string `pulumi:"destinationBucketName"` + LogFilePrefix *string `pulumi:"logFilePrefix"` + TargetObjectKeyFormat *BucketTargetObjectKeyFormat `pulumi:"targetObjectKeyFormat"` } // BucketLoggingConfigurationInput is an input type that accepts BucketLoggingConfigurationArgs and BucketLoggingConfigurationOutput values. @@ -4055,8 +4056,9 @@ type BucketLoggingConfigurationInput interface { type BucketLoggingConfigurationArgs struct { // The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. - DestinationBucketName pulumi.StringPtrInput `pulumi:"destinationBucketName"` - LogFilePrefix pulumi.StringPtrInput `pulumi:"logFilePrefix"` + DestinationBucketName pulumi.StringPtrInput `pulumi:"destinationBucketName"` + LogFilePrefix pulumi.StringPtrInput `pulumi:"logFilePrefix"` + TargetObjectKeyFormat BucketTargetObjectKeyFormatPtrInput `pulumi:"targetObjectKeyFormat"` } func (BucketLoggingConfigurationArgs) ElementType() reflect.Type { @@ -4163,6 +4165,10 @@ func (o BucketLoggingConfigurationOutput) LogFilePrefix() pulumi.StringPtrOutput return o.ApplyT(func(v BucketLoggingConfiguration) *string { return v.LogFilePrefix }).(pulumi.StringPtrOutput) } +func (o BucketLoggingConfigurationOutput) TargetObjectKeyFormat() BucketTargetObjectKeyFormatPtrOutput { + return o.ApplyT(func(v BucketLoggingConfiguration) *BucketTargetObjectKeyFormat { return v.TargetObjectKeyFormat }).(BucketTargetObjectKeyFormatPtrOutput) +} + type BucketLoggingConfigurationPtrOutput struct{ *pulumi.OutputState } func (BucketLoggingConfigurationPtrOutput) ElementType() reflect.Type { @@ -4212,6 +4218,15 @@ func (o BucketLoggingConfigurationPtrOutput) LogFilePrefix() pulumi.StringPtrOut }).(pulumi.StringPtrOutput) } +func (o BucketLoggingConfigurationPtrOutput) TargetObjectKeyFormat() BucketTargetObjectKeyFormatPtrOutput { + return o.ApplyT(func(v *BucketLoggingConfiguration) *BucketTargetObjectKeyFormat { + if v == nil { + return nil + } + return v.TargetObjectKeyFormat + }).(BucketTargetObjectKeyFormatPtrOutput) +} + type BucketMetrics struct { EventThreshold *BucketReplicationTimeValue `pulumi:"eventThreshold"` Status BucketMetricsStatus `pulumi:"status"` @@ -9689,6 +9704,151 @@ func (o BucketTagFilterArrayOutput) Index(i pulumi.IntInput) BucketTagFilterOutp }).(BucketTagFilterOutput) } +// Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. +type BucketTargetObjectKeyFormat struct { +} + +// BucketTargetObjectKeyFormatInput is an input type that accepts BucketTargetObjectKeyFormatArgs and BucketTargetObjectKeyFormatOutput values. +// You can construct a concrete instance of `BucketTargetObjectKeyFormatInput` via: +// +// BucketTargetObjectKeyFormatArgs{...} +type BucketTargetObjectKeyFormatInput interface { + pulumi.Input + + ToBucketTargetObjectKeyFormatOutput() BucketTargetObjectKeyFormatOutput + ToBucketTargetObjectKeyFormatOutputWithContext(context.Context) BucketTargetObjectKeyFormatOutput +} + +// Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. +type BucketTargetObjectKeyFormatArgs struct { +} + +func (BucketTargetObjectKeyFormatArgs) ElementType() reflect.Type { + return reflect.TypeOf((*BucketTargetObjectKeyFormat)(nil)).Elem() +} + +func (i BucketTargetObjectKeyFormatArgs) ToBucketTargetObjectKeyFormatOutput() BucketTargetObjectKeyFormatOutput { + return i.ToBucketTargetObjectKeyFormatOutputWithContext(context.Background()) +} + +func (i BucketTargetObjectKeyFormatArgs) ToBucketTargetObjectKeyFormatOutputWithContext(ctx context.Context) BucketTargetObjectKeyFormatOutput { + return pulumi.ToOutputWithContext(ctx, i).(BucketTargetObjectKeyFormatOutput) +} + +func (i BucketTargetObjectKeyFormatArgs) ToOutput(ctx context.Context) pulumix.Output[BucketTargetObjectKeyFormat] { + return pulumix.Output[BucketTargetObjectKeyFormat]{ + OutputState: i.ToBucketTargetObjectKeyFormatOutputWithContext(ctx).OutputState, + } +} + +func (i BucketTargetObjectKeyFormatArgs) ToBucketTargetObjectKeyFormatPtrOutput() BucketTargetObjectKeyFormatPtrOutput { + return i.ToBucketTargetObjectKeyFormatPtrOutputWithContext(context.Background()) +} + +func (i BucketTargetObjectKeyFormatArgs) ToBucketTargetObjectKeyFormatPtrOutputWithContext(ctx context.Context) BucketTargetObjectKeyFormatPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(BucketTargetObjectKeyFormatOutput).ToBucketTargetObjectKeyFormatPtrOutputWithContext(ctx) +} + +// BucketTargetObjectKeyFormatPtrInput is an input type that accepts BucketTargetObjectKeyFormatArgs, BucketTargetObjectKeyFormatPtr and BucketTargetObjectKeyFormatPtrOutput values. +// You can construct a concrete instance of `BucketTargetObjectKeyFormatPtrInput` via: +// +// BucketTargetObjectKeyFormatArgs{...} +// +// or: +// +// nil +type BucketTargetObjectKeyFormatPtrInput interface { + pulumi.Input + + ToBucketTargetObjectKeyFormatPtrOutput() BucketTargetObjectKeyFormatPtrOutput + ToBucketTargetObjectKeyFormatPtrOutputWithContext(context.Context) BucketTargetObjectKeyFormatPtrOutput +} + +type bucketTargetObjectKeyFormatPtrType BucketTargetObjectKeyFormatArgs + +func BucketTargetObjectKeyFormatPtr(v *BucketTargetObjectKeyFormatArgs) BucketTargetObjectKeyFormatPtrInput { + return (*bucketTargetObjectKeyFormatPtrType)(v) +} + +func (*bucketTargetObjectKeyFormatPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**BucketTargetObjectKeyFormat)(nil)).Elem() +} + +func (i *bucketTargetObjectKeyFormatPtrType) ToBucketTargetObjectKeyFormatPtrOutput() BucketTargetObjectKeyFormatPtrOutput { + return i.ToBucketTargetObjectKeyFormatPtrOutputWithContext(context.Background()) +} + +func (i *bucketTargetObjectKeyFormatPtrType) ToBucketTargetObjectKeyFormatPtrOutputWithContext(ctx context.Context) BucketTargetObjectKeyFormatPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(BucketTargetObjectKeyFormatPtrOutput) +} + +func (i *bucketTargetObjectKeyFormatPtrType) ToOutput(ctx context.Context) pulumix.Output[*BucketTargetObjectKeyFormat] { + return pulumix.Output[*BucketTargetObjectKeyFormat]{ + OutputState: i.ToBucketTargetObjectKeyFormatPtrOutputWithContext(ctx).OutputState, + } +} + +// Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. +type BucketTargetObjectKeyFormatOutput struct{ *pulumi.OutputState } + +func (BucketTargetObjectKeyFormatOutput) ElementType() reflect.Type { + return reflect.TypeOf((*BucketTargetObjectKeyFormat)(nil)).Elem() +} + +func (o BucketTargetObjectKeyFormatOutput) ToBucketTargetObjectKeyFormatOutput() BucketTargetObjectKeyFormatOutput { + return o +} + +func (o BucketTargetObjectKeyFormatOutput) ToBucketTargetObjectKeyFormatOutputWithContext(ctx context.Context) BucketTargetObjectKeyFormatOutput { + return o +} + +func (o BucketTargetObjectKeyFormatOutput) ToBucketTargetObjectKeyFormatPtrOutput() BucketTargetObjectKeyFormatPtrOutput { + return o.ToBucketTargetObjectKeyFormatPtrOutputWithContext(context.Background()) +} + +func (o BucketTargetObjectKeyFormatOutput) ToBucketTargetObjectKeyFormatPtrOutputWithContext(ctx context.Context) BucketTargetObjectKeyFormatPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v BucketTargetObjectKeyFormat) *BucketTargetObjectKeyFormat { + return &v + }).(BucketTargetObjectKeyFormatPtrOutput) +} + +func (o BucketTargetObjectKeyFormatOutput) ToOutput(ctx context.Context) pulumix.Output[BucketTargetObjectKeyFormat] { + return pulumix.Output[BucketTargetObjectKeyFormat]{ + OutputState: o.OutputState, + } +} + +type BucketTargetObjectKeyFormatPtrOutput struct{ *pulumi.OutputState } + +func (BucketTargetObjectKeyFormatPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**BucketTargetObjectKeyFormat)(nil)).Elem() +} + +func (o BucketTargetObjectKeyFormatPtrOutput) ToBucketTargetObjectKeyFormatPtrOutput() BucketTargetObjectKeyFormatPtrOutput { + return o +} + +func (o BucketTargetObjectKeyFormatPtrOutput) ToBucketTargetObjectKeyFormatPtrOutputWithContext(ctx context.Context) BucketTargetObjectKeyFormatPtrOutput { + return o +} + +func (o BucketTargetObjectKeyFormatPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*BucketTargetObjectKeyFormat] { + return pulumix.Output[*BucketTargetObjectKeyFormat]{ + OutputState: o.OutputState, + } +} + +func (o BucketTargetObjectKeyFormatPtrOutput) Elem() BucketTargetObjectKeyFormatOutput { + return o.ApplyT(func(v *BucketTargetObjectKeyFormat) BucketTargetObjectKeyFormat { + if v != nil { + return *v + } + var ret BucketTargetObjectKeyFormat + return ret + }).(BucketTargetObjectKeyFormatOutput) +} + type BucketTiering struct { // S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. AccessTier BucketTieringAccessTier `pulumi:"accessTier"` @@ -15298,6 +15458,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*BucketTagFilterInput)(nil)).Elem(), BucketTagFilterArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketTagFilterPtrInput)(nil)).Elem(), BucketTagFilterArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketTagFilterArrayInput)(nil)).Elem(), BucketTagFilterArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*BucketTargetObjectKeyFormatInput)(nil)).Elem(), BucketTargetObjectKeyFormatArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*BucketTargetObjectKeyFormatPtrInput)(nil)).Elem(), BucketTargetObjectKeyFormatArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketTieringInput)(nil)).Elem(), BucketTieringArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketTieringArrayInput)(nil)).Elem(), BucketTieringArray{}) pulumi.RegisterInputType(reflect.TypeOf((*BucketTopicConfigurationInput)(nil)).Elem(), BucketTopicConfigurationArgs{}) @@ -15476,6 +15638,8 @@ func init() { pulumi.RegisterOutputType(BucketTagFilterOutput{}) pulumi.RegisterOutputType(BucketTagFilterPtrOutput{}) pulumi.RegisterOutputType(BucketTagFilterArrayOutput{}) + pulumi.RegisterOutputType(BucketTargetObjectKeyFormatOutput{}) + pulumi.RegisterOutputType(BucketTargetObjectKeyFormatPtrOutput{}) pulumi.RegisterOutputType(BucketTieringOutput{}) pulumi.RegisterOutputType(BucketTieringArrayOutput{}) pulumi.RegisterOutputType(BucketTopicConfigurationOutput{}) diff --git a/sdk/go/aws/s3express/directoryBucket.go b/sdk/go/aws/s3express/directoryBucket.go index cd58d040c5..d0929208ae 100644 --- a/sdk/go/aws/s3express/directoryBucket.go +++ b/sdk/go/aws/s3express/directoryBucket.go @@ -19,9 +19,9 @@ type DirectoryBucket struct { // Returns the Amazon Resource Name (ARN) of the specified bucket. Arn pulumi.StringOutput `pulumi:"arn"` - // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. BucketName pulumi.StringPtrOutput `pulumi:"bucketName"` - // Specifies the number of Avilability Zone that's used for redundancy for the bucket. + // Specifies the number of Availability Zone that's used for redundancy for the bucket. DataRedundancy DirectoryBucketDataRedundancyOutput `pulumi:"dataRedundancy"` // Specifies the AZ ID of the Availability Zone where the directory bucket will be created. An example AZ ID value is 'use1-az5'. LocationName pulumi.StringOutput `pulumi:"locationName"` @@ -79,9 +79,9 @@ func (DirectoryBucketState) ElementType() reflect.Type { } type directoryBucketArgs struct { - // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. BucketName *string `pulumi:"bucketName"` - // Specifies the number of Avilability Zone that's used for redundancy for the bucket. + // Specifies the number of Availability Zone that's used for redundancy for the bucket. DataRedundancy DirectoryBucketDataRedundancy `pulumi:"dataRedundancy"` // Specifies the AZ ID of the Availability Zone where the directory bucket will be created. An example AZ ID value is 'use1-az5'. LocationName string `pulumi:"locationName"` @@ -89,9 +89,9 @@ type directoryBucketArgs struct { // The set of arguments for constructing a DirectoryBucket resource. type DirectoryBucketArgs struct { - // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. BucketName pulumi.StringPtrInput - // Specifies the number of Avilability Zone that's used for redundancy for the bucket. + // Specifies the number of Availability Zone that's used for redundancy for the bucket. DataRedundancy DirectoryBucketDataRedundancyInput // Specifies the AZ ID of the Availability Zone where the directory bucket will be created. An example AZ ID value is 'use1-az5'. LocationName pulumi.StringInput @@ -151,12 +151,12 @@ func (o DirectoryBucketOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *DirectoryBucket) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } -// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. +// Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. func (o DirectoryBucketOutput) BucketName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DirectoryBucket) pulumi.StringPtrOutput { return v.BucketName }).(pulumi.StringPtrOutput) } -// Specifies the number of Avilability Zone that's used for redundancy for the bucket. +// Specifies the number of Availability Zone that's used for redundancy for the bucket. func (o DirectoryBucketOutput) DataRedundancy() DirectoryBucketDataRedundancyOutput { return o.ApplyT(func(v *DirectoryBucket) DirectoryBucketDataRedundancyOutput { return v.DataRedundancy }).(DirectoryBucketDataRedundancyOutput) } diff --git a/sdk/go/aws/s3express/getDirectoryBucket.go b/sdk/go/aws/s3express/getDirectoryBucket.go index d836fd381c..76814df55c 100644 --- a/sdk/go/aws/s3express/getDirectoryBucket.go +++ b/sdk/go/aws/s3express/getDirectoryBucket.go @@ -24,7 +24,7 @@ func LookupDirectoryBucket(ctx *pulumi.Context, args *LookupDirectoryBucketArgs, } type LookupDirectoryBucketArgs struct { - // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. BucketName string `pulumi:"bucketName"` } @@ -47,7 +47,7 @@ func LookupDirectoryBucketOutput(ctx *pulumi.Context, args LookupDirectoryBucket } type LookupDirectoryBucketOutputArgs struct { - // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + // Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. BucketName pulumi.StringInput `pulumi:"bucketName"` } diff --git a/sdk/go/aws/s3express/pulumiEnums.go b/sdk/go/aws/s3express/pulumiEnums.go index d942ebbc2f..eca0a664f4 100644 --- a/sdk/go/aws/s3express/pulumiEnums.go +++ b/sdk/go/aws/s3express/pulumiEnums.go @@ -11,7 +11,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Specifies the number of Avilability Zone that's used for redundancy for the bucket. +// Specifies the number of Availability Zone that's used for redundancy for the bucket. type DirectoryBucketDataRedundancy string const ( diff --git a/sdk/go/aws/sagemaker/domain.go b/sdk/go/aws/sagemaker/domain.go index 67bf4c66d2..29cb92a729 100644 --- a/sdk/go/aws/sagemaker/domain.go +++ b/sdk/go/aws/sagemaker/domain.go @@ -40,6 +40,8 @@ type Domain struct { KmsKeyId pulumi.StringPtrOutput `pulumi:"kmsKeyId"` // The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app. SecurityGroupIdForDomainBoundary pulumi.StringOutput `pulumi:"securityGroupIdForDomainBoundary"` + // The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. + SingleSignOnApplicationArn pulumi.StringOutput `pulumi:"singleSignOnApplicationArn"` // The SSO managed application instance ID. SingleSignOnManagedApplicationInstanceId pulumi.StringOutput `pulumi:"singleSignOnManagedApplicationInstanceId"` // The VPC subnets that Studio uses for communication. @@ -72,12 +74,10 @@ func NewDomain(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'VpcId'") } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ - "appNetworkAccessType", "authMode", "domainName", "domainSettings.rStudioServerProDomainSettings.defaultResourceSpec", "kmsKeyId", - "subnetIds[*]", "tags[*]", "vpcId", }) @@ -271,6 +271,11 @@ func (o DomainOutput) SecurityGroupIdForDomainBoundary() pulumi.StringOutput { return o.ApplyT(func(v *Domain) pulumi.StringOutput { return v.SecurityGroupIdForDomainBoundary }).(pulumi.StringOutput) } +// The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. +func (o DomainOutput) SingleSignOnApplicationArn() pulumi.StringOutput { + return o.ApplyT(func(v *Domain) pulumi.StringOutput { return v.SingleSignOnApplicationArn }).(pulumi.StringOutput) +} + // The SSO managed application instance ID. func (o DomainOutput) SingleSignOnManagedApplicationInstanceId() pulumi.StringOutput { return o.ApplyT(func(v *Domain) pulumi.StringOutput { return v.SingleSignOnManagedApplicationInstanceId }).(pulumi.StringOutput) diff --git a/sdk/go/aws/sagemaker/getDomain.go b/sdk/go/aws/sagemaker/getDomain.go index b191c4c5d2..a39d5aa941 100644 --- a/sdk/go/aws/sagemaker/getDomain.go +++ b/sdk/go/aws/sagemaker/getDomain.go @@ -29,6 +29,8 @@ type LookupDomainArgs struct { } type LookupDomainResult struct { + // Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly. + AppNetworkAccessType *DomainAppNetworkAccessType `pulumi:"appNetworkAccessType"` // The entity that creates and manages the required security groups for inter-app communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided. AppSecurityGroupManagement *DomainAppSecurityGroupManagement `pulumi:"appSecurityGroupManagement"` // The default space settings. @@ -44,8 +46,12 @@ type LookupDomainResult struct { HomeEfsFileSystemId *string `pulumi:"homeEfsFileSystemId"` // The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app. SecurityGroupIdForDomainBoundary *string `pulumi:"securityGroupIdForDomainBoundary"` + // The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. + SingleSignOnApplicationArn *string `pulumi:"singleSignOnApplicationArn"` // The SSO managed application instance ID. SingleSignOnManagedApplicationInstanceId *string `pulumi:"singleSignOnManagedApplicationInstanceId"` + // The VPC subnets that Studio uses for communication. + SubnetIds []string `pulumi:"subnetIds"` // The URL to the created domain. Url *string `pulumi:"url"` } @@ -92,6 +98,11 @@ func (o LookupDomainResultOutput) ToOutput(ctx context.Context) pulumix.Output[L } } +// Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly. +func (o LookupDomainResultOutput) AppNetworkAccessType() DomainAppNetworkAccessTypePtrOutput { + return o.ApplyT(func(v LookupDomainResult) *DomainAppNetworkAccessType { return v.AppNetworkAccessType }).(DomainAppNetworkAccessTypePtrOutput) +} + // The entity that creates and manages the required security groups for inter-app communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided. func (o LookupDomainResultOutput) AppSecurityGroupManagement() DomainAppSecurityGroupManagementPtrOutput { return o.ApplyT(func(v LookupDomainResult) *DomainAppSecurityGroupManagement { return v.AppSecurityGroupManagement }).(DomainAppSecurityGroupManagementPtrOutput) @@ -131,11 +142,21 @@ func (o LookupDomainResultOutput) SecurityGroupIdForDomainBoundary() pulumi.Stri return o.ApplyT(func(v LookupDomainResult) *string { return v.SecurityGroupIdForDomainBoundary }).(pulumi.StringPtrOutput) } +// The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. +func (o LookupDomainResultOutput) SingleSignOnApplicationArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupDomainResult) *string { return v.SingleSignOnApplicationArn }).(pulumi.StringPtrOutput) +} + // The SSO managed application instance ID. func (o LookupDomainResultOutput) SingleSignOnManagedApplicationInstanceId() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDomainResult) *string { return v.SingleSignOnManagedApplicationInstanceId }).(pulumi.StringPtrOutput) } +// The VPC subnets that Studio uses for communication. +func (o LookupDomainResultOutput) SubnetIds() pulumi.StringArrayOutput { + return o.ApplyT(func(v LookupDomainResult) []string { return v.SubnetIds }).(pulumi.StringArrayOutput) +} + // The URL to the created domain. func (o LookupDomainResultOutput) Url() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDomainResult) *string { return v.Url }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/sagemaker/pulumiEnums.go b/sdk/go/aws/sagemaker/pulumiEnums.go index c424e6f06d..6400276263 100644 --- a/sdk/go/aws/sagemaker/pulumiEnums.go +++ b/sdk/go/aws/sagemaker/pulumiEnums.go @@ -75,6 +75,9 @@ const ( AppResourceSpecInstanceTypeMlP4d24xlarge = AppResourceSpecInstanceType("ml.p4d.24xlarge") AppResourceSpecInstanceTypeMlP4de24xlarge = AppResourceSpecInstanceType("ml.p4de.24xlarge") AppResourceSpecInstanceTypeMlGeospatialInteractive = AppResourceSpecInstanceType("ml.geospatial.interactive") + AppResourceSpecInstanceTypeMlTrn12xlarge = AppResourceSpecInstanceType("ml.trn1.2xlarge") + AppResourceSpecInstanceTypeMlTrn132xlarge = AppResourceSpecInstanceType("ml.trn1.32xlarge") + AppResourceSpecInstanceTypeMlTrn1n32xlarge = AppResourceSpecInstanceType("ml.trn1n.32xlarge") ) func (AppResourceSpecInstanceType) ElementType() reflect.Type { @@ -2332,6 +2335,9 @@ const ( DomainResourceSpecInstanceTypeMlP4d24xlarge = DomainResourceSpecInstanceType("ml.p4d.24xlarge") DomainResourceSpecInstanceTypeMlP4de24xlarge = DomainResourceSpecInstanceType("ml.p4de.24xlarge") DomainResourceSpecInstanceTypeMlGeospatialInteractive = DomainResourceSpecInstanceType("ml.geospatial.interactive") + DomainResourceSpecInstanceTypeMlTrn12xlarge = DomainResourceSpecInstanceType("ml.trn1.2xlarge") + DomainResourceSpecInstanceTypeMlTrn132xlarge = DomainResourceSpecInstanceType("ml.trn1.32xlarge") + DomainResourceSpecInstanceTypeMlTrn1n32xlarge = DomainResourceSpecInstanceType("ml.trn1n.32xlarge") ) func (DomainResourceSpecInstanceType) ElementType() reflect.Type { @@ -2692,6 +2698,189 @@ func (in *domainSharingSettingsNotebookOutputOptionPtr) ToOutput(ctx context.Con } } +// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. +type DomainUserSettingsStudioWebPortal string + +const ( + DomainUserSettingsStudioWebPortalEnabled = DomainUserSettingsStudioWebPortal("ENABLED") + DomainUserSettingsStudioWebPortalDisabled = DomainUserSettingsStudioWebPortal("DISABLED") +) + +func (DomainUserSettingsStudioWebPortal) ElementType() reflect.Type { + return reflect.TypeOf((*DomainUserSettingsStudioWebPortal)(nil)).Elem() +} + +func (e DomainUserSettingsStudioWebPortal) ToDomainUserSettingsStudioWebPortalOutput() DomainUserSettingsStudioWebPortalOutput { + return pulumi.ToOutput(e).(DomainUserSettingsStudioWebPortalOutput) +} + +func (e DomainUserSettingsStudioWebPortal) ToDomainUserSettingsStudioWebPortalOutputWithContext(ctx context.Context) DomainUserSettingsStudioWebPortalOutput { + return pulumi.ToOutputWithContext(ctx, e).(DomainUserSettingsStudioWebPortalOutput) +} + +func (e DomainUserSettingsStudioWebPortal) ToDomainUserSettingsStudioWebPortalPtrOutput() DomainUserSettingsStudioWebPortalPtrOutput { + return e.ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(context.Background()) +} + +func (e DomainUserSettingsStudioWebPortal) ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(ctx context.Context) DomainUserSettingsStudioWebPortalPtrOutput { + return DomainUserSettingsStudioWebPortal(e).ToDomainUserSettingsStudioWebPortalOutputWithContext(ctx).ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(ctx) +} + +func (e DomainUserSettingsStudioWebPortal) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainUserSettingsStudioWebPortal) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e DomainUserSettingsStudioWebPortal) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e DomainUserSettingsStudioWebPortal) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type DomainUserSettingsStudioWebPortalOutput struct{ *pulumi.OutputState } + +func (DomainUserSettingsStudioWebPortalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainUserSettingsStudioWebPortal)(nil)).Elem() +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToDomainUserSettingsStudioWebPortalOutput() DomainUserSettingsStudioWebPortalOutput { + return o +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToDomainUserSettingsStudioWebPortalOutputWithContext(ctx context.Context) DomainUserSettingsStudioWebPortalOutput { + return o +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToDomainUserSettingsStudioWebPortalPtrOutput() DomainUserSettingsStudioWebPortalPtrOutput { + return o.ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(context.Background()) +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(ctx context.Context) DomainUserSettingsStudioWebPortalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainUserSettingsStudioWebPortal) *DomainUserSettingsStudioWebPortal { + return &v + }).(DomainUserSettingsStudioWebPortalPtrOutput) +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToOutput(ctx context.Context) pulumix.Output[DomainUserSettingsStudioWebPortal] { + return pulumix.Output[DomainUserSettingsStudioWebPortal]{ + OutputState: o.OutputState, + } +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainUserSettingsStudioWebPortal) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainUserSettingsStudioWebPortalOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e DomainUserSettingsStudioWebPortal) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type DomainUserSettingsStudioWebPortalPtrOutput struct{ *pulumi.OutputState } + +func (DomainUserSettingsStudioWebPortalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainUserSettingsStudioWebPortal)(nil)).Elem() +} + +func (o DomainUserSettingsStudioWebPortalPtrOutput) ToDomainUserSettingsStudioWebPortalPtrOutput() DomainUserSettingsStudioWebPortalPtrOutput { + return o +} + +func (o DomainUserSettingsStudioWebPortalPtrOutput) ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(ctx context.Context) DomainUserSettingsStudioWebPortalPtrOutput { + return o +} + +func (o DomainUserSettingsStudioWebPortalPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainUserSettingsStudioWebPortal] { + return pulumix.Output[*DomainUserSettingsStudioWebPortal]{ + OutputState: o.OutputState, + } +} + +func (o DomainUserSettingsStudioWebPortalPtrOutput) Elem() DomainUserSettingsStudioWebPortalOutput { + return o.ApplyT(func(v *DomainUserSettingsStudioWebPortal) DomainUserSettingsStudioWebPortal { + if v != nil { + return *v + } + var ret DomainUserSettingsStudioWebPortal + return ret + }).(DomainUserSettingsStudioWebPortalOutput) +} + +func (o DomainUserSettingsStudioWebPortalPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o DomainUserSettingsStudioWebPortalPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *DomainUserSettingsStudioWebPortal) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// DomainUserSettingsStudioWebPortalInput is an input type that accepts DomainUserSettingsStudioWebPortalArgs and DomainUserSettingsStudioWebPortalOutput values. +// You can construct a concrete instance of `DomainUserSettingsStudioWebPortalInput` via: +// +// DomainUserSettingsStudioWebPortalArgs{...} +type DomainUserSettingsStudioWebPortalInput interface { + pulumi.Input + + ToDomainUserSettingsStudioWebPortalOutput() DomainUserSettingsStudioWebPortalOutput + ToDomainUserSettingsStudioWebPortalOutputWithContext(context.Context) DomainUserSettingsStudioWebPortalOutput +} + +var domainUserSettingsStudioWebPortalPtrType = reflect.TypeOf((**DomainUserSettingsStudioWebPortal)(nil)).Elem() + +type DomainUserSettingsStudioWebPortalPtrInput interface { + pulumi.Input + + ToDomainUserSettingsStudioWebPortalPtrOutput() DomainUserSettingsStudioWebPortalPtrOutput + ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(context.Context) DomainUserSettingsStudioWebPortalPtrOutput +} + +type domainUserSettingsStudioWebPortalPtr string + +func DomainUserSettingsStudioWebPortalPtr(v string) DomainUserSettingsStudioWebPortalPtrInput { + return (*domainUserSettingsStudioWebPortalPtr)(&v) +} + +func (*domainUserSettingsStudioWebPortalPtr) ElementType() reflect.Type { + return domainUserSettingsStudioWebPortalPtrType +} + +func (in *domainUserSettingsStudioWebPortalPtr) ToDomainUserSettingsStudioWebPortalPtrOutput() DomainUserSettingsStudioWebPortalPtrOutput { + return pulumi.ToOutput(in).(DomainUserSettingsStudioWebPortalPtrOutput) +} + +func (in *domainUserSettingsStudioWebPortalPtr) ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(ctx context.Context) DomainUserSettingsStudioWebPortalPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(DomainUserSettingsStudioWebPortalPtrOutput) +} + +func (in *domainUserSettingsStudioWebPortalPtr) ToOutput(ctx context.Context) pulumix.Output[*DomainUserSettingsStudioWebPortal] { + return pulumix.Output[*DomainUserSettingsStudioWebPortal]{ + OutputState: in.ToDomainUserSettingsStudioWebPortalPtrOutputWithContext(ctx).OutputState, + } +} + type FeatureGroupFeatureDefinitionFeatureType string const ( @@ -2875,6 +3064,188 @@ func (in *featureGroupFeatureDefinitionFeatureTypePtr) ToOutput(ctx context.Cont } } +type FeatureGroupStorageType string + +const ( + FeatureGroupStorageTypeStandard = FeatureGroupStorageType("Standard") + FeatureGroupStorageTypeInMemory = FeatureGroupStorageType("InMemory") +) + +func (FeatureGroupStorageType) ElementType() reflect.Type { + return reflect.TypeOf((*FeatureGroupStorageType)(nil)).Elem() +} + +func (e FeatureGroupStorageType) ToFeatureGroupStorageTypeOutput() FeatureGroupStorageTypeOutput { + return pulumi.ToOutput(e).(FeatureGroupStorageTypeOutput) +} + +func (e FeatureGroupStorageType) ToFeatureGroupStorageTypeOutputWithContext(ctx context.Context) FeatureGroupStorageTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(FeatureGroupStorageTypeOutput) +} + +func (e FeatureGroupStorageType) ToFeatureGroupStorageTypePtrOutput() FeatureGroupStorageTypePtrOutput { + return e.ToFeatureGroupStorageTypePtrOutputWithContext(context.Background()) +} + +func (e FeatureGroupStorageType) ToFeatureGroupStorageTypePtrOutputWithContext(ctx context.Context) FeatureGroupStorageTypePtrOutput { + return FeatureGroupStorageType(e).ToFeatureGroupStorageTypeOutputWithContext(ctx).ToFeatureGroupStorageTypePtrOutputWithContext(ctx) +} + +func (e FeatureGroupStorageType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FeatureGroupStorageType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FeatureGroupStorageType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FeatureGroupStorageType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FeatureGroupStorageTypeOutput struct{ *pulumi.OutputState } + +func (FeatureGroupStorageTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FeatureGroupStorageType)(nil)).Elem() +} + +func (o FeatureGroupStorageTypeOutput) ToFeatureGroupStorageTypeOutput() FeatureGroupStorageTypeOutput { + return o +} + +func (o FeatureGroupStorageTypeOutput) ToFeatureGroupStorageTypeOutputWithContext(ctx context.Context) FeatureGroupStorageTypeOutput { + return o +} + +func (o FeatureGroupStorageTypeOutput) ToFeatureGroupStorageTypePtrOutput() FeatureGroupStorageTypePtrOutput { + return o.ToFeatureGroupStorageTypePtrOutputWithContext(context.Background()) +} + +func (o FeatureGroupStorageTypeOutput) ToFeatureGroupStorageTypePtrOutputWithContext(ctx context.Context) FeatureGroupStorageTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FeatureGroupStorageType) *FeatureGroupStorageType { + return &v + }).(FeatureGroupStorageTypePtrOutput) +} + +func (o FeatureGroupStorageTypeOutput) ToOutput(ctx context.Context) pulumix.Output[FeatureGroupStorageType] { + return pulumix.Output[FeatureGroupStorageType]{ + OutputState: o.OutputState, + } +} + +func (o FeatureGroupStorageTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FeatureGroupStorageTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FeatureGroupStorageType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FeatureGroupStorageTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FeatureGroupStorageTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FeatureGroupStorageType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FeatureGroupStorageTypePtrOutput struct{ *pulumi.OutputState } + +func (FeatureGroupStorageTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FeatureGroupStorageType)(nil)).Elem() +} + +func (o FeatureGroupStorageTypePtrOutput) ToFeatureGroupStorageTypePtrOutput() FeatureGroupStorageTypePtrOutput { + return o +} + +func (o FeatureGroupStorageTypePtrOutput) ToFeatureGroupStorageTypePtrOutputWithContext(ctx context.Context) FeatureGroupStorageTypePtrOutput { + return o +} + +func (o FeatureGroupStorageTypePtrOutput) ToOutput(ctx context.Context) pulumix.Output[*FeatureGroupStorageType] { + return pulumix.Output[*FeatureGroupStorageType]{ + OutputState: o.OutputState, + } +} + +func (o FeatureGroupStorageTypePtrOutput) Elem() FeatureGroupStorageTypeOutput { + return o.ApplyT(func(v *FeatureGroupStorageType) FeatureGroupStorageType { + if v != nil { + return *v + } + var ret FeatureGroupStorageType + return ret + }).(FeatureGroupStorageTypeOutput) +} + +func (o FeatureGroupStorageTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FeatureGroupStorageTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FeatureGroupStorageType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FeatureGroupStorageTypeInput is an input type that accepts FeatureGroupStorageTypeArgs and FeatureGroupStorageTypeOutput values. +// You can construct a concrete instance of `FeatureGroupStorageTypeInput` via: +// +// FeatureGroupStorageTypeArgs{...} +type FeatureGroupStorageTypeInput interface { + pulumi.Input + + ToFeatureGroupStorageTypeOutput() FeatureGroupStorageTypeOutput + ToFeatureGroupStorageTypeOutputWithContext(context.Context) FeatureGroupStorageTypeOutput +} + +var featureGroupStorageTypePtrType = reflect.TypeOf((**FeatureGroupStorageType)(nil)).Elem() + +type FeatureGroupStorageTypePtrInput interface { + pulumi.Input + + ToFeatureGroupStorageTypePtrOutput() FeatureGroupStorageTypePtrOutput + ToFeatureGroupStorageTypePtrOutputWithContext(context.Context) FeatureGroupStorageTypePtrOutput +} + +type featureGroupStorageTypePtr string + +func FeatureGroupStorageTypePtr(v string) FeatureGroupStorageTypePtrInput { + return (*featureGroupStorageTypePtr)(&v) +} + +func (*featureGroupStorageTypePtr) ElementType() reflect.Type { + return featureGroupStorageTypePtrType +} + +func (in *featureGroupStorageTypePtr) ToFeatureGroupStorageTypePtrOutput() FeatureGroupStorageTypePtrOutput { + return pulumi.ToOutput(in).(FeatureGroupStorageTypePtrOutput) +} + +func (in *featureGroupStorageTypePtr) ToFeatureGroupStorageTypePtrOutputWithContext(ctx context.Context) FeatureGroupStorageTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FeatureGroupStorageTypePtrOutput) +} + +func (in *featureGroupStorageTypePtr) ToOutput(ctx context.Context) pulumix.Output[*FeatureGroupStorageType] { + return pulumix.Output[*FeatureGroupStorageType]{ + OutputState: in.ToFeatureGroupStorageTypePtrOutputWithContext(ctx).OutputState, + } +} + // Format for the offline store feature group. Iceberg is the optimal format for feature groups shared between offline and online stores. type FeatureGroupTableFormat string @@ -12401,6 +12772,9 @@ const ( UserProfileResourceSpecInstanceTypeMlP4d24xlarge = UserProfileResourceSpecInstanceType("ml.p4d.24xlarge") UserProfileResourceSpecInstanceTypeMlP4de24xlarge = UserProfileResourceSpecInstanceType("ml.p4de.24xlarge") UserProfileResourceSpecInstanceTypeMlGeospatialInteractive = UserProfileResourceSpecInstanceType("ml.geospatial.interactive") + UserProfileResourceSpecInstanceTypeMlTrn12xlarge = UserProfileResourceSpecInstanceType("ml.trn1.2xlarge") + UserProfileResourceSpecInstanceTypeMlTrn132xlarge = UserProfileResourceSpecInstanceType("ml.trn1.32xlarge") + UserProfileResourceSpecInstanceTypeMlTrn1n32xlarge = UserProfileResourceSpecInstanceType("ml.trn1n.32xlarge") ) func (UserProfileResourceSpecInstanceType) ElementType() reflect.Type { @@ -12761,6 +13135,189 @@ func (in *userProfileSharingSettingsNotebookOutputOptionPtr) ToOutput(ctx contex } } +// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. +type UserProfileUserSettingsStudioWebPortal string + +const ( + UserProfileUserSettingsStudioWebPortalEnabled = UserProfileUserSettingsStudioWebPortal("ENABLED") + UserProfileUserSettingsStudioWebPortalDisabled = UserProfileUserSettingsStudioWebPortal("DISABLED") +) + +func (UserProfileUserSettingsStudioWebPortal) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileUserSettingsStudioWebPortal)(nil)).Elem() +} + +func (e UserProfileUserSettingsStudioWebPortal) ToUserProfileUserSettingsStudioWebPortalOutput() UserProfileUserSettingsStudioWebPortalOutput { + return pulumi.ToOutput(e).(UserProfileUserSettingsStudioWebPortalOutput) +} + +func (e UserProfileUserSettingsStudioWebPortal) ToUserProfileUserSettingsStudioWebPortalOutputWithContext(ctx context.Context) UserProfileUserSettingsStudioWebPortalOutput { + return pulumi.ToOutputWithContext(ctx, e).(UserProfileUserSettingsStudioWebPortalOutput) +} + +func (e UserProfileUserSettingsStudioWebPortal) ToUserProfileUserSettingsStudioWebPortalPtrOutput() UserProfileUserSettingsStudioWebPortalPtrOutput { + return e.ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(context.Background()) +} + +func (e UserProfileUserSettingsStudioWebPortal) ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(ctx context.Context) UserProfileUserSettingsStudioWebPortalPtrOutput { + return UserProfileUserSettingsStudioWebPortal(e).ToUserProfileUserSettingsStudioWebPortalOutputWithContext(ctx).ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(ctx) +} + +func (e UserProfileUserSettingsStudioWebPortal) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e UserProfileUserSettingsStudioWebPortal) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e UserProfileUserSettingsStudioWebPortal) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e UserProfileUserSettingsStudioWebPortal) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type UserProfileUserSettingsStudioWebPortalOutput struct{ *pulumi.OutputState } + +func (UserProfileUserSettingsStudioWebPortalOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileUserSettingsStudioWebPortal)(nil)).Elem() +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToUserProfileUserSettingsStudioWebPortalOutput() UserProfileUserSettingsStudioWebPortalOutput { + return o +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToUserProfileUserSettingsStudioWebPortalOutputWithContext(ctx context.Context) UserProfileUserSettingsStudioWebPortalOutput { + return o +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToUserProfileUserSettingsStudioWebPortalPtrOutput() UserProfileUserSettingsStudioWebPortalPtrOutput { + return o.ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(context.Background()) +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(ctx context.Context) UserProfileUserSettingsStudioWebPortalPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserProfileUserSettingsStudioWebPortal) *UserProfileUserSettingsStudioWebPortal { + return &v + }).(UserProfileUserSettingsStudioWebPortalPtrOutput) +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileUserSettingsStudioWebPortal] { + return pulumix.Output[UserProfileUserSettingsStudioWebPortal]{ + OutputState: o.OutputState, + } +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e UserProfileUserSettingsStudioWebPortal) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o UserProfileUserSettingsStudioWebPortalOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e UserProfileUserSettingsStudioWebPortal) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type UserProfileUserSettingsStudioWebPortalPtrOutput struct{ *pulumi.OutputState } + +func (UserProfileUserSettingsStudioWebPortalPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileUserSettingsStudioWebPortal)(nil)).Elem() +} + +func (o UserProfileUserSettingsStudioWebPortalPtrOutput) ToUserProfileUserSettingsStudioWebPortalPtrOutput() UserProfileUserSettingsStudioWebPortalPtrOutput { + return o +} + +func (o UserProfileUserSettingsStudioWebPortalPtrOutput) ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(ctx context.Context) UserProfileUserSettingsStudioWebPortalPtrOutput { + return o +} + +func (o UserProfileUserSettingsStudioWebPortalPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*UserProfileUserSettingsStudioWebPortal] { + return pulumix.Output[*UserProfileUserSettingsStudioWebPortal]{ + OutputState: o.OutputState, + } +} + +func (o UserProfileUserSettingsStudioWebPortalPtrOutput) Elem() UserProfileUserSettingsStudioWebPortalOutput { + return o.ApplyT(func(v *UserProfileUserSettingsStudioWebPortal) UserProfileUserSettingsStudioWebPortal { + if v != nil { + return *v + } + var ret UserProfileUserSettingsStudioWebPortal + return ret + }).(UserProfileUserSettingsStudioWebPortalOutput) +} + +func (o UserProfileUserSettingsStudioWebPortalPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o UserProfileUserSettingsStudioWebPortalPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *UserProfileUserSettingsStudioWebPortal) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// UserProfileUserSettingsStudioWebPortalInput is an input type that accepts UserProfileUserSettingsStudioWebPortalArgs and UserProfileUserSettingsStudioWebPortalOutput values. +// You can construct a concrete instance of `UserProfileUserSettingsStudioWebPortalInput` via: +// +// UserProfileUserSettingsStudioWebPortalArgs{...} +type UserProfileUserSettingsStudioWebPortalInput interface { + pulumi.Input + + ToUserProfileUserSettingsStudioWebPortalOutput() UserProfileUserSettingsStudioWebPortalOutput + ToUserProfileUserSettingsStudioWebPortalOutputWithContext(context.Context) UserProfileUserSettingsStudioWebPortalOutput +} + +var userProfileUserSettingsStudioWebPortalPtrType = reflect.TypeOf((**UserProfileUserSettingsStudioWebPortal)(nil)).Elem() + +type UserProfileUserSettingsStudioWebPortalPtrInput interface { + pulumi.Input + + ToUserProfileUserSettingsStudioWebPortalPtrOutput() UserProfileUserSettingsStudioWebPortalPtrOutput + ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(context.Context) UserProfileUserSettingsStudioWebPortalPtrOutput +} + +type userProfileUserSettingsStudioWebPortalPtr string + +func UserProfileUserSettingsStudioWebPortalPtr(v string) UserProfileUserSettingsStudioWebPortalPtrInput { + return (*userProfileUserSettingsStudioWebPortalPtr)(&v) +} + +func (*userProfileUserSettingsStudioWebPortalPtr) ElementType() reflect.Type { + return userProfileUserSettingsStudioWebPortalPtrType +} + +func (in *userProfileUserSettingsStudioWebPortalPtr) ToUserProfileUserSettingsStudioWebPortalPtrOutput() UserProfileUserSettingsStudioWebPortalPtrOutput { + return pulumi.ToOutput(in).(UserProfileUserSettingsStudioWebPortalPtrOutput) +} + +func (in *userProfileUserSettingsStudioWebPortalPtr) ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(ctx context.Context) UserProfileUserSettingsStudioWebPortalPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(UserProfileUserSettingsStudioWebPortalPtrOutput) +} + +func (in *userProfileUserSettingsStudioWebPortalPtr) ToOutput(ctx context.Context) pulumix.Output[*UserProfileUserSettingsStudioWebPortal] { + return pulumix.Output[*UserProfileUserSettingsStudioWebPortal]{ + OutputState: in.ToUserProfileUserSettingsStudioWebPortalPtrOutputWithContext(ctx).OutputState, + } +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*AppResourceSpecInstanceTypeInput)(nil)).Elem(), AppResourceSpecInstanceType("system")) pulumi.RegisterInputType(reflect.TypeOf((*AppResourceSpecInstanceTypePtrInput)(nil)).Elem(), AppResourceSpecInstanceType("system")) @@ -12790,8 +13347,12 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DomainResourceSpecInstanceTypePtrInput)(nil)).Elem(), DomainResourceSpecInstanceType("system")) pulumi.RegisterInputType(reflect.TypeOf((*DomainSharingSettingsNotebookOutputOptionInput)(nil)).Elem(), DomainSharingSettingsNotebookOutputOption("Allowed")) pulumi.RegisterInputType(reflect.TypeOf((*DomainSharingSettingsNotebookOutputOptionPtrInput)(nil)).Elem(), DomainSharingSettingsNotebookOutputOption("Allowed")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainUserSettingsStudioWebPortalInput)(nil)).Elem(), DomainUserSettingsStudioWebPortal("ENABLED")) + pulumi.RegisterInputType(reflect.TypeOf((*DomainUserSettingsStudioWebPortalPtrInput)(nil)).Elem(), DomainUserSettingsStudioWebPortal("ENABLED")) pulumi.RegisterInputType(reflect.TypeOf((*FeatureGroupFeatureDefinitionFeatureTypeInput)(nil)).Elem(), FeatureGroupFeatureDefinitionFeatureType("Integral")) pulumi.RegisterInputType(reflect.TypeOf((*FeatureGroupFeatureDefinitionFeatureTypePtrInput)(nil)).Elem(), FeatureGroupFeatureDefinitionFeatureType("Integral")) + pulumi.RegisterInputType(reflect.TypeOf((*FeatureGroupStorageTypeInput)(nil)).Elem(), FeatureGroupStorageType("Standard")) + pulumi.RegisterInputType(reflect.TypeOf((*FeatureGroupStorageTypePtrInput)(nil)).Elem(), FeatureGroupStorageType("Standard")) pulumi.RegisterInputType(reflect.TypeOf((*FeatureGroupTableFormatInput)(nil)).Elem(), FeatureGroupTableFormat("Iceberg")) pulumi.RegisterInputType(reflect.TypeOf((*FeatureGroupTableFormatPtrInput)(nil)).Elem(), FeatureGroupTableFormat("Iceberg")) pulumi.RegisterInputType(reflect.TypeOf((*ImageVersionJobTypeInput)(nil)).Elem(), ImageVersionJobType("TRAINING")) @@ -12890,6 +13451,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*UserProfileResourceSpecInstanceTypePtrInput)(nil)).Elem(), UserProfileResourceSpecInstanceType("system")) pulumi.RegisterInputType(reflect.TypeOf((*UserProfileSharingSettingsNotebookOutputOptionInput)(nil)).Elem(), UserProfileSharingSettingsNotebookOutputOption("Allowed")) pulumi.RegisterInputType(reflect.TypeOf((*UserProfileSharingSettingsNotebookOutputOptionPtrInput)(nil)).Elem(), UserProfileSharingSettingsNotebookOutputOption("Allowed")) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileUserSettingsStudioWebPortalInput)(nil)).Elem(), UserProfileUserSettingsStudioWebPortal("ENABLED")) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileUserSettingsStudioWebPortalPtrInput)(nil)).Elem(), UserProfileUserSettingsStudioWebPortal("ENABLED")) pulumi.RegisterOutputType(AppResourceSpecInstanceTypeOutput{}) pulumi.RegisterOutputType(AppResourceSpecInstanceTypePtrOutput{}) pulumi.RegisterOutputType(AppTypeOutput{}) @@ -12918,8 +13481,12 @@ func init() { pulumi.RegisterOutputType(DomainResourceSpecInstanceTypePtrOutput{}) pulumi.RegisterOutputType(DomainSharingSettingsNotebookOutputOptionOutput{}) pulumi.RegisterOutputType(DomainSharingSettingsNotebookOutputOptionPtrOutput{}) + pulumi.RegisterOutputType(DomainUserSettingsStudioWebPortalOutput{}) + pulumi.RegisterOutputType(DomainUserSettingsStudioWebPortalPtrOutput{}) pulumi.RegisterOutputType(FeatureGroupFeatureDefinitionFeatureTypeOutput{}) pulumi.RegisterOutputType(FeatureGroupFeatureDefinitionFeatureTypePtrOutput{}) + pulumi.RegisterOutputType(FeatureGroupStorageTypeOutput{}) + pulumi.RegisterOutputType(FeatureGroupStorageTypePtrOutput{}) pulumi.RegisterOutputType(FeatureGroupTableFormatOutput{}) pulumi.RegisterOutputType(FeatureGroupTableFormatPtrOutput{}) pulumi.RegisterOutputType(ImageVersionJobTypeOutput{}) @@ -13032,4 +13599,6 @@ func init() { pulumi.RegisterOutputType(UserProfileResourceSpecInstanceTypePtrOutput{}) pulumi.RegisterOutputType(UserProfileSharingSettingsNotebookOutputOptionOutput{}) pulumi.RegisterOutputType(UserProfileSharingSettingsNotebookOutputOptionPtrOutput{}) + pulumi.RegisterOutputType(UserProfileUserSettingsStudioWebPortalOutput{}) + pulumi.RegisterOutputType(UserProfileUserSettingsStudioWebPortalPtrOutput{}) } diff --git a/sdk/go/aws/sagemaker/pulumiTypes.go b/sdk/go/aws/sagemaker/pulumiTypes.go index edc4aacf82..34fc89acfa 100644 --- a/sdk/go/aws/sagemaker/pulumiTypes.go +++ b/sdk/go/aws/sagemaker/pulumiTypes.go @@ -4675,6 +4675,428 @@ func (o DeviceTagArrayOutput) Index(i pulumi.IntInput) DeviceTagOutput { }).(DeviceTagOutput) } +// The CodeEditor app settings. +type DomainCodeEditorAppSettings struct { + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + DefaultResourceSpec *DomainResourceSpec `pulumi:"defaultResourceSpec"` + // A list of LifecycleConfigArns available for use with CodeEditor apps. + LifecycleConfigArns []string `pulumi:"lifecycleConfigArns"` +} + +// DomainCodeEditorAppSettingsInput is an input type that accepts DomainCodeEditorAppSettingsArgs and DomainCodeEditorAppSettingsOutput values. +// You can construct a concrete instance of `DomainCodeEditorAppSettingsInput` via: +// +// DomainCodeEditorAppSettingsArgs{...} +type DomainCodeEditorAppSettingsInput interface { + pulumi.Input + + ToDomainCodeEditorAppSettingsOutput() DomainCodeEditorAppSettingsOutput + ToDomainCodeEditorAppSettingsOutputWithContext(context.Context) DomainCodeEditorAppSettingsOutput +} + +// The CodeEditor app settings. +type DomainCodeEditorAppSettingsArgs struct { + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + DefaultResourceSpec DomainResourceSpecPtrInput `pulumi:"defaultResourceSpec"` + // A list of LifecycleConfigArns available for use with CodeEditor apps. + LifecycleConfigArns pulumi.StringArrayInput `pulumi:"lifecycleConfigArns"` +} + +func (DomainCodeEditorAppSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainCodeEditorAppSettings)(nil)).Elem() +} + +func (i DomainCodeEditorAppSettingsArgs) ToDomainCodeEditorAppSettingsOutput() DomainCodeEditorAppSettingsOutput { + return i.ToDomainCodeEditorAppSettingsOutputWithContext(context.Background()) +} + +func (i DomainCodeEditorAppSettingsArgs) ToDomainCodeEditorAppSettingsOutputWithContext(ctx context.Context) DomainCodeEditorAppSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCodeEditorAppSettingsOutput) +} + +func (i DomainCodeEditorAppSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[DomainCodeEditorAppSettings] { + return pulumix.Output[DomainCodeEditorAppSettings]{ + OutputState: i.ToDomainCodeEditorAppSettingsOutputWithContext(ctx).OutputState, + } +} + +func (i DomainCodeEditorAppSettingsArgs) ToDomainCodeEditorAppSettingsPtrOutput() DomainCodeEditorAppSettingsPtrOutput { + return i.ToDomainCodeEditorAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i DomainCodeEditorAppSettingsArgs) ToDomainCodeEditorAppSettingsPtrOutputWithContext(ctx context.Context) DomainCodeEditorAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCodeEditorAppSettingsOutput).ToDomainCodeEditorAppSettingsPtrOutputWithContext(ctx) +} + +// DomainCodeEditorAppSettingsPtrInput is an input type that accepts DomainCodeEditorAppSettingsArgs, DomainCodeEditorAppSettingsPtr and DomainCodeEditorAppSettingsPtrOutput values. +// You can construct a concrete instance of `DomainCodeEditorAppSettingsPtrInput` via: +// +// DomainCodeEditorAppSettingsArgs{...} +// +// or: +// +// nil +type DomainCodeEditorAppSettingsPtrInput interface { + pulumi.Input + + ToDomainCodeEditorAppSettingsPtrOutput() DomainCodeEditorAppSettingsPtrOutput + ToDomainCodeEditorAppSettingsPtrOutputWithContext(context.Context) DomainCodeEditorAppSettingsPtrOutput +} + +type domainCodeEditorAppSettingsPtrType DomainCodeEditorAppSettingsArgs + +func DomainCodeEditorAppSettingsPtr(v *DomainCodeEditorAppSettingsArgs) DomainCodeEditorAppSettingsPtrInput { + return (*domainCodeEditorAppSettingsPtrType)(v) +} + +func (*domainCodeEditorAppSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainCodeEditorAppSettings)(nil)).Elem() +} + +func (i *domainCodeEditorAppSettingsPtrType) ToDomainCodeEditorAppSettingsPtrOutput() DomainCodeEditorAppSettingsPtrOutput { + return i.ToDomainCodeEditorAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i *domainCodeEditorAppSettingsPtrType) ToDomainCodeEditorAppSettingsPtrOutputWithContext(ctx context.Context) DomainCodeEditorAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCodeEditorAppSettingsPtrOutput) +} + +func (i *domainCodeEditorAppSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainCodeEditorAppSettings] { + return pulumix.Output[*DomainCodeEditorAppSettings]{ + OutputState: i.ToDomainCodeEditorAppSettingsPtrOutputWithContext(ctx).OutputState, + } +} + +// The CodeEditor app settings. +type DomainCodeEditorAppSettingsOutput struct{ *pulumi.OutputState } + +func (DomainCodeEditorAppSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainCodeEditorAppSettings)(nil)).Elem() +} + +func (o DomainCodeEditorAppSettingsOutput) ToDomainCodeEditorAppSettingsOutput() DomainCodeEditorAppSettingsOutput { + return o +} + +func (o DomainCodeEditorAppSettingsOutput) ToDomainCodeEditorAppSettingsOutputWithContext(ctx context.Context) DomainCodeEditorAppSettingsOutput { + return o +} + +func (o DomainCodeEditorAppSettingsOutput) ToDomainCodeEditorAppSettingsPtrOutput() DomainCodeEditorAppSettingsPtrOutput { + return o.ToDomainCodeEditorAppSettingsPtrOutputWithContext(context.Background()) +} + +func (o DomainCodeEditorAppSettingsOutput) ToDomainCodeEditorAppSettingsPtrOutputWithContext(ctx context.Context) DomainCodeEditorAppSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainCodeEditorAppSettings) *DomainCodeEditorAppSettings { + return &v + }).(DomainCodeEditorAppSettingsPtrOutput) +} + +func (o DomainCodeEditorAppSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[DomainCodeEditorAppSettings] { + return pulumix.Output[DomainCodeEditorAppSettings]{ + OutputState: o.OutputState, + } +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. +func (o DomainCodeEditorAppSettingsOutput) DefaultResourceSpec() DomainResourceSpecPtrOutput { + return o.ApplyT(func(v DomainCodeEditorAppSettings) *DomainResourceSpec { return v.DefaultResourceSpec }).(DomainResourceSpecPtrOutput) +} + +// A list of LifecycleConfigArns available for use with CodeEditor apps. +func (o DomainCodeEditorAppSettingsOutput) LifecycleConfigArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v DomainCodeEditorAppSettings) []string { return v.LifecycleConfigArns }).(pulumi.StringArrayOutput) +} + +type DomainCodeEditorAppSettingsPtrOutput struct{ *pulumi.OutputState } + +func (DomainCodeEditorAppSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainCodeEditorAppSettings)(nil)).Elem() +} + +func (o DomainCodeEditorAppSettingsPtrOutput) ToDomainCodeEditorAppSettingsPtrOutput() DomainCodeEditorAppSettingsPtrOutput { + return o +} + +func (o DomainCodeEditorAppSettingsPtrOutput) ToDomainCodeEditorAppSettingsPtrOutputWithContext(ctx context.Context) DomainCodeEditorAppSettingsPtrOutput { + return o +} + +func (o DomainCodeEditorAppSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainCodeEditorAppSettings] { + return pulumix.Output[*DomainCodeEditorAppSettings]{ + OutputState: o.OutputState, + } +} + +func (o DomainCodeEditorAppSettingsPtrOutput) Elem() DomainCodeEditorAppSettingsOutput { + return o.ApplyT(func(v *DomainCodeEditorAppSettings) DomainCodeEditorAppSettings { + if v != nil { + return *v + } + var ret DomainCodeEditorAppSettings + return ret + }).(DomainCodeEditorAppSettingsOutput) +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. +func (o DomainCodeEditorAppSettingsPtrOutput) DefaultResourceSpec() DomainResourceSpecPtrOutput { + return o.ApplyT(func(v *DomainCodeEditorAppSettings) *DomainResourceSpec { + if v == nil { + return nil + } + return v.DefaultResourceSpec + }).(DomainResourceSpecPtrOutput) +} + +// A list of LifecycleConfigArns available for use with CodeEditor apps. +func (o DomainCodeEditorAppSettingsPtrOutput) LifecycleConfigArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DomainCodeEditorAppSettings) []string { + if v == nil { + return nil + } + return v.LifecycleConfigArns + }).(pulumi.StringArrayOutput) +} + +type DomainCodeRepository struct { + // A CodeRepository (valid URL) to be used within Jupyter's Git extension. + RepositoryUrl string `pulumi:"repositoryUrl"` +} + +// DomainCodeRepositoryInput is an input type that accepts DomainCodeRepositoryArgs and DomainCodeRepositoryOutput values. +// You can construct a concrete instance of `DomainCodeRepositoryInput` via: +// +// DomainCodeRepositoryArgs{...} +type DomainCodeRepositoryInput interface { + pulumi.Input + + ToDomainCodeRepositoryOutput() DomainCodeRepositoryOutput + ToDomainCodeRepositoryOutputWithContext(context.Context) DomainCodeRepositoryOutput +} + +type DomainCodeRepositoryArgs struct { + // A CodeRepository (valid URL) to be used within Jupyter's Git extension. + RepositoryUrl pulumi.StringInput `pulumi:"repositoryUrl"` +} + +func (DomainCodeRepositoryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainCodeRepository)(nil)).Elem() +} + +func (i DomainCodeRepositoryArgs) ToDomainCodeRepositoryOutput() DomainCodeRepositoryOutput { + return i.ToDomainCodeRepositoryOutputWithContext(context.Background()) +} + +func (i DomainCodeRepositoryArgs) ToDomainCodeRepositoryOutputWithContext(ctx context.Context) DomainCodeRepositoryOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCodeRepositoryOutput) +} + +func (i DomainCodeRepositoryArgs) ToOutput(ctx context.Context) pulumix.Output[DomainCodeRepository] { + return pulumix.Output[DomainCodeRepository]{ + OutputState: i.ToDomainCodeRepositoryOutputWithContext(ctx).OutputState, + } +} + +// DomainCodeRepositoryArrayInput is an input type that accepts DomainCodeRepositoryArray and DomainCodeRepositoryArrayOutput values. +// You can construct a concrete instance of `DomainCodeRepositoryArrayInput` via: +// +// DomainCodeRepositoryArray{ DomainCodeRepositoryArgs{...} } +type DomainCodeRepositoryArrayInput interface { + pulumi.Input + + ToDomainCodeRepositoryArrayOutput() DomainCodeRepositoryArrayOutput + ToDomainCodeRepositoryArrayOutputWithContext(context.Context) DomainCodeRepositoryArrayOutput +} + +type DomainCodeRepositoryArray []DomainCodeRepositoryInput + +func (DomainCodeRepositoryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DomainCodeRepository)(nil)).Elem() +} + +func (i DomainCodeRepositoryArray) ToDomainCodeRepositoryArrayOutput() DomainCodeRepositoryArrayOutput { + return i.ToDomainCodeRepositoryArrayOutputWithContext(context.Background()) +} + +func (i DomainCodeRepositoryArray) ToDomainCodeRepositoryArrayOutputWithContext(ctx context.Context) DomainCodeRepositoryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCodeRepositoryArrayOutput) +} + +func (i DomainCodeRepositoryArray) ToOutput(ctx context.Context) pulumix.Output[[]DomainCodeRepository] { + return pulumix.Output[[]DomainCodeRepository]{ + OutputState: i.ToDomainCodeRepositoryArrayOutputWithContext(ctx).OutputState, + } +} + +type DomainCodeRepositoryOutput struct{ *pulumi.OutputState } + +func (DomainCodeRepositoryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainCodeRepository)(nil)).Elem() +} + +func (o DomainCodeRepositoryOutput) ToDomainCodeRepositoryOutput() DomainCodeRepositoryOutput { + return o +} + +func (o DomainCodeRepositoryOutput) ToDomainCodeRepositoryOutputWithContext(ctx context.Context) DomainCodeRepositoryOutput { + return o +} + +func (o DomainCodeRepositoryOutput) ToOutput(ctx context.Context) pulumix.Output[DomainCodeRepository] { + return pulumix.Output[DomainCodeRepository]{ + OutputState: o.OutputState, + } +} + +// A CodeRepository (valid URL) to be used within Jupyter's Git extension. +func (o DomainCodeRepositoryOutput) RepositoryUrl() pulumi.StringOutput { + return o.ApplyT(func(v DomainCodeRepository) string { return v.RepositoryUrl }).(pulumi.StringOutput) +} + +type DomainCodeRepositoryArrayOutput struct{ *pulumi.OutputState } + +func (DomainCodeRepositoryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DomainCodeRepository)(nil)).Elem() +} + +func (o DomainCodeRepositoryArrayOutput) ToDomainCodeRepositoryArrayOutput() DomainCodeRepositoryArrayOutput { + return o +} + +func (o DomainCodeRepositoryArrayOutput) ToDomainCodeRepositoryArrayOutputWithContext(ctx context.Context) DomainCodeRepositoryArrayOutput { + return o +} + +func (o DomainCodeRepositoryArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]DomainCodeRepository] { + return pulumix.Output[[]DomainCodeRepository]{ + OutputState: o.OutputState, + } +} + +func (o DomainCodeRepositoryArrayOutput) Index(i pulumi.IntInput) DomainCodeRepositoryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DomainCodeRepository { + return vs[0].([]DomainCodeRepository)[vs[1].(int)] + }).(DomainCodeRepositoryOutput) +} + +type DomainCustomFileSystemConfig struct { + EfsFileSystemConfig *DomainEfsFileSystemConfig `pulumi:"efsFileSystemConfig"` +} + +// DomainCustomFileSystemConfigInput is an input type that accepts DomainCustomFileSystemConfigArgs and DomainCustomFileSystemConfigOutput values. +// You can construct a concrete instance of `DomainCustomFileSystemConfigInput` via: +// +// DomainCustomFileSystemConfigArgs{...} +type DomainCustomFileSystemConfigInput interface { + pulumi.Input + + ToDomainCustomFileSystemConfigOutput() DomainCustomFileSystemConfigOutput + ToDomainCustomFileSystemConfigOutputWithContext(context.Context) DomainCustomFileSystemConfigOutput +} + +type DomainCustomFileSystemConfigArgs struct { + EfsFileSystemConfig DomainEfsFileSystemConfigPtrInput `pulumi:"efsFileSystemConfig"` +} + +func (DomainCustomFileSystemConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainCustomFileSystemConfig)(nil)).Elem() +} + +func (i DomainCustomFileSystemConfigArgs) ToDomainCustomFileSystemConfigOutput() DomainCustomFileSystemConfigOutput { + return i.ToDomainCustomFileSystemConfigOutputWithContext(context.Background()) +} + +func (i DomainCustomFileSystemConfigArgs) ToDomainCustomFileSystemConfigOutputWithContext(ctx context.Context) DomainCustomFileSystemConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCustomFileSystemConfigOutput) +} + +func (i DomainCustomFileSystemConfigArgs) ToOutput(ctx context.Context) pulumix.Output[DomainCustomFileSystemConfig] { + return pulumix.Output[DomainCustomFileSystemConfig]{ + OutputState: i.ToDomainCustomFileSystemConfigOutputWithContext(ctx).OutputState, + } +} + +// DomainCustomFileSystemConfigArrayInput is an input type that accepts DomainCustomFileSystemConfigArray and DomainCustomFileSystemConfigArrayOutput values. +// You can construct a concrete instance of `DomainCustomFileSystemConfigArrayInput` via: +// +// DomainCustomFileSystemConfigArray{ DomainCustomFileSystemConfigArgs{...} } +type DomainCustomFileSystemConfigArrayInput interface { + pulumi.Input + + ToDomainCustomFileSystemConfigArrayOutput() DomainCustomFileSystemConfigArrayOutput + ToDomainCustomFileSystemConfigArrayOutputWithContext(context.Context) DomainCustomFileSystemConfigArrayOutput +} + +type DomainCustomFileSystemConfigArray []DomainCustomFileSystemConfigInput + +func (DomainCustomFileSystemConfigArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]DomainCustomFileSystemConfig)(nil)).Elem() +} + +func (i DomainCustomFileSystemConfigArray) ToDomainCustomFileSystemConfigArrayOutput() DomainCustomFileSystemConfigArrayOutput { + return i.ToDomainCustomFileSystemConfigArrayOutputWithContext(context.Background()) +} + +func (i DomainCustomFileSystemConfigArray) ToDomainCustomFileSystemConfigArrayOutputWithContext(ctx context.Context) DomainCustomFileSystemConfigArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCustomFileSystemConfigArrayOutput) +} + +func (i DomainCustomFileSystemConfigArray) ToOutput(ctx context.Context) pulumix.Output[[]DomainCustomFileSystemConfig] { + return pulumix.Output[[]DomainCustomFileSystemConfig]{ + OutputState: i.ToDomainCustomFileSystemConfigArrayOutputWithContext(ctx).OutputState, + } +} + +type DomainCustomFileSystemConfigOutput struct{ *pulumi.OutputState } + +func (DomainCustomFileSystemConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainCustomFileSystemConfig)(nil)).Elem() +} + +func (o DomainCustomFileSystemConfigOutput) ToDomainCustomFileSystemConfigOutput() DomainCustomFileSystemConfigOutput { + return o +} + +func (o DomainCustomFileSystemConfigOutput) ToDomainCustomFileSystemConfigOutputWithContext(ctx context.Context) DomainCustomFileSystemConfigOutput { + return o +} + +func (o DomainCustomFileSystemConfigOutput) ToOutput(ctx context.Context) pulumix.Output[DomainCustomFileSystemConfig] { + return pulumix.Output[DomainCustomFileSystemConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainCustomFileSystemConfigOutput) EfsFileSystemConfig() DomainEfsFileSystemConfigPtrOutput { + return o.ApplyT(func(v DomainCustomFileSystemConfig) *DomainEfsFileSystemConfig { return v.EfsFileSystemConfig }).(DomainEfsFileSystemConfigPtrOutput) +} + +type DomainCustomFileSystemConfigArrayOutput struct{ *pulumi.OutputState } + +func (DomainCustomFileSystemConfigArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]DomainCustomFileSystemConfig)(nil)).Elem() +} + +func (o DomainCustomFileSystemConfigArrayOutput) ToDomainCustomFileSystemConfigArrayOutput() DomainCustomFileSystemConfigArrayOutput { + return o +} + +func (o DomainCustomFileSystemConfigArrayOutput) ToDomainCustomFileSystemConfigArrayOutputWithContext(ctx context.Context) DomainCustomFileSystemConfigArrayOutput { + return o +} + +func (o DomainCustomFileSystemConfigArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]DomainCustomFileSystemConfig] { + return pulumix.Output[[]DomainCustomFileSystemConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainCustomFileSystemConfigArrayOutput) Index(i pulumi.IntInput) DomainCustomFileSystemConfigOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) DomainCustomFileSystemConfig { + return vs[0].([]DomainCustomFileSystemConfig)[vs[1].(int)] + }).(DomainCustomFileSystemConfigOutput) +} + // A custom SageMaker image. type DomainCustomImage struct { // The Name of the AppImageConfig. @@ -4817,6 +5239,361 @@ func (o DomainCustomImageArrayOutput) Index(i pulumi.IntInput) DomainCustomImage }).(DomainCustomImageOutput) } +type DomainCustomPosixUserConfig struct { + Gid int `pulumi:"gid"` + Uid int `pulumi:"uid"` +} + +// DomainCustomPosixUserConfigInput is an input type that accepts DomainCustomPosixUserConfigArgs and DomainCustomPosixUserConfigOutput values. +// You can construct a concrete instance of `DomainCustomPosixUserConfigInput` via: +// +// DomainCustomPosixUserConfigArgs{...} +type DomainCustomPosixUserConfigInput interface { + pulumi.Input + + ToDomainCustomPosixUserConfigOutput() DomainCustomPosixUserConfigOutput + ToDomainCustomPosixUserConfigOutputWithContext(context.Context) DomainCustomPosixUserConfigOutput +} + +type DomainCustomPosixUserConfigArgs struct { + Gid pulumi.IntInput `pulumi:"gid"` + Uid pulumi.IntInput `pulumi:"uid"` +} + +func (DomainCustomPosixUserConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainCustomPosixUserConfig)(nil)).Elem() +} + +func (i DomainCustomPosixUserConfigArgs) ToDomainCustomPosixUserConfigOutput() DomainCustomPosixUserConfigOutput { + return i.ToDomainCustomPosixUserConfigOutputWithContext(context.Background()) +} + +func (i DomainCustomPosixUserConfigArgs) ToDomainCustomPosixUserConfigOutputWithContext(ctx context.Context) DomainCustomPosixUserConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCustomPosixUserConfigOutput) +} + +func (i DomainCustomPosixUserConfigArgs) ToOutput(ctx context.Context) pulumix.Output[DomainCustomPosixUserConfig] { + return pulumix.Output[DomainCustomPosixUserConfig]{ + OutputState: i.ToDomainCustomPosixUserConfigOutputWithContext(ctx).OutputState, + } +} + +func (i DomainCustomPosixUserConfigArgs) ToDomainCustomPosixUserConfigPtrOutput() DomainCustomPosixUserConfigPtrOutput { + return i.ToDomainCustomPosixUserConfigPtrOutputWithContext(context.Background()) +} + +func (i DomainCustomPosixUserConfigArgs) ToDomainCustomPosixUserConfigPtrOutputWithContext(ctx context.Context) DomainCustomPosixUserConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCustomPosixUserConfigOutput).ToDomainCustomPosixUserConfigPtrOutputWithContext(ctx) +} + +// DomainCustomPosixUserConfigPtrInput is an input type that accepts DomainCustomPosixUserConfigArgs, DomainCustomPosixUserConfigPtr and DomainCustomPosixUserConfigPtrOutput values. +// You can construct a concrete instance of `DomainCustomPosixUserConfigPtrInput` via: +// +// DomainCustomPosixUserConfigArgs{...} +// +// or: +// +// nil +type DomainCustomPosixUserConfigPtrInput interface { + pulumi.Input + + ToDomainCustomPosixUserConfigPtrOutput() DomainCustomPosixUserConfigPtrOutput + ToDomainCustomPosixUserConfigPtrOutputWithContext(context.Context) DomainCustomPosixUserConfigPtrOutput +} + +type domainCustomPosixUserConfigPtrType DomainCustomPosixUserConfigArgs + +func DomainCustomPosixUserConfigPtr(v *DomainCustomPosixUserConfigArgs) DomainCustomPosixUserConfigPtrInput { + return (*domainCustomPosixUserConfigPtrType)(v) +} + +func (*domainCustomPosixUserConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainCustomPosixUserConfig)(nil)).Elem() +} + +func (i *domainCustomPosixUserConfigPtrType) ToDomainCustomPosixUserConfigPtrOutput() DomainCustomPosixUserConfigPtrOutput { + return i.ToDomainCustomPosixUserConfigPtrOutputWithContext(context.Background()) +} + +func (i *domainCustomPosixUserConfigPtrType) ToDomainCustomPosixUserConfigPtrOutputWithContext(ctx context.Context) DomainCustomPosixUserConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainCustomPosixUserConfigPtrOutput) +} + +func (i *domainCustomPosixUserConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainCustomPosixUserConfig] { + return pulumix.Output[*DomainCustomPosixUserConfig]{ + OutputState: i.ToDomainCustomPosixUserConfigPtrOutputWithContext(ctx).OutputState, + } +} + +type DomainCustomPosixUserConfigOutput struct{ *pulumi.OutputState } + +func (DomainCustomPosixUserConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainCustomPosixUserConfig)(nil)).Elem() +} + +func (o DomainCustomPosixUserConfigOutput) ToDomainCustomPosixUserConfigOutput() DomainCustomPosixUserConfigOutput { + return o +} + +func (o DomainCustomPosixUserConfigOutput) ToDomainCustomPosixUserConfigOutputWithContext(ctx context.Context) DomainCustomPosixUserConfigOutput { + return o +} + +func (o DomainCustomPosixUserConfigOutput) ToDomainCustomPosixUserConfigPtrOutput() DomainCustomPosixUserConfigPtrOutput { + return o.ToDomainCustomPosixUserConfigPtrOutputWithContext(context.Background()) +} + +func (o DomainCustomPosixUserConfigOutput) ToDomainCustomPosixUserConfigPtrOutputWithContext(ctx context.Context) DomainCustomPosixUserConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainCustomPosixUserConfig) *DomainCustomPosixUserConfig { + return &v + }).(DomainCustomPosixUserConfigPtrOutput) +} + +func (o DomainCustomPosixUserConfigOutput) ToOutput(ctx context.Context) pulumix.Output[DomainCustomPosixUserConfig] { + return pulumix.Output[DomainCustomPosixUserConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainCustomPosixUserConfigOutput) Gid() pulumi.IntOutput { + return o.ApplyT(func(v DomainCustomPosixUserConfig) int { return v.Gid }).(pulumi.IntOutput) +} + +func (o DomainCustomPosixUserConfigOutput) Uid() pulumi.IntOutput { + return o.ApplyT(func(v DomainCustomPosixUserConfig) int { return v.Uid }).(pulumi.IntOutput) +} + +type DomainCustomPosixUserConfigPtrOutput struct{ *pulumi.OutputState } + +func (DomainCustomPosixUserConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainCustomPosixUserConfig)(nil)).Elem() +} + +func (o DomainCustomPosixUserConfigPtrOutput) ToDomainCustomPosixUserConfigPtrOutput() DomainCustomPosixUserConfigPtrOutput { + return o +} + +func (o DomainCustomPosixUserConfigPtrOutput) ToDomainCustomPosixUserConfigPtrOutputWithContext(ctx context.Context) DomainCustomPosixUserConfigPtrOutput { + return o +} + +func (o DomainCustomPosixUserConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainCustomPosixUserConfig] { + return pulumix.Output[*DomainCustomPosixUserConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainCustomPosixUserConfigPtrOutput) Elem() DomainCustomPosixUserConfigOutput { + return o.ApplyT(func(v *DomainCustomPosixUserConfig) DomainCustomPosixUserConfig { + if v != nil { + return *v + } + var ret DomainCustomPosixUserConfig + return ret + }).(DomainCustomPosixUserConfigOutput) +} + +func (o DomainCustomPosixUserConfigPtrOutput) Gid() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DomainCustomPosixUserConfig) *int { + if v == nil { + return nil + } + return &v.Gid + }).(pulumi.IntPtrOutput) +} + +func (o DomainCustomPosixUserConfigPtrOutput) Uid() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DomainCustomPosixUserConfig) *int { + if v == nil { + return nil + } + return &v.Uid + }).(pulumi.IntPtrOutput) +} + +// Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS +type DomainDefaultEbsStorageSettings struct { + // Default size of the Amazon EBS volume in Gb + DefaultEbsVolumeSizeInGb int `pulumi:"defaultEbsVolumeSizeInGb"` + // Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + MaximumEbsVolumeSizeInGb int `pulumi:"maximumEbsVolumeSizeInGb"` +} + +// DomainDefaultEbsStorageSettingsInput is an input type that accepts DomainDefaultEbsStorageSettingsArgs and DomainDefaultEbsStorageSettingsOutput values. +// You can construct a concrete instance of `DomainDefaultEbsStorageSettingsInput` via: +// +// DomainDefaultEbsStorageSettingsArgs{...} +type DomainDefaultEbsStorageSettingsInput interface { + pulumi.Input + + ToDomainDefaultEbsStorageSettingsOutput() DomainDefaultEbsStorageSettingsOutput + ToDomainDefaultEbsStorageSettingsOutputWithContext(context.Context) DomainDefaultEbsStorageSettingsOutput +} + +// Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS +type DomainDefaultEbsStorageSettingsArgs struct { + // Default size of the Amazon EBS volume in Gb + DefaultEbsVolumeSizeInGb pulumi.IntInput `pulumi:"defaultEbsVolumeSizeInGb"` + // Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + MaximumEbsVolumeSizeInGb pulumi.IntInput `pulumi:"maximumEbsVolumeSizeInGb"` +} + +func (DomainDefaultEbsStorageSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainDefaultEbsStorageSettings)(nil)).Elem() +} + +func (i DomainDefaultEbsStorageSettingsArgs) ToDomainDefaultEbsStorageSettingsOutput() DomainDefaultEbsStorageSettingsOutput { + return i.ToDomainDefaultEbsStorageSettingsOutputWithContext(context.Background()) +} + +func (i DomainDefaultEbsStorageSettingsArgs) ToDomainDefaultEbsStorageSettingsOutputWithContext(ctx context.Context) DomainDefaultEbsStorageSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainDefaultEbsStorageSettingsOutput) +} + +func (i DomainDefaultEbsStorageSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[DomainDefaultEbsStorageSettings] { + return pulumix.Output[DomainDefaultEbsStorageSettings]{ + OutputState: i.ToDomainDefaultEbsStorageSettingsOutputWithContext(ctx).OutputState, + } +} + +func (i DomainDefaultEbsStorageSettingsArgs) ToDomainDefaultEbsStorageSettingsPtrOutput() DomainDefaultEbsStorageSettingsPtrOutput { + return i.ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(context.Background()) +} + +func (i DomainDefaultEbsStorageSettingsArgs) ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(ctx context.Context) DomainDefaultEbsStorageSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainDefaultEbsStorageSettingsOutput).ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(ctx) +} + +// DomainDefaultEbsStorageSettingsPtrInput is an input type that accepts DomainDefaultEbsStorageSettingsArgs, DomainDefaultEbsStorageSettingsPtr and DomainDefaultEbsStorageSettingsPtrOutput values. +// You can construct a concrete instance of `DomainDefaultEbsStorageSettingsPtrInput` via: +// +// DomainDefaultEbsStorageSettingsArgs{...} +// +// or: +// +// nil +type DomainDefaultEbsStorageSettingsPtrInput interface { + pulumi.Input + + ToDomainDefaultEbsStorageSettingsPtrOutput() DomainDefaultEbsStorageSettingsPtrOutput + ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(context.Context) DomainDefaultEbsStorageSettingsPtrOutput +} + +type domainDefaultEbsStorageSettingsPtrType DomainDefaultEbsStorageSettingsArgs + +func DomainDefaultEbsStorageSettingsPtr(v *DomainDefaultEbsStorageSettingsArgs) DomainDefaultEbsStorageSettingsPtrInput { + return (*domainDefaultEbsStorageSettingsPtrType)(v) +} + +func (*domainDefaultEbsStorageSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainDefaultEbsStorageSettings)(nil)).Elem() +} + +func (i *domainDefaultEbsStorageSettingsPtrType) ToDomainDefaultEbsStorageSettingsPtrOutput() DomainDefaultEbsStorageSettingsPtrOutput { + return i.ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(context.Background()) +} + +func (i *domainDefaultEbsStorageSettingsPtrType) ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(ctx context.Context) DomainDefaultEbsStorageSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainDefaultEbsStorageSettingsPtrOutput) +} + +func (i *domainDefaultEbsStorageSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainDefaultEbsStorageSettings] { + return pulumix.Output[*DomainDefaultEbsStorageSettings]{ + OutputState: i.ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(ctx).OutputState, + } +} + +// Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS +type DomainDefaultEbsStorageSettingsOutput struct{ *pulumi.OutputState } + +func (DomainDefaultEbsStorageSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainDefaultEbsStorageSettings)(nil)).Elem() +} + +func (o DomainDefaultEbsStorageSettingsOutput) ToDomainDefaultEbsStorageSettingsOutput() DomainDefaultEbsStorageSettingsOutput { + return o +} + +func (o DomainDefaultEbsStorageSettingsOutput) ToDomainDefaultEbsStorageSettingsOutputWithContext(ctx context.Context) DomainDefaultEbsStorageSettingsOutput { + return o +} + +func (o DomainDefaultEbsStorageSettingsOutput) ToDomainDefaultEbsStorageSettingsPtrOutput() DomainDefaultEbsStorageSettingsPtrOutput { + return o.ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(context.Background()) +} + +func (o DomainDefaultEbsStorageSettingsOutput) ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(ctx context.Context) DomainDefaultEbsStorageSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainDefaultEbsStorageSettings) *DomainDefaultEbsStorageSettings { + return &v + }).(DomainDefaultEbsStorageSettingsPtrOutput) +} + +func (o DomainDefaultEbsStorageSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[DomainDefaultEbsStorageSettings] { + return pulumix.Output[DomainDefaultEbsStorageSettings]{ + OutputState: o.OutputState, + } +} + +// Default size of the Amazon EBS volume in Gb +func (o DomainDefaultEbsStorageSettingsOutput) DefaultEbsVolumeSizeInGb() pulumi.IntOutput { + return o.ApplyT(func(v DomainDefaultEbsStorageSettings) int { return v.DefaultEbsVolumeSizeInGb }).(pulumi.IntOutput) +} + +// Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. +func (o DomainDefaultEbsStorageSettingsOutput) MaximumEbsVolumeSizeInGb() pulumi.IntOutput { + return o.ApplyT(func(v DomainDefaultEbsStorageSettings) int { return v.MaximumEbsVolumeSizeInGb }).(pulumi.IntOutput) +} + +type DomainDefaultEbsStorageSettingsPtrOutput struct{ *pulumi.OutputState } + +func (DomainDefaultEbsStorageSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainDefaultEbsStorageSettings)(nil)).Elem() +} + +func (o DomainDefaultEbsStorageSettingsPtrOutput) ToDomainDefaultEbsStorageSettingsPtrOutput() DomainDefaultEbsStorageSettingsPtrOutput { + return o +} + +func (o DomainDefaultEbsStorageSettingsPtrOutput) ToDomainDefaultEbsStorageSettingsPtrOutputWithContext(ctx context.Context) DomainDefaultEbsStorageSettingsPtrOutput { + return o +} + +func (o DomainDefaultEbsStorageSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainDefaultEbsStorageSettings] { + return pulumix.Output[*DomainDefaultEbsStorageSettings]{ + OutputState: o.OutputState, + } +} + +func (o DomainDefaultEbsStorageSettingsPtrOutput) Elem() DomainDefaultEbsStorageSettingsOutput { + return o.ApplyT(func(v *DomainDefaultEbsStorageSettings) DomainDefaultEbsStorageSettings { + if v != nil { + return *v + } + var ret DomainDefaultEbsStorageSettings + return ret + }).(DomainDefaultEbsStorageSettingsOutput) +} + +// Default size of the Amazon EBS volume in Gb +func (o DomainDefaultEbsStorageSettingsPtrOutput) DefaultEbsVolumeSizeInGb() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DomainDefaultEbsStorageSettings) *int { + if v == nil { + return nil + } + return &v.DefaultEbsVolumeSizeInGb + }).(pulumi.IntPtrOutput) +} + +// Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. +func (o DomainDefaultEbsStorageSettingsPtrOutput) MaximumEbsVolumeSizeInGb() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DomainDefaultEbsStorageSettings) *int { + if v == nil { + return nil + } + return &v.MaximumEbsVolumeSizeInGb + }).(pulumi.IntPtrOutput) +} + // 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 execution role for the space. @@ -5038,199 +5815,754 @@ func (o DomainDefaultSpaceSettingsPtrOutput) SecurityGroups() pulumi.StringArray }).(pulumi.StringArrayOutput) } -// The JupyterServer app settings. -type DomainJupyterServerAppSettings struct { - DefaultResourceSpec *DomainResourceSpec `pulumi:"defaultResourceSpec"` +// Default storage settings for a space. +type DomainDefaultSpaceStorageSettings struct { + DefaultEbsStorageSettings *DomainDefaultEbsStorageSettings `pulumi:"defaultEbsStorageSettings"` } -// DomainJupyterServerAppSettingsInput is an input type that accepts DomainJupyterServerAppSettingsArgs and DomainJupyterServerAppSettingsOutput values. -// You can construct a concrete instance of `DomainJupyterServerAppSettingsInput` via: +// DomainDefaultSpaceStorageSettingsInput is an input type that accepts DomainDefaultSpaceStorageSettingsArgs and DomainDefaultSpaceStorageSettingsOutput values. +// You can construct a concrete instance of `DomainDefaultSpaceStorageSettingsInput` via: // -// DomainJupyterServerAppSettingsArgs{...} -type DomainJupyterServerAppSettingsInput interface { +// DomainDefaultSpaceStorageSettingsArgs{...} +type DomainDefaultSpaceStorageSettingsInput interface { pulumi.Input - ToDomainJupyterServerAppSettingsOutput() DomainJupyterServerAppSettingsOutput - ToDomainJupyterServerAppSettingsOutputWithContext(context.Context) DomainJupyterServerAppSettingsOutput + ToDomainDefaultSpaceStorageSettingsOutput() DomainDefaultSpaceStorageSettingsOutput + ToDomainDefaultSpaceStorageSettingsOutputWithContext(context.Context) DomainDefaultSpaceStorageSettingsOutput } -// The JupyterServer app settings. -type DomainJupyterServerAppSettingsArgs struct { - DefaultResourceSpec DomainResourceSpecPtrInput `pulumi:"defaultResourceSpec"` +// Default storage settings for a space. +type DomainDefaultSpaceStorageSettingsArgs struct { + DefaultEbsStorageSettings DomainDefaultEbsStorageSettingsPtrInput `pulumi:"defaultEbsStorageSettings"` } -func (DomainJupyterServerAppSettingsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DomainJupyterServerAppSettings)(nil)).Elem() +func (DomainDefaultSpaceStorageSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainDefaultSpaceStorageSettings)(nil)).Elem() } -func (i DomainJupyterServerAppSettingsArgs) ToDomainJupyterServerAppSettingsOutput() DomainJupyterServerAppSettingsOutput { - return i.ToDomainJupyterServerAppSettingsOutputWithContext(context.Background()) +func (i DomainDefaultSpaceStorageSettingsArgs) ToDomainDefaultSpaceStorageSettingsOutput() DomainDefaultSpaceStorageSettingsOutput { + return i.ToDomainDefaultSpaceStorageSettingsOutputWithContext(context.Background()) } -func (i DomainJupyterServerAppSettingsArgs) ToDomainJupyterServerAppSettingsOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsOutput { - return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterServerAppSettingsOutput) +func (i DomainDefaultSpaceStorageSettingsArgs) ToDomainDefaultSpaceStorageSettingsOutputWithContext(ctx context.Context) DomainDefaultSpaceStorageSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainDefaultSpaceStorageSettingsOutput) } -func (i DomainJupyterServerAppSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[DomainJupyterServerAppSettings] { - return pulumix.Output[DomainJupyterServerAppSettings]{ - OutputState: i.ToDomainJupyterServerAppSettingsOutputWithContext(ctx).OutputState, +func (i DomainDefaultSpaceStorageSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[DomainDefaultSpaceStorageSettings] { + return pulumix.Output[DomainDefaultSpaceStorageSettings]{ + OutputState: i.ToDomainDefaultSpaceStorageSettingsOutputWithContext(ctx).OutputState, } } -func (i DomainJupyterServerAppSettingsArgs) ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput { - return i.ToDomainJupyterServerAppSettingsPtrOutputWithContext(context.Background()) +func (i DomainDefaultSpaceStorageSettingsArgs) ToDomainDefaultSpaceStorageSettingsPtrOutput() DomainDefaultSpaceStorageSettingsPtrOutput { + return i.ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(context.Background()) } -func (i DomainJupyterServerAppSettingsArgs) ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterServerAppSettingsOutput).ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx) +func (i DomainDefaultSpaceStorageSettingsArgs) ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(ctx context.Context) DomainDefaultSpaceStorageSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainDefaultSpaceStorageSettingsOutput).ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(ctx) } -// DomainJupyterServerAppSettingsPtrInput is an input type that accepts DomainJupyterServerAppSettingsArgs, DomainJupyterServerAppSettingsPtr and DomainJupyterServerAppSettingsPtrOutput values. -// You can construct a concrete instance of `DomainJupyterServerAppSettingsPtrInput` via: +// DomainDefaultSpaceStorageSettingsPtrInput is an input type that accepts DomainDefaultSpaceStorageSettingsArgs, DomainDefaultSpaceStorageSettingsPtr and DomainDefaultSpaceStorageSettingsPtrOutput values. +// You can construct a concrete instance of `DomainDefaultSpaceStorageSettingsPtrInput` via: // -// DomainJupyterServerAppSettingsArgs{...} +// DomainDefaultSpaceStorageSettingsArgs{...} // // or: // // nil -type DomainJupyterServerAppSettingsPtrInput interface { +type DomainDefaultSpaceStorageSettingsPtrInput interface { pulumi.Input - ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput - ToDomainJupyterServerAppSettingsPtrOutputWithContext(context.Context) DomainJupyterServerAppSettingsPtrOutput + ToDomainDefaultSpaceStorageSettingsPtrOutput() DomainDefaultSpaceStorageSettingsPtrOutput + ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(context.Context) DomainDefaultSpaceStorageSettingsPtrOutput } -type domainJupyterServerAppSettingsPtrType DomainJupyterServerAppSettingsArgs +type domainDefaultSpaceStorageSettingsPtrType DomainDefaultSpaceStorageSettingsArgs -func DomainJupyterServerAppSettingsPtr(v *DomainJupyterServerAppSettingsArgs) DomainJupyterServerAppSettingsPtrInput { - return (*domainJupyterServerAppSettingsPtrType)(v) +func DomainDefaultSpaceStorageSettingsPtr(v *DomainDefaultSpaceStorageSettingsArgs) DomainDefaultSpaceStorageSettingsPtrInput { + return (*domainDefaultSpaceStorageSettingsPtrType)(v) } -func (*domainJupyterServerAppSettingsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**DomainJupyterServerAppSettings)(nil)).Elem() +func (*domainDefaultSpaceStorageSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainDefaultSpaceStorageSettings)(nil)).Elem() } -func (i *domainJupyterServerAppSettingsPtrType) ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput { - return i.ToDomainJupyterServerAppSettingsPtrOutputWithContext(context.Background()) +func (i *domainDefaultSpaceStorageSettingsPtrType) ToDomainDefaultSpaceStorageSettingsPtrOutput() DomainDefaultSpaceStorageSettingsPtrOutput { + return i.ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(context.Background()) } -func (i *domainJupyterServerAppSettingsPtrType) ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterServerAppSettingsPtrOutput) +func (i *domainDefaultSpaceStorageSettingsPtrType) ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(ctx context.Context) DomainDefaultSpaceStorageSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainDefaultSpaceStorageSettingsPtrOutput) } -func (i *domainJupyterServerAppSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainJupyterServerAppSettings] { - return pulumix.Output[*DomainJupyterServerAppSettings]{ - OutputState: i.ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx).OutputState, +func (i *domainDefaultSpaceStorageSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainDefaultSpaceStorageSettings] { + return pulumix.Output[*DomainDefaultSpaceStorageSettings]{ + OutputState: i.ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(ctx).OutputState, } } -// The JupyterServer app settings. -type DomainJupyterServerAppSettingsOutput struct{ *pulumi.OutputState } +// Default storage settings for a space. +type DomainDefaultSpaceStorageSettingsOutput struct{ *pulumi.OutputState } -func (DomainJupyterServerAppSettingsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*DomainJupyterServerAppSettings)(nil)).Elem() +func (DomainDefaultSpaceStorageSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainDefaultSpaceStorageSettings)(nil)).Elem() } -func (o DomainJupyterServerAppSettingsOutput) ToDomainJupyterServerAppSettingsOutput() DomainJupyterServerAppSettingsOutput { +func (o DomainDefaultSpaceStorageSettingsOutput) ToDomainDefaultSpaceStorageSettingsOutput() DomainDefaultSpaceStorageSettingsOutput { return o } -func (o DomainJupyterServerAppSettingsOutput) ToDomainJupyterServerAppSettingsOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsOutput { +func (o DomainDefaultSpaceStorageSettingsOutput) ToDomainDefaultSpaceStorageSettingsOutputWithContext(ctx context.Context) DomainDefaultSpaceStorageSettingsOutput { return o } -func (o DomainJupyterServerAppSettingsOutput) ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput { - return o.ToDomainJupyterServerAppSettingsPtrOutputWithContext(context.Background()) +func (o DomainDefaultSpaceStorageSettingsOutput) ToDomainDefaultSpaceStorageSettingsPtrOutput() DomainDefaultSpaceStorageSettingsPtrOutput { + return o.ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(context.Background()) } -func (o DomainJupyterServerAppSettingsOutput) ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainJupyterServerAppSettings) *DomainJupyterServerAppSettings { +func (o DomainDefaultSpaceStorageSettingsOutput) ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(ctx context.Context) DomainDefaultSpaceStorageSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainDefaultSpaceStorageSettings) *DomainDefaultSpaceStorageSettings { return &v - }).(DomainJupyterServerAppSettingsPtrOutput) + }).(DomainDefaultSpaceStorageSettingsPtrOutput) } -func (o DomainJupyterServerAppSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[DomainJupyterServerAppSettings] { - return pulumix.Output[DomainJupyterServerAppSettings]{ +func (o DomainDefaultSpaceStorageSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[DomainDefaultSpaceStorageSettings] { + return pulumix.Output[DomainDefaultSpaceStorageSettings]{ OutputState: o.OutputState, } } -func (o DomainJupyterServerAppSettingsOutput) DefaultResourceSpec() DomainResourceSpecPtrOutput { - return o.ApplyT(func(v DomainJupyterServerAppSettings) *DomainResourceSpec { return v.DefaultResourceSpec }).(DomainResourceSpecPtrOutput) +func (o DomainDefaultSpaceStorageSettingsOutput) DefaultEbsStorageSettings() DomainDefaultEbsStorageSettingsPtrOutput { + return o.ApplyT(func(v DomainDefaultSpaceStorageSettings) *DomainDefaultEbsStorageSettings { + return v.DefaultEbsStorageSettings + }).(DomainDefaultEbsStorageSettingsPtrOutput) } -type DomainJupyterServerAppSettingsPtrOutput struct{ *pulumi.OutputState } +type DomainDefaultSpaceStorageSettingsPtrOutput struct{ *pulumi.OutputState } -func (DomainJupyterServerAppSettingsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**DomainJupyterServerAppSettings)(nil)).Elem() +func (DomainDefaultSpaceStorageSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainDefaultSpaceStorageSettings)(nil)).Elem() } -func (o DomainJupyterServerAppSettingsPtrOutput) ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput { +func (o DomainDefaultSpaceStorageSettingsPtrOutput) ToDomainDefaultSpaceStorageSettingsPtrOutput() DomainDefaultSpaceStorageSettingsPtrOutput { return o } -func (o DomainJupyterServerAppSettingsPtrOutput) ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsPtrOutput { +func (o DomainDefaultSpaceStorageSettingsPtrOutput) ToDomainDefaultSpaceStorageSettingsPtrOutputWithContext(ctx context.Context) DomainDefaultSpaceStorageSettingsPtrOutput { return o } -func (o DomainJupyterServerAppSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainJupyterServerAppSettings] { - return pulumix.Output[*DomainJupyterServerAppSettings]{ +func (o DomainDefaultSpaceStorageSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainDefaultSpaceStorageSettings] { + return pulumix.Output[*DomainDefaultSpaceStorageSettings]{ OutputState: o.OutputState, } } -func (o DomainJupyterServerAppSettingsPtrOutput) Elem() DomainJupyterServerAppSettingsOutput { - return o.ApplyT(func(v *DomainJupyterServerAppSettings) DomainJupyterServerAppSettings { +func (o DomainDefaultSpaceStorageSettingsPtrOutput) Elem() DomainDefaultSpaceStorageSettingsOutput { + return o.ApplyT(func(v *DomainDefaultSpaceStorageSettings) DomainDefaultSpaceStorageSettings { if v != nil { return *v } - var ret DomainJupyterServerAppSettings + var ret DomainDefaultSpaceStorageSettings return ret - }).(DomainJupyterServerAppSettingsOutput) + }).(DomainDefaultSpaceStorageSettingsOutput) } -func (o DomainJupyterServerAppSettingsPtrOutput) DefaultResourceSpec() DomainResourceSpecPtrOutput { - return o.ApplyT(func(v *DomainJupyterServerAppSettings) *DomainResourceSpec { +func (o DomainDefaultSpaceStorageSettingsPtrOutput) DefaultEbsStorageSettings() DomainDefaultEbsStorageSettingsPtrOutput { + return o.ApplyT(func(v *DomainDefaultSpaceStorageSettings) *DomainDefaultEbsStorageSettings { if v == nil { return nil } - return v.DefaultResourceSpec - }).(DomainResourceSpecPtrOutput) + return v.DefaultEbsStorageSettings + }).(DomainDefaultEbsStorageSettingsPtrOutput) } -// The kernel gateway app settings. -type DomainKernelGatewayAppSettings struct { - // A list of custom SageMaker images that are configured to run as a KernelGateway app. - CustomImages []DomainCustomImage `pulumi:"customImages"` - // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app. - DefaultResourceSpec *DomainResourceSpec `pulumi:"defaultResourceSpec"` +type DomainEfsFileSystemConfig struct { + FileSystemId string `pulumi:"fileSystemId"` + FileSystemPath *string `pulumi:"fileSystemPath"` } -// DomainKernelGatewayAppSettingsInput is an input type that accepts DomainKernelGatewayAppSettingsArgs and DomainKernelGatewayAppSettingsOutput values. -// You can construct a concrete instance of `DomainKernelGatewayAppSettingsInput` via: +// DomainEfsFileSystemConfigInput is an input type that accepts DomainEfsFileSystemConfigArgs and DomainEfsFileSystemConfigOutput values. +// You can construct a concrete instance of `DomainEfsFileSystemConfigInput` via: // -// DomainKernelGatewayAppSettingsArgs{...} -type DomainKernelGatewayAppSettingsInput interface { +// DomainEfsFileSystemConfigArgs{...} +type DomainEfsFileSystemConfigInput interface { pulumi.Input - ToDomainKernelGatewayAppSettingsOutput() DomainKernelGatewayAppSettingsOutput - ToDomainKernelGatewayAppSettingsOutputWithContext(context.Context) DomainKernelGatewayAppSettingsOutput + ToDomainEfsFileSystemConfigOutput() DomainEfsFileSystemConfigOutput + ToDomainEfsFileSystemConfigOutputWithContext(context.Context) DomainEfsFileSystemConfigOutput } -// The kernel gateway app settings. -type DomainKernelGatewayAppSettingsArgs struct { - // A list of custom SageMaker images that are configured to run as a KernelGateway app. - CustomImages DomainCustomImageArrayInput `pulumi:"customImages"` - // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app. - DefaultResourceSpec DomainResourceSpecPtrInput `pulumi:"defaultResourceSpec"` +type DomainEfsFileSystemConfigArgs struct { + FileSystemId pulumi.StringInput `pulumi:"fileSystemId"` + FileSystemPath pulumi.StringPtrInput `pulumi:"fileSystemPath"` } -func (DomainKernelGatewayAppSettingsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*DomainKernelGatewayAppSettings)(nil)).Elem() +func (DomainEfsFileSystemConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainEfsFileSystemConfig)(nil)).Elem() } -func (i DomainKernelGatewayAppSettingsArgs) ToDomainKernelGatewayAppSettingsOutput() DomainKernelGatewayAppSettingsOutput { - return i.ToDomainKernelGatewayAppSettingsOutputWithContext(context.Background()) +func (i DomainEfsFileSystemConfigArgs) ToDomainEfsFileSystemConfigOutput() DomainEfsFileSystemConfigOutput { + return i.ToDomainEfsFileSystemConfigOutputWithContext(context.Background()) +} + +func (i DomainEfsFileSystemConfigArgs) ToDomainEfsFileSystemConfigOutputWithContext(ctx context.Context) DomainEfsFileSystemConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainEfsFileSystemConfigOutput) +} + +func (i DomainEfsFileSystemConfigArgs) ToOutput(ctx context.Context) pulumix.Output[DomainEfsFileSystemConfig] { + return pulumix.Output[DomainEfsFileSystemConfig]{ + OutputState: i.ToDomainEfsFileSystemConfigOutputWithContext(ctx).OutputState, + } +} + +func (i DomainEfsFileSystemConfigArgs) ToDomainEfsFileSystemConfigPtrOutput() DomainEfsFileSystemConfigPtrOutput { + return i.ToDomainEfsFileSystemConfigPtrOutputWithContext(context.Background()) +} + +func (i DomainEfsFileSystemConfigArgs) ToDomainEfsFileSystemConfigPtrOutputWithContext(ctx context.Context) DomainEfsFileSystemConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainEfsFileSystemConfigOutput).ToDomainEfsFileSystemConfigPtrOutputWithContext(ctx) +} + +// DomainEfsFileSystemConfigPtrInput is an input type that accepts DomainEfsFileSystemConfigArgs, DomainEfsFileSystemConfigPtr and DomainEfsFileSystemConfigPtrOutput values. +// You can construct a concrete instance of `DomainEfsFileSystemConfigPtrInput` via: +// +// DomainEfsFileSystemConfigArgs{...} +// +// or: +// +// nil +type DomainEfsFileSystemConfigPtrInput interface { + pulumi.Input + + ToDomainEfsFileSystemConfigPtrOutput() DomainEfsFileSystemConfigPtrOutput + ToDomainEfsFileSystemConfigPtrOutputWithContext(context.Context) DomainEfsFileSystemConfigPtrOutput +} + +type domainEfsFileSystemConfigPtrType DomainEfsFileSystemConfigArgs + +func DomainEfsFileSystemConfigPtr(v *DomainEfsFileSystemConfigArgs) DomainEfsFileSystemConfigPtrInput { + return (*domainEfsFileSystemConfigPtrType)(v) +} + +func (*domainEfsFileSystemConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainEfsFileSystemConfig)(nil)).Elem() +} + +func (i *domainEfsFileSystemConfigPtrType) ToDomainEfsFileSystemConfigPtrOutput() DomainEfsFileSystemConfigPtrOutput { + return i.ToDomainEfsFileSystemConfigPtrOutputWithContext(context.Background()) +} + +func (i *domainEfsFileSystemConfigPtrType) ToDomainEfsFileSystemConfigPtrOutputWithContext(ctx context.Context) DomainEfsFileSystemConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainEfsFileSystemConfigPtrOutput) +} + +func (i *domainEfsFileSystemConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainEfsFileSystemConfig] { + return pulumix.Output[*DomainEfsFileSystemConfig]{ + OutputState: i.ToDomainEfsFileSystemConfigPtrOutputWithContext(ctx).OutputState, + } +} + +type DomainEfsFileSystemConfigOutput struct{ *pulumi.OutputState } + +func (DomainEfsFileSystemConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainEfsFileSystemConfig)(nil)).Elem() +} + +func (o DomainEfsFileSystemConfigOutput) ToDomainEfsFileSystemConfigOutput() DomainEfsFileSystemConfigOutput { + return o +} + +func (o DomainEfsFileSystemConfigOutput) ToDomainEfsFileSystemConfigOutputWithContext(ctx context.Context) DomainEfsFileSystemConfigOutput { + return o +} + +func (o DomainEfsFileSystemConfigOutput) ToDomainEfsFileSystemConfigPtrOutput() DomainEfsFileSystemConfigPtrOutput { + return o.ToDomainEfsFileSystemConfigPtrOutputWithContext(context.Background()) +} + +func (o DomainEfsFileSystemConfigOutput) ToDomainEfsFileSystemConfigPtrOutputWithContext(ctx context.Context) DomainEfsFileSystemConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainEfsFileSystemConfig) *DomainEfsFileSystemConfig { + return &v + }).(DomainEfsFileSystemConfigPtrOutput) +} + +func (o DomainEfsFileSystemConfigOutput) ToOutput(ctx context.Context) pulumix.Output[DomainEfsFileSystemConfig] { + return pulumix.Output[DomainEfsFileSystemConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainEfsFileSystemConfigOutput) FileSystemId() pulumi.StringOutput { + return o.ApplyT(func(v DomainEfsFileSystemConfig) string { return v.FileSystemId }).(pulumi.StringOutput) +} + +func (o DomainEfsFileSystemConfigOutput) FileSystemPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v DomainEfsFileSystemConfig) *string { return v.FileSystemPath }).(pulumi.StringPtrOutput) +} + +type DomainEfsFileSystemConfigPtrOutput struct{ *pulumi.OutputState } + +func (DomainEfsFileSystemConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainEfsFileSystemConfig)(nil)).Elem() +} + +func (o DomainEfsFileSystemConfigPtrOutput) ToDomainEfsFileSystemConfigPtrOutput() DomainEfsFileSystemConfigPtrOutput { + return o +} + +func (o DomainEfsFileSystemConfigPtrOutput) ToDomainEfsFileSystemConfigPtrOutputWithContext(ctx context.Context) DomainEfsFileSystemConfigPtrOutput { + return o +} + +func (o DomainEfsFileSystemConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainEfsFileSystemConfig] { + return pulumix.Output[*DomainEfsFileSystemConfig]{ + OutputState: o.OutputState, + } +} + +func (o DomainEfsFileSystemConfigPtrOutput) Elem() DomainEfsFileSystemConfigOutput { + return o.ApplyT(func(v *DomainEfsFileSystemConfig) DomainEfsFileSystemConfig { + if v != nil { + return *v + } + var ret DomainEfsFileSystemConfig + return ret + }).(DomainEfsFileSystemConfigOutput) +} + +func (o DomainEfsFileSystemConfigPtrOutput) FileSystemId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DomainEfsFileSystemConfig) *string { + if v == nil { + return nil + } + return &v.FileSystemId + }).(pulumi.StringPtrOutput) +} + +func (o DomainEfsFileSystemConfigPtrOutput) FileSystemPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DomainEfsFileSystemConfig) *string { + if v == nil { + return nil + } + return v.FileSystemPath + }).(pulumi.StringPtrOutput) +} + +// The JupyterLab app settings. +type DomainJupyterLabAppSettings struct { + // A list of CodeRepositories available for use with JupyterLab apps. + CodeRepositories []DomainCodeRepository `pulumi:"codeRepositories"` + // A list of custom images for use for JupyterLab apps. + CustomImages []DomainCustomImage `pulumi:"customImages"` + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + DefaultResourceSpec *DomainResourceSpec `pulumi:"defaultResourceSpec"` + // A list of LifecycleConfigArns available for use with JupyterLab apps. + LifecycleConfigArns []string `pulumi:"lifecycleConfigArns"` +} + +// DomainJupyterLabAppSettingsInput is an input type that accepts DomainJupyterLabAppSettingsArgs and DomainJupyterLabAppSettingsOutput values. +// You can construct a concrete instance of `DomainJupyterLabAppSettingsInput` via: +// +// DomainJupyterLabAppSettingsArgs{...} +type DomainJupyterLabAppSettingsInput interface { + pulumi.Input + + ToDomainJupyterLabAppSettingsOutput() DomainJupyterLabAppSettingsOutput + ToDomainJupyterLabAppSettingsOutputWithContext(context.Context) DomainJupyterLabAppSettingsOutput +} + +// The JupyterLab app settings. +type DomainJupyterLabAppSettingsArgs struct { + // A list of CodeRepositories available for use with JupyterLab apps. + CodeRepositories DomainCodeRepositoryArrayInput `pulumi:"codeRepositories"` + // A list of custom images for use for JupyterLab apps. + CustomImages DomainCustomImageArrayInput `pulumi:"customImages"` + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + DefaultResourceSpec DomainResourceSpecPtrInput `pulumi:"defaultResourceSpec"` + // A list of LifecycleConfigArns available for use with JupyterLab apps. + LifecycleConfigArns pulumi.StringArrayInput `pulumi:"lifecycleConfigArns"` +} + +func (DomainJupyterLabAppSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainJupyterLabAppSettings)(nil)).Elem() +} + +func (i DomainJupyterLabAppSettingsArgs) ToDomainJupyterLabAppSettingsOutput() DomainJupyterLabAppSettingsOutput { + return i.ToDomainJupyterLabAppSettingsOutputWithContext(context.Background()) +} + +func (i DomainJupyterLabAppSettingsArgs) ToDomainJupyterLabAppSettingsOutputWithContext(ctx context.Context) DomainJupyterLabAppSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterLabAppSettingsOutput) +} + +func (i DomainJupyterLabAppSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[DomainJupyterLabAppSettings] { + return pulumix.Output[DomainJupyterLabAppSettings]{ + OutputState: i.ToDomainJupyterLabAppSettingsOutputWithContext(ctx).OutputState, + } +} + +func (i DomainJupyterLabAppSettingsArgs) ToDomainJupyterLabAppSettingsPtrOutput() DomainJupyterLabAppSettingsPtrOutput { + return i.ToDomainJupyterLabAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i DomainJupyterLabAppSettingsArgs) ToDomainJupyterLabAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterLabAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterLabAppSettingsOutput).ToDomainJupyterLabAppSettingsPtrOutputWithContext(ctx) +} + +// DomainJupyterLabAppSettingsPtrInput is an input type that accepts DomainJupyterLabAppSettingsArgs, DomainJupyterLabAppSettingsPtr and DomainJupyterLabAppSettingsPtrOutput values. +// You can construct a concrete instance of `DomainJupyterLabAppSettingsPtrInput` via: +// +// DomainJupyterLabAppSettingsArgs{...} +// +// or: +// +// nil +type DomainJupyterLabAppSettingsPtrInput interface { + pulumi.Input + + ToDomainJupyterLabAppSettingsPtrOutput() DomainJupyterLabAppSettingsPtrOutput + ToDomainJupyterLabAppSettingsPtrOutputWithContext(context.Context) DomainJupyterLabAppSettingsPtrOutput +} + +type domainJupyterLabAppSettingsPtrType DomainJupyterLabAppSettingsArgs + +func DomainJupyterLabAppSettingsPtr(v *DomainJupyterLabAppSettingsArgs) DomainJupyterLabAppSettingsPtrInput { + return (*domainJupyterLabAppSettingsPtrType)(v) +} + +func (*domainJupyterLabAppSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainJupyterLabAppSettings)(nil)).Elem() +} + +func (i *domainJupyterLabAppSettingsPtrType) ToDomainJupyterLabAppSettingsPtrOutput() DomainJupyterLabAppSettingsPtrOutput { + return i.ToDomainJupyterLabAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i *domainJupyterLabAppSettingsPtrType) ToDomainJupyterLabAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterLabAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterLabAppSettingsPtrOutput) +} + +func (i *domainJupyterLabAppSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainJupyterLabAppSettings] { + return pulumix.Output[*DomainJupyterLabAppSettings]{ + OutputState: i.ToDomainJupyterLabAppSettingsPtrOutputWithContext(ctx).OutputState, + } +} + +// The JupyterLab app settings. +type DomainJupyterLabAppSettingsOutput struct{ *pulumi.OutputState } + +func (DomainJupyterLabAppSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainJupyterLabAppSettings)(nil)).Elem() +} + +func (o DomainJupyterLabAppSettingsOutput) ToDomainJupyterLabAppSettingsOutput() DomainJupyterLabAppSettingsOutput { + return o +} + +func (o DomainJupyterLabAppSettingsOutput) ToDomainJupyterLabAppSettingsOutputWithContext(ctx context.Context) DomainJupyterLabAppSettingsOutput { + return o +} + +func (o DomainJupyterLabAppSettingsOutput) ToDomainJupyterLabAppSettingsPtrOutput() DomainJupyterLabAppSettingsPtrOutput { + return o.ToDomainJupyterLabAppSettingsPtrOutputWithContext(context.Background()) +} + +func (o DomainJupyterLabAppSettingsOutput) ToDomainJupyterLabAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterLabAppSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainJupyterLabAppSettings) *DomainJupyterLabAppSettings { + return &v + }).(DomainJupyterLabAppSettingsPtrOutput) +} + +func (o DomainJupyterLabAppSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[DomainJupyterLabAppSettings] { + return pulumix.Output[DomainJupyterLabAppSettings]{ + OutputState: o.OutputState, + } +} + +// A list of CodeRepositories available for use with JupyterLab apps. +func (o DomainJupyterLabAppSettingsOutput) CodeRepositories() DomainCodeRepositoryArrayOutput { + return o.ApplyT(func(v DomainJupyterLabAppSettings) []DomainCodeRepository { return v.CodeRepositories }).(DomainCodeRepositoryArrayOutput) +} + +// A list of custom images for use for JupyterLab apps. +func (o DomainJupyterLabAppSettingsOutput) CustomImages() DomainCustomImageArrayOutput { + return o.ApplyT(func(v DomainJupyterLabAppSettings) []DomainCustomImage { return v.CustomImages }).(DomainCustomImageArrayOutput) +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. +func (o DomainJupyterLabAppSettingsOutput) DefaultResourceSpec() DomainResourceSpecPtrOutput { + return o.ApplyT(func(v DomainJupyterLabAppSettings) *DomainResourceSpec { return v.DefaultResourceSpec }).(DomainResourceSpecPtrOutput) +} + +// A list of LifecycleConfigArns available for use with JupyterLab apps. +func (o DomainJupyterLabAppSettingsOutput) LifecycleConfigArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v DomainJupyterLabAppSettings) []string { return v.LifecycleConfigArns }).(pulumi.StringArrayOutput) +} + +type DomainJupyterLabAppSettingsPtrOutput struct{ *pulumi.OutputState } + +func (DomainJupyterLabAppSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainJupyterLabAppSettings)(nil)).Elem() +} + +func (o DomainJupyterLabAppSettingsPtrOutput) ToDomainJupyterLabAppSettingsPtrOutput() DomainJupyterLabAppSettingsPtrOutput { + return o +} + +func (o DomainJupyterLabAppSettingsPtrOutput) ToDomainJupyterLabAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterLabAppSettingsPtrOutput { + return o +} + +func (o DomainJupyterLabAppSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainJupyterLabAppSettings] { + return pulumix.Output[*DomainJupyterLabAppSettings]{ + OutputState: o.OutputState, + } +} + +func (o DomainJupyterLabAppSettingsPtrOutput) Elem() DomainJupyterLabAppSettingsOutput { + return o.ApplyT(func(v *DomainJupyterLabAppSettings) DomainJupyterLabAppSettings { + if v != nil { + return *v + } + var ret DomainJupyterLabAppSettings + return ret + }).(DomainJupyterLabAppSettingsOutput) +} + +// A list of CodeRepositories available for use with JupyterLab apps. +func (o DomainJupyterLabAppSettingsPtrOutput) CodeRepositories() DomainCodeRepositoryArrayOutput { + return o.ApplyT(func(v *DomainJupyterLabAppSettings) []DomainCodeRepository { + if v == nil { + return nil + } + return v.CodeRepositories + }).(DomainCodeRepositoryArrayOutput) +} + +// A list of custom images for use for JupyterLab apps. +func (o DomainJupyterLabAppSettingsPtrOutput) CustomImages() DomainCustomImageArrayOutput { + return o.ApplyT(func(v *DomainJupyterLabAppSettings) []DomainCustomImage { + if v == nil { + return nil + } + return v.CustomImages + }).(DomainCustomImageArrayOutput) +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. +func (o DomainJupyterLabAppSettingsPtrOutput) DefaultResourceSpec() DomainResourceSpecPtrOutput { + return o.ApplyT(func(v *DomainJupyterLabAppSettings) *DomainResourceSpec { + if v == nil { + return nil + } + return v.DefaultResourceSpec + }).(DomainResourceSpecPtrOutput) +} + +// A list of LifecycleConfigArns available for use with JupyterLab apps. +func (o DomainJupyterLabAppSettingsPtrOutput) LifecycleConfigArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DomainJupyterLabAppSettings) []string { + if v == nil { + return nil + } + return v.LifecycleConfigArns + }).(pulumi.StringArrayOutput) +} + +// The JupyterServer app settings. +type DomainJupyterServerAppSettings struct { + DefaultResourceSpec *DomainResourceSpec `pulumi:"defaultResourceSpec"` +} + +// DomainJupyterServerAppSettingsInput is an input type that accepts DomainJupyterServerAppSettingsArgs and DomainJupyterServerAppSettingsOutput values. +// You can construct a concrete instance of `DomainJupyterServerAppSettingsInput` via: +// +// DomainJupyterServerAppSettingsArgs{...} +type DomainJupyterServerAppSettingsInput interface { + pulumi.Input + + ToDomainJupyterServerAppSettingsOutput() DomainJupyterServerAppSettingsOutput + ToDomainJupyterServerAppSettingsOutputWithContext(context.Context) DomainJupyterServerAppSettingsOutput +} + +// The JupyterServer app settings. +type DomainJupyterServerAppSettingsArgs struct { + DefaultResourceSpec DomainResourceSpecPtrInput `pulumi:"defaultResourceSpec"` +} + +func (DomainJupyterServerAppSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainJupyterServerAppSettings)(nil)).Elem() +} + +func (i DomainJupyterServerAppSettingsArgs) ToDomainJupyterServerAppSettingsOutput() DomainJupyterServerAppSettingsOutput { + return i.ToDomainJupyterServerAppSettingsOutputWithContext(context.Background()) +} + +func (i DomainJupyterServerAppSettingsArgs) ToDomainJupyterServerAppSettingsOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterServerAppSettingsOutput) +} + +func (i DomainJupyterServerAppSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[DomainJupyterServerAppSettings] { + return pulumix.Output[DomainJupyterServerAppSettings]{ + OutputState: i.ToDomainJupyterServerAppSettingsOutputWithContext(ctx).OutputState, + } +} + +func (i DomainJupyterServerAppSettingsArgs) ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput { + return i.ToDomainJupyterServerAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i DomainJupyterServerAppSettingsArgs) ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterServerAppSettingsOutput).ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx) +} + +// DomainJupyterServerAppSettingsPtrInput is an input type that accepts DomainJupyterServerAppSettingsArgs, DomainJupyterServerAppSettingsPtr and DomainJupyterServerAppSettingsPtrOutput values. +// You can construct a concrete instance of `DomainJupyterServerAppSettingsPtrInput` via: +// +// DomainJupyterServerAppSettingsArgs{...} +// +// or: +// +// nil +type DomainJupyterServerAppSettingsPtrInput interface { + pulumi.Input + + ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput + ToDomainJupyterServerAppSettingsPtrOutputWithContext(context.Context) DomainJupyterServerAppSettingsPtrOutput +} + +type domainJupyterServerAppSettingsPtrType DomainJupyterServerAppSettingsArgs + +func DomainJupyterServerAppSettingsPtr(v *DomainJupyterServerAppSettingsArgs) DomainJupyterServerAppSettingsPtrInput { + return (*domainJupyterServerAppSettingsPtrType)(v) +} + +func (*domainJupyterServerAppSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**DomainJupyterServerAppSettings)(nil)).Elem() +} + +func (i *domainJupyterServerAppSettingsPtrType) ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput { + return i.ToDomainJupyterServerAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i *domainJupyterServerAppSettingsPtrType) ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(DomainJupyterServerAppSettingsPtrOutput) +} + +func (i *domainJupyterServerAppSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*DomainJupyterServerAppSettings] { + return pulumix.Output[*DomainJupyterServerAppSettings]{ + OutputState: i.ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx).OutputState, + } +} + +// The JupyterServer app settings. +type DomainJupyterServerAppSettingsOutput struct{ *pulumi.OutputState } + +func (DomainJupyterServerAppSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*DomainJupyterServerAppSettings)(nil)).Elem() +} + +func (o DomainJupyterServerAppSettingsOutput) ToDomainJupyterServerAppSettingsOutput() DomainJupyterServerAppSettingsOutput { + return o +} + +func (o DomainJupyterServerAppSettingsOutput) ToDomainJupyterServerAppSettingsOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsOutput { + return o +} + +func (o DomainJupyterServerAppSettingsOutput) ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput { + return o.ToDomainJupyterServerAppSettingsPtrOutputWithContext(context.Background()) +} + +func (o DomainJupyterServerAppSettingsOutput) ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v DomainJupyterServerAppSettings) *DomainJupyterServerAppSettings { + return &v + }).(DomainJupyterServerAppSettingsPtrOutput) +} + +func (o DomainJupyterServerAppSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[DomainJupyterServerAppSettings] { + return pulumix.Output[DomainJupyterServerAppSettings]{ + OutputState: o.OutputState, + } +} + +func (o DomainJupyterServerAppSettingsOutput) DefaultResourceSpec() DomainResourceSpecPtrOutput { + return o.ApplyT(func(v DomainJupyterServerAppSettings) *DomainResourceSpec { return v.DefaultResourceSpec }).(DomainResourceSpecPtrOutput) +} + +type DomainJupyterServerAppSettingsPtrOutput struct{ *pulumi.OutputState } + +func (DomainJupyterServerAppSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**DomainJupyterServerAppSettings)(nil)).Elem() +} + +func (o DomainJupyterServerAppSettingsPtrOutput) ToDomainJupyterServerAppSettingsPtrOutput() DomainJupyterServerAppSettingsPtrOutput { + return o +} + +func (o DomainJupyterServerAppSettingsPtrOutput) ToDomainJupyterServerAppSettingsPtrOutputWithContext(ctx context.Context) DomainJupyterServerAppSettingsPtrOutput { + return o +} + +func (o DomainJupyterServerAppSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*DomainJupyterServerAppSettings] { + return pulumix.Output[*DomainJupyterServerAppSettings]{ + OutputState: o.OutputState, + } +} + +func (o DomainJupyterServerAppSettingsPtrOutput) Elem() DomainJupyterServerAppSettingsOutput { + return o.ApplyT(func(v *DomainJupyterServerAppSettings) DomainJupyterServerAppSettings { + if v != nil { + return *v + } + var ret DomainJupyterServerAppSettings + return ret + }).(DomainJupyterServerAppSettingsOutput) +} + +func (o DomainJupyterServerAppSettingsPtrOutput) DefaultResourceSpec() DomainResourceSpecPtrOutput { + return o.ApplyT(func(v *DomainJupyterServerAppSettings) *DomainResourceSpec { + if v == nil { + return nil + } + return v.DefaultResourceSpec + }).(DomainResourceSpecPtrOutput) +} + +// The kernel gateway app settings. +type DomainKernelGatewayAppSettings struct { + // A list of custom SageMaker images that are configured to run as a KernelGateway app. + CustomImages []DomainCustomImage `pulumi:"customImages"` + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app. + DefaultResourceSpec *DomainResourceSpec `pulumi:"defaultResourceSpec"` +} + +// DomainKernelGatewayAppSettingsInput is an input type that accepts DomainKernelGatewayAppSettingsArgs and DomainKernelGatewayAppSettingsOutput values. +// You can construct a concrete instance of `DomainKernelGatewayAppSettingsInput` via: +// +// DomainKernelGatewayAppSettingsArgs{...} +type DomainKernelGatewayAppSettingsInput interface { + pulumi.Input + + ToDomainKernelGatewayAppSettingsOutput() DomainKernelGatewayAppSettingsOutput + ToDomainKernelGatewayAppSettingsOutputWithContext(context.Context) DomainKernelGatewayAppSettingsOutput +} + +// The kernel gateway app settings. +type DomainKernelGatewayAppSettingsArgs struct { + // A list of custom SageMaker images that are configured to run as a KernelGateway app. + CustomImages DomainCustomImageArrayInput `pulumi:"customImages"` + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app. + DefaultResourceSpec DomainResourceSpecPtrInput `pulumi:"defaultResourceSpec"` +} + +func (DomainKernelGatewayAppSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*DomainKernelGatewayAppSettings)(nil)).Elem() +} + +func (i DomainKernelGatewayAppSettingsArgs) ToDomainKernelGatewayAppSettingsOutput() DomainKernelGatewayAppSettingsOutput { + return i.ToDomainKernelGatewayAppSettingsOutputWithContext(context.Background()) } func (i DomainKernelGatewayAppSettingsArgs) ToDomainKernelGatewayAppSettingsOutputWithContext(ctx context.Context) DomainKernelGatewayAppSettingsOutput { @@ -6691,8 +8023,14 @@ func (o DomainTagArrayOutput) Index(i pulumi.IntInput) DomainTagOutput { // A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. type DomainUserSettings struct { + CodeEditorAppSettings *DomainCodeEditorAppSettings `pulumi:"codeEditorAppSettings"` + CustomFileSystemConfigs []DomainCustomFileSystemConfig `pulumi:"customFileSystemConfigs"` + CustomPosixUserConfig *DomainCustomPosixUserConfig `pulumi:"customPosixUserConfig"` + // Defines which Amazon SageMaker application users are directed to by default. + DefaultLandingUri *string `pulumi:"defaultLandingUri"` // The execution role for the user. - ExecutionRole string `pulumi:"executionRole"` + ExecutionRole string `pulumi:"executionRole"` + JupyterLabAppSettings *DomainJupyterLabAppSettings `pulumi:"jupyterLabAppSettings"` // The Jupyter server's app settings. JupyterServerAppSettings *DomainJupyterServerAppSettings `pulumi:"jupyterServerAppSettings"` // The kernel gateway app settings. @@ -6702,7 +8040,10 @@ type DomainUserSettings struct { // The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. SecurityGroups []string `pulumi:"securityGroups"` // The sharing settings. - SharingSettings *DomainSharingSettings `pulumi:"sharingSettings"` + SharingSettings *DomainSharingSettings `pulumi:"sharingSettings"` + SpaceStorageSettings *DomainDefaultSpaceStorageSettings `pulumi:"spaceStorageSettings"` + // Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + StudioWebPortal *DomainUserSettingsStudioWebPortal `pulumi:"studioWebPortal"` } // DomainUserSettingsInput is an input type that accepts DomainUserSettingsArgs and DomainUserSettingsOutput values. @@ -6718,8 +8059,14 @@ type DomainUserSettingsInput interface { // A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. type DomainUserSettingsArgs struct { + CodeEditorAppSettings DomainCodeEditorAppSettingsPtrInput `pulumi:"codeEditorAppSettings"` + CustomFileSystemConfigs DomainCustomFileSystemConfigArrayInput `pulumi:"customFileSystemConfigs"` + CustomPosixUserConfig DomainCustomPosixUserConfigPtrInput `pulumi:"customPosixUserConfig"` + // Defines which Amazon SageMaker application users are directed to by default. + DefaultLandingUri pulumi.StringPtrInput `pulumi:"defaultLandingUri"` // The execution role for the user. - ExecutionRole pulumi.StringInput `pulumi:"executionRole"` + ExecutionRole pulumi.StringInput `pulumi:"executionRole"` + JupyterLabAppSettings DomainJupyterLabAppSettingsPtrInput `pulumi:"jupyterLabAppSettings"` // The Jupyter server's app settings. JupyterServerAppSettings DomainJupyterServerAppSettingsPtrInput `pulumi:"jupyterServerAppSettings"` // The kernel gateway app settings. @@ -6729,7 +8076,10 @@ type DomainUserSettingsArgs struct { // The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"` // The sharing settings. - SharingSettings DomainSharingSettingsPtrInput `pulumi:"sharingSettings"` + SharingSettings DomainSharingSettingsPtrInput `pulumi:"sharingSettings"` + SpaceStorageSettings DomainDefaultSpaceStorageSettingsPtrInput `pulumi:"spaceStorageSettings"` + // Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + StudioWebPortal DomainUserSettingsStudioWebPortalPtrInput `pulumi:"studioWebPortal"` } func (DomainUserSettingsArgs) ElementType() reflect.Type { @@ -6771,11 +8121,32 @@ func (o DomainUserSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[D } } +func (o DomainUserSettingsOutput) CodeEditorAppSettings() DomainCodeEditorAppSettingsPtrOutput { + return o.ApplyT(func(v DomainUserSettings) *DomainCodeEditorAppSettings { return v.CodeEditorAppSettings }).(DomainCodeEditorAppSettingsPtrOutput) +} + +func (o DomainUserSettingsOutput) CustomFileSystemConfigs() DomainCustomFileSystemConfigArrayOutput { + return o.ApplyT(func(v DomainUserSettings) []DomainCustomFileSystemConfig { return v.CustomFileSystemConfigs }).(DomainCustomFileSystemConfigArrayOutput) +} + +func (o DomainUserSettingsOutput) CustomPosixUserConfig() DomainCustomPosixUserConfigPtrOutput { + return o.ApplyT(func(v DomainUserSettings) *DomainCustomPosixUserConfig { return v.CustomPosixUserConfig }).(DomainCustomPosixUserConfigPtrOutput) +} + +// Defines which Amazon SageMaker application users are directed to by default. +func (o DomainUserSettingsOutput) DefaultLandingUri() pulumi.StringPtrOutput { + return o.ApplyT(func(v DomainUserSettings) *string { return v.DefaultLandingUri }).(pulumi.StringPtrOutput) +} + // The execution role for the user. func (o DomainUserSettingsOutput) ExecutionRole() pulumi.StringOutput { return o.ApplyT(func(v DomainUserSettings) string { return v.ExecutionRole }).(pulumi.StringOutput) } +func (o DomainUserSettingsOutput) JupyterLabAppSettings() DomainJupyterLabAppSettingsPtrOutput { + return o.ApplyT(func(v DomainUserSettings) *DomainJupyterLabAppSettings { return v.JupyterLabAppSettings }).(DomainJupyterLabAppSettingsPtrOutput) +} + // The Jupyter server's app settings. func (o DomainUserSettingsOutput) JupyterServerAppSettings() DomainJupyterServerAppSettingsPtrOutput { return o.ApplyT(func(v DomainUserSettings) *DomainJupyterServerAppSettings { return v.JupyterServerAppSettings }).(DomainJupyterServerAppSettingsPtrOutput) @@ -6804,6 +8175,15 @@ func (o DomainUserSettingsOutput) SharingSettings() DomainSharingSettingsPtrOutp return o.ApplyT(func(v DomainUserSettings) *DomainSharingSettings { return v.SharingSettings }).(DomainSharingSettingsPtrOutput) } +func (o DomainUserSettingsOutput) SpaceStorageSettings() DomainDefaultSpaceStorageSettingsPtrOutput { + return o.ApplyT(func(v DomainUserSettings) *DomainDefaultSpaceStorageSettings { return v.SpaceStorageSettings }).(DomainDefaultSpaceStorageSettingsPtrOutput) +} + +// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. +func (o DomainUserSettingsOutput) StudioWebPortal() DomainUserSettingsStudioWebPortalPtrOutput { + return o.ApplyT(func(v DomainUserSettings) *DomainUserSettingsStudioWebPortal { return v.StudioWebPortal }).(DomainUserSettingsStudioWebPortalPtrOutput) +} + type DomainUserSettingsPtrOutput struct{ *pulumi.OutputState } func (DomainUserSettingsPtrOutput) ElementType() reflect.Type { @@ -6834,6 +8214,43 @@ func (o DomainUserSettingsPtrOutput) Elem() DomainUserSettingsOutput { }).(DomainUserSettingsOutput) } +func (o DomainUserSettingsPtrOutput) CodeEditorAppSettings() DomainCodeEditorAppSettingsPtrOutput { + return o.ApplyT(func(v *DomainUserSettings) *DomainCodeEditorAppSettings { + if v == nil { + return nil + } + return v.CodeEditorAppSettings + }).(DomainCodeEditorAppSettingsPtrOutput) +} + +func (o DomainUserSettingsPtrOutput) CustomFileSystemConfigs() DomainCustomFileSystemConfigArrayOutput { + return o.ApplyT(func(v *DomainUserSettings) []DomainCustomFileSystemConfig { + if v == nil { + return nil + } + return v.CustomFileSystemConfigs + }).(DomainCustomFileSystemConfigArrayOutput) +} + +func (o DomainUserSettingsPtrOutput) CustomPosixUserConfig() DomainCustomPosixUserConfigPtrOutput { + return o.ApplyT(func(v *DomainUserSettings) *DomainCustomPosixUserConfig { + if v == nil { + return nil + } + return v.CustomPosixUserConfig + }).(DomainCustomPosixUserConfigPtrOutput) +} + +// Defines which Amazon SageMaker application users are directed to by default. +func (o DomainUserSettingsPtrOutput) DefaultLandingUri() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DomainUserSettings) *string { + if v == nil { + return nil + } + return v.DefaultLandingUri + }).(pulumi.StringPtrOutput) +} + // The execution role for the user. func (o DomainUserSettingsPtrOutput) ExecutionRole() pulumi.StringPtrOutput { return o.ApplyT(func(v *DomainUserSettings) *string { @@ -6844,6 +8261,15 @@ func (o DomainUserSettingsPtrOutput) ExecutionRole() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +func (o DomainUserSettingsPtrOutput) JupyterLabAppSettings() DomainJupyterLabAppSettingsPtrOutput { + return o.ApplyT(func(v *DomainUserSettings) *DomainJupyterLabAppSettings { + if v == nil { + return nil + } + return v.JupyterLabAppSettings + }).(DomainJupyterLabAppSettingsPtrOutput) +} + // The Jupyter server's app settings. func (o DomainUserSettingsPtrOutput) JupyterServerAppSettings() DomainJupyterServerAppSettingsPtrOutput { return o.ApplyT(func(v *DomainUserSettings) *DomainJupyterServerAppSettings { @@ -6902,6 +8328,25 @@ func (o DomainUserSettingsPtrOutput) SharingSettings() DomainSharingSettingsPtrO }).(DomainSharingSettingsPtrOutput) } +func (o DomainUserSettingsPtrOutput) SpaceStorageSettings() DomainDefaultSpaceStorageSettingsPtrOutput { + return o.ApplyT(func(v *DomainUserSettings) *DomainDefaultSpaceStorageSettings { + if v == nil { + return nil + } + return v.SpaceStorageSettings + }).(DomainDefaultSpaceStorageSettingsPtrOutput) +} + +// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. +func (o DomainUserSettingsPtrOutput) StudioWebPortal() DomainUserSettingsStudioWebPortalPtrOutput { + return o.ApplyT(func(v *DomainUserSettings) *DomainUserSettingsStudioWebPortal { + if v == nil { + return nil + } + return v.StudioWebPortal + }).(DomainUserSettingsStudioWebPortalPtrOutput) +} + type EndpointAlarm struct { AlarmName string `pulumi:"alarmName"` } @@ -40357,6 +41802,7 @@ func (o OfflineStoreConfigPropertiesPtrOutput) TableFormat() FeatureGroupTableFo type OnlineStoreConfigProperties struct { EnableOnlineStore *bool `pulumi:"enableOnlineStore"` SecurityConfig *FeatureGroupOnlineStoreSecurityConfig `pulumi:"securityConfig"` + StorageType *FeatureGroupStorageType `pulumi:"storageType"` } // OnlineStoreConfigPropertiesInput is an input type that accepts OnlineStoreConfigPropertiesArgs and OnlineStoreConfigPropertiesOutput values. @@ -40373,6 +41819,7 @@ type OnlineStoreConfigPropertiesInput interface { type OnlineStoreConfigPropertiesArgs struct { EnableOnlineStore pulumi.BoolPtrInput `pulumi:"enableOnlineStore"` SecurityConfig FeatureGroupOnlineStoreSecurityConfigPtrInput `pulumi:"securityConfig"` + StorageType FeatureGroupStorageTypePtrInput `pulumi:"storageType"` } func (OnlineStoreConfigPropertiesArgs) ElementType() reflect.Type { @@ -40478,6 +41925,10 @@ func (o OnlineStoreConfigPropertiesOutput) SecurityConfig() FeatureGroupOnlineSt return o.ApplyT(func(v OnlineStoreConfigProperties) *FeatureGroupOnlineStoreSecurityConfig { return v.SecurityConfig }).(FeatureGroupOnlineStoreSecurityConfigPtrOutput) } +func (o OnlineStoreConfigPropertiesOutput) StorageType() FeatureGroupStorageTypePtrOutput { + return o.ApplyT(func(v OnlineStoreConfigProperties) *FeatureGroupStorageType { return v.StorageType }).(FeatureGroupStorageTypePtrOutput) +} + type OnlineStoreConfigPropertiesPtrOutput struct{ *pulumi.OutputState } func (OnlineStoreConfigPropertiesPtrOutput) ElementType() reflect.Type { @@ -40526,6 +41977,15 @@ func (o OnlineStoreConfigPropertiesPtrOutput) SecurityConfig() FeatureGroupOnlin }).(FeatureGroupOnlineStoreSecurityConfigPtrOutput) } +func (o OnlineStoreConfigPropertiesPtrOutput) StorageType() FeatureGroupStorageTypePtrOutput { + return o.ApplyT(func(v *OnlineStoreConfigProperties) *FeatureGroupStorageType { + if v == nil { + return nil + } + return v.StorageType + }).(FeatureGroupStorageTypePtrOutput) +} + type ParallelismConfigurationProperties struct { // Maximum parallel execution steps MaxParallelExecutionSteps int `pulumi:"maxParallelExecutionSteps"` @@ -41755,743 +43215,2077 @@ func (i *spaceKernelGatewayAppSettingsPtrType) ToOutput(ctx context.Context) pul } } -// The kernel gateway app settings. -type SpaceKernelGatewayAppSettingsOutput struct{ *pulumi.OutputState } +// The kernel gateway app settings. +type SpaceKernelGatewayAppSettingsOutput struct{ *pulumi.OutputState } + +func (SpaceKernelGatewayAppSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SpaceKernelGatewayAppSettings)(nil)).Elem() +} + +func (o SpaceKernelGatewayAppSettingsOutput) ToSpaceKernelGatewayAppSettingsOutput() SpaceKernelGatewayAppSettingsOutput { + return o +} + +func (o SpaceKernelGatewayAppSettingsOutput) ToSpaceKernelGatewayAppSettingsOutputWithContext(ctx context.Context) SpaceKernelGatewayAppSettingsOutput { + return o +} + +func (o SpaceKernelGatewayAppSettingsOutput) ToSpaceKernelGatewayAppSettingsPtrOutput() SpaceKernelGatewayAppSettingsPtrOutput { + return o.ToSpaceKernelGatewayAppSettingsPtrOutputWithContext(context.Background()) +} + +func (o SpaceKernelGatewayAppSettingsOutput) ToSpaceKernelGatewayAppSettingsPtrOutputWithContext(ctx context.Context) SpaceKernelGatewayAppSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SpaceKernelGatewayAppSettings) *SpaceKernelGatewayAppSettings { + return &v + }).(SpaceKernelGatewayAppSettingsPtrOutput) +} + +func (o SpaceKernelGatewayAppSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[SpaceKernelGatewayAppSettings] { + return pulumix.Output[SpaceKernelGatewayAppSettings]{ + OutputState: o.OutputState, + } +} + +// A list of custom SageMaker images that are configured to run as a KernelGateway app. +func (o SpaceKernelGatewayAppSettingsOutput) CustomImages() SpaceCustomImageArrayOutput { + return o.ApplyT(func(v SpaceKernelGatewayAppSettings) []SpaceCustomImage { return v.CustomImages }).(SpaceCustomImageArrayOutput) +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app. +func (o SpaceKernelGatewayAppSettingsOutput) DefaultResourceSpec() SpaceResourceSpecPtrOutput { + return o.ApplyT(func(v SpaceKernelGatewayAppSettings) *SpaceResourceSpec { return v.DefaultResourceSpec }).(SpaceResourceSpecPtrOutput) +} + +type SpaceKernelGatewayAppSettingsPtrOutput struct{ *pulumi.OutputState } + +func (SpaceKernelGatewayAppSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SpaceKernelGatewayAppSettings)(nil)).Elem() +} + +func (o SpaceKernelGatewayAppSettingsPtrOutput) ToSpaceKernelGatewayAppSettingsPtrOutput() SpaceKernelGatewayAppSettingsPtrOutput { + return o +} + +func (o SpaceKernelGatewayAppSettingsPtrOutput) ToSpaceKernelGatewayAppSettingsPtrOutputWithContext(ctx context.Context) SpaceKernelGatewayAppSettingsPtrOutput { + return o +} + +func (o SpaceKernelGatewayAppSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*SpaceKernelGatewayAppSettings] { + return pulumix.Output[*SpaceKernelGatewayAppSettings]{ + OutputState: o.OutputState, + } +} + +func (o SpaceKernelGatewayAppSettingsPtrOutput) Elem() SpaceKernelGatewayAppSettingsOutput { + return o.ApplyT(func(v *SpaceKernelGatewayAppSettings) SpaceKernelGatewayAppSettings { + if v != nil { + return *v + } + var ret SpaceKernelGatewayAppSettings + return ret + }).(SpaceKernelGatewayAppSettingsOutput) +} + +// A list of custom SageMaker images that are configured to run as a KernelGateway app. +func (o SpaceKernelGatewayAppSettingsPtrOutput) CustomImages() SpaceCustomImageArrayOutput { + return o.ApplyT(func(v *SpaceKernelGatewayAppSettings) []SpaceCustomImage { + if v == nil { + return nil + } + return v.CustomImages + }).(SpaceCustomImageArrayOutput) +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app. +func (o SpaceKernelGatewayAppSettingsPtrOutput) DefaultResourceSpec() SpaceResourceSpecPtrOutput { + return o.ApplyT(func(v *SpaceKernelGatewayAppSettings) *SpaceResourceSpec { + if v == nil { + return nil + } + return v.DefaultResourceSpec + }).(SpaceResourceSpecPtrOutput) +} + +type SpaceResourceSpec struct { + // The instance type that the image version runs on. + InstanceType *SpaceResourceSpecInstanceType `pulumi:"instanceType"` + // The ARN of the SageMaker image that the image version belongs to. + SageMakerImageArn *string `pulumi:"sageMakerImageArn"` + // The ARN of the image version created on the instance. + SageMakerImageVersionArn *string `pulumi:"sageMakerImageVersionArn"` +} + +// SpaceResourceSpecInput is an input type that accepts SpaceResourceSpecArgs and SpaceResourceSpecOutput values. +// You can construct a concrete instance of `SpaceResourceSpecInput` via: +// +// SpaceResourceSpecArgs{...} +type SpaceResourceSpecInput interface { + pulumi.Input + + ToSpaceResourceSpecOutput() SpaceResourceSpecOutput + ToSpaceResourceSpecOutputWithContext(context.Context) SpaceResourceSpecOutput +} + +type SpaceResourceSpecArgs struct { + // The instance type that the image version runs on. + InstanceType SpaceResourceSpecInstanceTypePtrInput `pulumi:"instanceType"` + // The ARN of the SageMaker image that the image version belongs to. + SageMakerImageArn pulumi.StringPtrInput `pulumi:"sageMakerImageArn"` + // The ARN of the image version created on the instance. + SageMakerImageVersionArn pulumi.StringPtrInput `pulumi:"sageMakerImageVersionArn"` +} + +func (SpaceResourceSpecArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SpaceResourceSpec)(nil)).Elem() +} + +func (i SpaceResourceSpecArgs) ToSpaceResourceSpecOutput() SpaceResourceSpecOutput { + return i.ToSpaceResourceSpecOutputWithContext(context.Background()) +} + +func (i SpaceResourceSpecArgs) ToSpaceResourceSpecOutputWithContext(ctx context.Context) SpaceResourceSpecOutput { + return pulumi.ToOutputWithContext(ctx, i).(SpaceResourceSpecOutput) +} + +func (i SpaceResourceSpecArgs) ToOutput(ctx context.Context) pulumix.Output[SpaceResourceSpec] { + return pulumix.Output[SpaceResourceSpec]{ + OutputState: i.ToSpaceResourceSpecOutputWithContext(ctx).OutputState, + } +} + +func (i SpaceResourceSpecArgs) ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput { + return i.ToSpaceResourceSpecPtrOutputWithContext(context.Background()) +} + +func (i SpaceResourceSpecArgs) ToSpaceResourceSpecPtrOutputWithContext(ctx context.Context) SpaceResourceSpecPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SpaceResourceSpecOutput).ToSpaceResourceSpecPtrOutputWithContext(ctx) +} + +// SpaceResourceSpecPtrInput is an input type that accepts SpaceResourceSpecArgs, SpaceResourceSpecPtr and SpaceResourceSpecPtrOutput values. +// You can construct a concrete instance of `SpaceResourceSpecPtrInput` via: +// +// SpaceResourceSpecArgs{...} +// +// or: +// +// nil +type SpaceResourceSpecPtrInput interface { + pulumi.Input + + ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput + ToSpaceResourceSpecPtrOutputWithContext(context.Context) SpaceResourceSpecPtrOutput +} + +type spaceResourceSpecPtrType SpaceResourceSpecArgs + +func SpaceResourceSpecPtr(v *SpaceResourceSpecArgs) SpaceResourceSpecPtrInput { + return (*spaceResourceSpecPtrType)(v) +} + +func (*spaceResourceSpecPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SpaceResourceSpec)(nil)).Elem() +} + +func (i *spaceResourceSpecPtrType) ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput { + return i.ToSpaceResourceSpecPtrOutputWithContext(context.Background()) +} + +func (i *spaceResourceSpecPtrType) ToSpaceResourceSpecPtrOutputWithContext(ctx context.Context) SpaceResourceSpecPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SpaceResourceSpecPtrOutput) +} + +func (i *spaceResourceSpecPtrType) ToOutput(ctx context.Context) pulumix.Output[*SpaceResourceSpec] { + return pulumix.Output[*SpaceResourceSpec]{ + OutputState: i.ToSpaceResourceSpecPtrOutputWithContext(ctx).OutputState, + } +} + +type SpaceResourceSpecOutput struct{ *pulumi.OutputState } + +func (SpaceResourceSpecOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SpaceResourceSpec)(nil)).Elem() +} + +func (o SpaceResourceSpecOutput) ToSpaceResourceSpecOutput() SpaceResourceSpecOutput { + return o +} + +func (o SpaceResourceSpecOutput) ToSpaceResourceSpecOutputWithContext(ctx context.Context) SpaceResourceSpecOutput { + return o +} + +func (o SpaceResourceSpecOutput) ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput { + return o.ToSpaceResourceSpecPtrOutputWithContext(context.Background()) +} + +func (o SpaceResourceSpecOutput) ToSpaceResourceSpecPtrOutputWithContext(ctx context.Context) SpaceResourceSpecPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SpaceResourceSpec) *SpaceResourceSpec { + return &v + }).(SpaceResourceSpecPtrOutput) +} + +func (o SpaceResourceSpecOutput) ToOutput(ctx context.Context) pulumix.Output[SpaceResourceSpec] { + return pulumix.Output[SpaceResourceSpec]{ + OutputState: o.OutputState, + } +} + +// The instance type that the image version runs on. +func (o SpaceResourceSpecOutput) InstanceType() SpaceResourceSpecInstanceTypePtrOutput { + return o.ApplyT(func(v SpaceResourceSpec) *SpaceResourceSpecInstanceType { return v.InstanceType }).(SpaceResourceSpecInstanceTypePtrOutput) +} + +// The ARN of the SageMaker image that the image version belongs to. +func (o SpaceResourceSpecOutput) SageMakerImageArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v SpaceResourceSpec) *string { return v.SageMakerImageArn }).(pulumi.StringPtrOutput) +} + +// The ARN of the image version created on the instance. +func (o SpaceResourceSpecOutput) SageMakerImageVersionArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v SpaceResourceSpec) *string { return v.SageMakerImageVersionArn }).(pulumi.StringPtrOutput) +} + +type SpaceResourceSpecPtrOutput struct{ *pulumi.OutputState } + +func (SpaceResourceSpecPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SpaceResourceSpec)(nil)).Elem() +} + +func (o SpaceResourceSpecPtrOutput) ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput { + return o +} + +func (o SpaceResourceSpecPtrOutput) ToSpaceResourceSpecPtrOutputWithContext(ctx context.Context) SpaceResourceSpecPtrOutput { + return o +} + +func (o SpaceResourceSpecPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*SpaceResourceSpec] { + return pulumix.Output[*SpaceResourceSpec]{ + OutputState: o.OutputState, + } +} + +func (o SpaceResourceSpecPtrOutput) Elem() SpaceResourceSpecOutput { + return o.ApplyT(func(v *SpaceResourceSpec) SpaceResourceSpec { + if v != nil { + return *v + } + var ret SpaceResourceSpec + return ret + }).(SpaceResourceSpecOutput) +} + +// The instance type that the image version runs on. +func (o SpaceResourceSpecPtrOutput) InstanceType() SpaceResourceSpecInstanceTypePtrOutput { + return o.ApplyT(func(v *SpaceResourceSpec) *SpaceResourceSpecInstanceType { + if v == nil { + return nil + } + return v.InstanceType + }).(SpaceResourceSpecInstanceTypePtrOutput) +} + +// The ARN of the SageMaker image that the image version belongs to. +func (o SpaceResourceSpecPtrOutput) SageMakerImageArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SpaceResourceSpec) *string { + if v == nil { + return nil + } + return v.SageMakerImageArn + }).(pulumi.StringPtrOutput) +} + +// The ARN of the image version created on the instance. +func (o SpaceResourceSpecPtrOutput) SageMakerImageVersionArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *SpaceResourceSpec) *string { + if v == nil { + return nil + } + return v.SageMakerImageVersionArn + }).(pulumi.StringPtrOutput) +} + +// A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the CreateSpace API is called. +type SpaceSettings struct { + // The Jupyter server's app settings. + JupyterServerAppSettings *SpaceJupyterServerAppSettings `pulumi:"jupyterServerAppSettings"` + // The kernel gateway app settings. + KernelGatewayAppSettings *SpaceKernelGatewayAppSettings `pulumi:"kernelGatewayAppSettings"` +} + +// SpaceSettingsInput is an input type that accepts SpaceSettingsArgs and SpaceSettingsOutput values. +// You can construct a concrete instance of `SpaceSettingsInput` via: +// +// SpaceSettingsArgs{...} +type SpaceSettingsInput interface { + pulumi.Input + + ToSpaceSettingsOutput() SpaceSettingsOutput + ToSpaceSettingsOutputWithContext(context.Context) SpaceSettingsOutput +} + +// A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the CreateSpace API is called. +type SpaceSettingsArgs struct { + // The Jupyter server's app settings. + JupyterServerAppSettings SpaceJupyterServerAppSettingsPtrInput `pulumi:"jupyterServerAppSettings"` + // The kernel gateway app settings. + KernelGatewayAppSettings SpaceKernelGatewayAppSettingsPtrInput `pulumi:"kernelGatewayAppSettings"` +} + +func (SpaceSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SpaceSettings)(nil)).Elem() +} + +func (i SpaceSettingsArgs) ToSpaceSettingsOutput() SpaceSettingsOutput { + return i.ToSpaceSettingsOutputWithContext(context.Background()) +} + +func (i SpaceSettingsArgs) ToSpaceSettingsOutputWithContext(ctx context.Context) SpaceSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(SpaceSettingsOutput) +} + +func (i SpaceSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[SpaceSettings] { + return pulumix.Output[SpaceSettings]{ + OutputState: i.ToSpaceSettingsOutputWithContext(ctx).OutputState, + } +} + +func (i SpaceSettingsArgs) ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput { + return i.ToSpaceSettingsPtrOutputWithContext(context.Background()) +} + +func (i SpaceSettingsArgs) ToSpaceSettingsPtrOutputWithContext(ctx context.Context) SpaceSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SpaceSettingsOutput).ToSpaceSettingsPtrOutputWithContext(ctx) +} + +// SpaceSettingsPtrInput is an input type that accepts SpaceSettingsArgs, SpaceSettingsPtr and SpaceSettingsPtrOutput values. +// You can construct a concrete instance of `SpaceSettingsPtrInput` via: +// +// SpaceSettingsArgs{...} +// +// or: +// +// nil +type SpaceSettingsPtrInput interface { + pulumi.Input + + ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput + ToSpaceSettingsPtrOutputWithContext(context.Context) SpaceSettingsPtrOutput +} + +type spaceSettingsPtrType SpaceSettingsArgs + +func SpaceSettingsPtr(v *SpaceSettingsArgs) SpaceSettingsPtrInput { + return (*spaceSettingsPtrType)(v) +} + +func (*spaceSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**SpaceSettings)(nil)).Elem() +} + +func (i *spaceSettingsPtrType) ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput { + return i.ToSpaceSettingsPtrOutputWithContext(context.Background()) +} + +func (i *spaceSettingsPtrType) ToSpaceSettingsPtrOutputWithContext(ctx context.Context) SpaceSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(SpaceSettingsPtrOutput) +} + +func (i *spaceSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*SpaceSettings] { + return pulumix.Output[*SpaceSettings]{ + OutputState: i.ToSpaceSettingsPtrOutputWithContext(ctx).OutputState, + } +} + +// A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the CreateSpace API is called. +type SpaceSettingsOutput struct{ *pulumi.OutputState } + +func (SpaceSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SpaceSettings)(nil)).Elem() +} + +func (o SpaceSettingsOutput) ToSpaceSettingsOutput() SpaceSettingsOutput { + return o +} + +func (o SpaceSettingsOutput) ToSpaceSettingsOutputWithContext(ctx context.Context) SpaceSettingsOutput { + return o +} + +func (o SpaceSettingsOutput) ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput { + return o.ToSpaceSettingsPtrOutputWithContext(context.Background()) +} + +func (o SpaceSettingsOutput) ToSpaceSettingsPtrOutputWithContext(ctx context.Context) SpaceSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v SpaceSettings) *SpaceSettings { + return &v + }).(SpaceSettingsPtrOutput) +} + +func (o SpaceSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[SpaceSettings] { + return pulumix.Output[SpaceSettings]{ + OutputState: o.OutputState, + } +} + +// The Jupyter server's app settings. +func (o SpaceSettingsOutput) JupyterServerAppSettings() SpaceJupyterServerAppSettingsPtrOutput { + return o.ApplyT(func(v SpaceSettings) *SpaceJupyterServerAppSettings { return v.JupyterServerAppSettings }).(SpaceJupyterServerAppSettingsPtrOutput) +} + +// The kernel gateway app settings. +func (o SpaceSettingsOutput) KernelGatewayAppSettings() SpaceKernelGatewayAppSettingsPtrOutput { + return o.ApplyT(func(v SpaceSettings) *SpaceKernelGatewayAppSettings { return v.KernelGatewayAppSettings }).(SpaceKernelGatewayAppSettingsPtrOutput) +} + +type SpaceSettingsPtrOutput struct{ *pulumi.OutputState } + +func (SpaceSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**SpaceSettings)(nil)).Elem() +} + +func (o SpaceSettingsPtrOutput) ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput { + return o +} + +func (o SpaceSettingsPtrOutput) ToSpaceSettingsPtrOutputWithContext(ctx context.Context) SpaceSettingsPtrOutput { + return o +} + +func (o SpaceSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*SpaceSettings] { + return pulumix.Output[*SpaceSettings]{ + OutputState: o.OutputState, + } +} + +func (o SpaceSettingsPtrOutput) Elem() SpaceSettingsOutput { + return o.ApplyT(func(v *SpaceSettings) SpaceSettings { + if v != nil { + return *v + } + var ret SpaceSettings + return ret + }).(SpaceSettingsOutput) +} + +// The Jupyter server's app settings. +func (o SpaceSettingsPtrOutput) JupyterServerAppSettings() SpaceJupyterServerAppSettingsPtrOutput { + return o.ApplyT(func(v *SpaceSettings) *SpaceJupyterServerAppSettings { + if v == nil { + return nil + } + return v.JupyterServerAppSettings + }).(SpaceJupyterServerAppSettingsPtrOutput) +} + +// The kernel gateway app settings. +func (o SpaceSettingsPtrOutput) KernelGatewayAppSettings() SpaceKernelGatewayAppSettingsPtrOutput { + return o.ApplyT(func(v *SpaceSettings) *SpaceKernelGatewayAppSettings { + if v == nil { + return nil + } + return v.KernelGatewayAppSettings + }).(SpaceKernelGatewayAppSettingsPtrOutput) +} + +type SpaceTag struct { + Key string `pulumi:"key"` + Value string `pulumi:"value"` +} + +// SpaceTagInput is an input type that accepts SpaceTagArgs and SpaceTagOutput values. +// You can construct a concrete instance of `SpaceTagInput` via: +// +// SpaceTagArgs{...} +type SpaceTagInput interface { + pulumi.Input + + ToSpaceTagOutput() SpaceTagOutput + ToSpaceTagOutputWithContext(context.Context) SpaceTagOutput +} + +type SpaceTagArgs struct { + Key pulumi.StringInput `pulumi:"key"` + Value pulumi.StringInput `pulumi:"value"` +} + +func (SpaceTagArgs) ElementType() reflect.Type { + return reflect.TypeOf((*SpaceTag)(nil)).Elem() +} + +func (i SpaceTagArgs) ToSpaceTagOutput() SpaceTagOutput { + return i.ToSpaceTagOutputWithContext(context.Background()) +} + +func (i SpaceTagArgs) ToSpaceTagOutputWithContext(ctx context.Context) SpaceTagOutput { + return pulumi.ToOutputWithContext(ctx, i).(SpaceTagOutput) +} + +func (i SpaceTagArgs) ToOutput(ctx context.Context) pulumix.Output[SpaceTag] { + return pulumix.Output[SpaceTag]{ + OutputState: i.ToSpaceTagOutputWithContext(ctx).OutputState, + } +} + +// SpaceTagArrayInput is an input type that accepts SpaceTagArray and SpaceTagArrayOutput values. +// You can construct a concrete instance of `SpaceTagArrayInput` via: +// +// SpaceTagArray{ SpaceTagArgs{...} } +type SpaceTagArrayInput interface { + pulumi.Input + + ToSpaceTagArrayOutput() SpaceTagArrayOutput + ToSpaceTagArrayOutputWithContext(context.Context) SpaceTagArrayOutput +} + +type SpaceTagArray []SpaceTagInput + +func (SpaceTagArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]SpaceTag)(nil)).Elem() +} + +func (i SpaceTagArray) ToSpaceTagArrayOutput() SpaceTagArrayOutput { + return i.ToSpaceTagArrayOutputWithContext(context.Background()) +} + +func (i SpaceTagArray) ToSpaceTagArrayOutputWithContext(ctx context.Context) SpaceTagArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(SpaceTagArrayOutput) +} + +func (i SpaceTagArray) ToOutput(ctx context.Context) pulumix.Output[[]SpaceTag] { + return pulumix.Output[[]SpaceTag]{ + OutputState: i.ToSpaceTagArrayOutputWithContext(ctx).OutputState, + } +} + +type SpaceTagOutput struct{ *pulumi.OutputState } + +func (SpaceTagOutput) ElementType() reflect.Type { + return reflect.TypeOf((*SpaceTag)(nil)).Elem() +} + +func (o SpaceTagOutput) ToSpaceTagOutput() SpaceTagOutput { + return o +} + +func (o SpaceTagOutput) ToSpaceTagOutputWithContext(ctx context.Context) SpaceTagOutput { + return o +} + +func (o SpaceTagOutput) ToOutput(ctx context.Context) pulumix.Output[SpaceTag] { + return pulumix.Output[SpaceTag]{ + OutputState: o.OutputState, + } +} + +func (o SpaceTagOutput) Key() pulumi.StringOutput { + return o.ApplyT(func(v SpaceTag) string { return v.Key }).(pulumi.StringOutput) +} + +func (o SpaceTagOutput) Value() pulumi.StringOutput { + return o.ApplyT(func(v SpaceTag) string { return v.Value }).(pulumi.StringOutput) +} + +type SpaceTagArrayOutput struct{ *pulumi.OutputState } + +func (SpaceTagArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]SpaceTag)(nil)).Elem() +} + +func (o SpaceTagArrayOutput) ToSpaceTagArrayOutput() SpaceTagArrayOutput { + return o +} + +func (o SpaceTagArrayOutput) ToSpaceTagArrayOutputWithContext(ctx context.Context) SpaceTagArrayOutput { + return o +} + +func (o SpaceTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]SpaceTag] { + return pulumix.Output[[]SpaceTag]{ + OutputState: o.OutputState, + } +} + +func (o SpaceTagArrayOutput) Index(i pulumi.IntInput) SpaceTagOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) SpaceTag { + return vs[0].([]SpaceTag)[vs[1].(int)] + }).(SpaceTagOutput) +} + +// The CodeEditor app settings. +type UserProfileCodeEditorAppSettings struct { + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + DefaultResourceSpec *UserProfileResourceSpec `pulumi:"defaultResourceSpec"` + // A list of LifecycleConfigArns available for use with CodeEditor apps. + LifecycleConfigArns []string `pulumi:"lifecycleConfigArns"` +} + +// UserProfileCodeEditorAppSettingsInput is an input type that accepts UserProfileCodeEditorAppSettingsArgs and UserProfileCodeEditorAppSettingsOutput values. +// You can construct a concrete instance of `UserProfileCodeEditorAppSettingsInput` via: +// +// UserProfileCodeEditorAppSettingsArgs{...} +type UserProfileCodeEditorAppSettingsInput interface { + pulumi.Input + + ToUserProfileCodeEditorAppSettingsOutput() UserProfileCodeEditorAppSettingsOutput + ToUserProfileCodeEditorAppSettingsOutputWithContext(context.Context) UserProfileCodeEditorAppSettingsOutput +} + +// The CodeEditor app settings. +type UserProfileCodeEditorAppSettingsArgs struct { + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + DefaultResourceSpec UserProfileResourceSpecPtrInput `pulumi:"defaultResourceSpec"` + // A list of LifecycleConfigArns available for use with CodeEditor apps. + LifecycleConfigArns pulumi.StringArrayInput `pulumi:"lifecycleConfigArns"` +} + +func (UserProfileCodeEditorAppSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCodeEditorAppSettings)(nil)).Elem() +} + +func (i UserProfileCodeEditorAppSettingsArgs) ToUserProfileCodeEditorAppSettingsOutput() UserProfileCodeEditorAppSettingsOutput { + return i.ToUserProfileCodeEditorAppSettingsOutputWithContext(context.Background()) +} + +func (i UserProfileCodeEditorAppSettingsArgs) ToUserProfileCodeEditorAppSettingsOutputWithContext(ctx context.Context) UserProfileCodeEditorAppSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCodeEditorAppSettingsOutput) +} + +func (i UserProfileCodeEditorAppSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileCodeEditorAppSettings] { + return pulumix.Output[UserProfileCodeEditorAppSettings]{ + OutputState: i.ToUserProfileCodeEditorAppSettingsOutputWithContext(ctx).OutputState, + } +} + +func (i UserProfileCodeEditorAppSettingsArgs) ToUserProfileCodeEditorAppSettingsPtrOutput() UserProfileCodeEditorAppSettingsPtrOutput { + return i.ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i UserProfileCodeEditorAppSettingsArgs) ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(ctx context.Context) UserProfileCodeEditorAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCodeEditorAppSettingsOutput).ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(ctx) +} + +// UserProfileCodeEditorAppSettingsPtrInput is an input type that accepts UserProfileCodeEditorAppSettingsArgs, UserProfileCodeEditorAppSettingsPtr and UserProfileCodeEditorAppSettingsPtrOutput values. +// You can construct a concrete instance of `UserProfileCodeEditorAppSettingsPtrInput` via: +// +// UserProfileCodeEditorAppSettingsArgs{...} +// +// or: +// +// nil +type UserProfileCodeEditorAppSettingsPtrInput interface { + pulumi.Input + + ToUserProfileCodeEditorAppSettingsPtrOutput() UserProfileCodeEditorAppSettingsPtrOutput + ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(context.Context) UserProfileCodeEditorAppSettingsPtrOutput +} + +type userProfileCodeEditorAppSettingsPtrType UserProfileCodeEditorAppSettingsArgs + +func UserProfileCodeEditorAppSettingsPtr(v *UserProfileCodeEditorAppSettingsArgs) UserProfileCodeEditorAppSettingsPtrInput { + return (*userProfileCodeEditorAppSettingsPtrType)(v) +} + +func (*userProfileCodeEditorAppSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileCodeEditorAppSettings)(nil)).Elem() +} + +func (i *userProfileCodeEditorAppSettingsPtrType) ToUserProfileCodeEditorAppSettingsPtrOutput() UserProfileCodeEditorAppSettingsPtrOutput { + return i.ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i *userProfileCodeEditorAppSettingsPtrType) ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(ctx context.Context) UserProfileCodeEditorAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCodeEditorAppSettingsPtrOutput) +} + +func (i *userProfileCodeEditorAppSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*UserProfileCodeEditorAppSettings] { + return pulumix.Output[*UserProfileCodeEditorAppSettings]{ + OutputState: i.ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(ctx).OutputState, + } +} + +// The CodeEditor app settings. +type UserProfileCodeEditorAppSettingsOutput struct{ *pulumi.OutputState } + +func (UserProfileCodeEditorAppSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCodeEditorAppSettings)(nil)).Elem() +} + +func (o UserProfileCodeEditorAppSettingsOutput) ToUserProfileCodeEditorAppSettingsOutput() UserProfileCodeEditorAppSettingsOutput { + return o +} + +func (o UserProfileCodeEditorAppSettingsOutput) ToUserProfileCodeEditorAppSettingsOutputWithContext(ctx context.Context) UserProfileCodeEditorAppSettingsOutput { + return o +} + +func (o UserProfileCodeEditorAppSettingsOutput) ToUserProfileCodeEditorAppSettingsPtrOutput() UserProfileCodeEditorAppSettingsPtrOutput { + return o.ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(context.Background()) +} + +func (o UserProfileCodeEditorAppSettingsOutput) ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(ctx context.Context) UserProfileCodeEditorAppSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserProfileCodeEditorAppSettings) *UserProfileCodeEditorAppSettings { + return &v + }).(UserProfileCodeEditorAppSettingsPtrOutput) +} + +func (o UserProfileCodeEditorAppSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileCodeEditorAppSettings] { + return pulumix.Output[UserProfileCodeEditorAppSettings]{ + OutputState: o.OutputState, + } +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. +func (o UserProfileCodeEditorAppSettingsOutput) DefaultResourceSpec() UserProfileResourceSpecPtrOutput { + return o.ApplyT(func(v UserProfileCodeEditorAppSettings) *UserProfileResourceSpec { return v.DefaultResourceSpec }).(UserProfileResourceSpecPtrOutput) +} + +// A list of LifecycleConfigArns available for use with CodeEditor apps. +func (o UserProfileCodeEditorAppSettingsOutput) LifecycleConfigArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v UserProfileCodeEditorAppSettings) []string { return v.LifecycleConfigArns }).(pulumi.StringArrayOutput) +} + +type UserProfileCodeEditorAppSettingsPtrOutput struct{ *pulumi.OutputState } + +func (UserProfileCodeEditorAppSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileCodeEditorAppSettings)(nil)).Elem() +} + +func (o UserProfileCodeEditorAppSettingsPtrOutput) ToUserProfileCodeEditorAppSettingsPtrOutput() UserProfileCodeEditorAppSettingsPtrOutput { + return o +} + +func (o UserProfileCodeEditorAppSettingsPtrOutput) ToUserProfileCodeEditorAppSettingsPtrOutputWithContext(ctx context.Context) UserProfileCodeEditorAppSettingsPtrOutput { + return o +} + +func (o UserProfileCodeEditorAppSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*UserProfileCodeEditorAppSettings] { + return pulumix.Output[*UserProfileCodeEditorAppSettings]{ + OutputState: o.OutputState, + } +} + +func (o UserProfileCodeEditorAppSettingsPtrOutput) Elem() UserProfileCodeEditorAppSettingsOutput { + return o.ApplyT(func(v *UserProfileCodeEditorAppSettings) UserProfileCodeEditorAppSettings { + if v != nil { + return *v + } + var ret UserProfileCodeEditorAppSettings + return ret + }).(UserProfileCodeEditorAppSettingsOutput) +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. +func (o UserProfileCodeEditorAppSettingsPtrOutput) DefaultResourceSpec() UserProfileResourceSpecPtrOutput { + return o.ApplyT(func(v *UserProfileCodeEditorAppSettings) *UserProfileResourceSpec { + if v == nil { + return nil + } + return v.DefaultResourceSpec + }).(UserProfileResourceSpecPtrOutput) +} + +// A list of LifecycleConfigArns available for use with CodeEditor apps. +func (o UserProfileCodeEditorAppSettingsPtrOutput) LifecycleConfigArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v *UserProfileCodeEditorAppSettings) []string { + if v == nil { + return nil + } + return v.LifecycleConfigArns + }).(pulumi.StringArrayOutput) +} + +type UserProfileCodeRepository struct { + // A CodeRepository (valid URL) to be used within Jupyter's Git extension. + RepositoryUrl string `pulumi:"repositoryUrl"` +} + +// UserProfileCodeRepositoryInput is an input type that accepts UserProfileCodeRepositoryArgs and UserProfileCodeRepositoryOutput values. +// You can construct a concrete instance of `UserProfileCodeRepositoryInput` via: +// +// UserProfileCodeRepositoryArgs{...} +type UserProfileCodeRepositoryInput interface { + pulumi.Input + + ToUserProfileCodeRepositoryOutput() UserProfileCodeRepositoryOutput + ToUserProfileCodeRepositoryOutputWithContext(context.Context) UserProfileCodeRepositoryOutput +} + +type UserProfileCodeRepositoryArgs struct { + // A CodeRepository (valid URL) to be used within Jupyter's Git extension. + RepositoryUrl pulumi.StringInput `pulumi:"repositoryUrl"` +} + +func (UserProfileCodeRepositoryArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCodeRepository)(nil)).Elem() +} + +func (i UserProfileCodeRepositoryArgs) ToUserProfileCodeRepositoryOutput() UserProfileCodeRepositoryOutput { + return i.ToUserProfileCodeRepositoryOutputWithContext(context.Background()) +} + +func (i UserProfileCodeRepositoryArgs) ToUserProfileCodeRepositoryOutputWithContext(ctx context.Context) UserProfileCodeRepositoryOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCodeRepositoryOutput) +} + +func (i UserProfileCodeRepositoryArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileCodeRepository] { + return pulumix.Output[UserProfileCodeRepository]{ + OutputState: i.ToUserProfileCodeRepositoryOutputWithContext(ctx).OutputState, + } +} + +// UserProfileCodeRepositoryArrayInput is an input type that accepts UserProfileCodeRepositoryArray and UserProfileCodeRepositoryArrayOutput values. +// You can construct a concrete instance of `UserProfileCodeRepositoryArrayInput` via: +// +// UserProfileCodeRepositoryArray{ UserProfileCodeRepositoryArgs{...} } +type UserProfileCodeRepositoryArrayInput interface { + pulumi.Input + + ToUserProfileCodeRepositoryArrayOutput() UserProfileCodeRepositoryArrayOutput + ToUserProfileCodeRepositoryArrayOutputWithContext(context.Context) UserProfileCodeRepositoryArrayOutput +} + +type UserProfileCodeRepositoryArray []UserProfileCodeRepositoryInput + +func (UserProfileCodeRepositoryArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]UserProfileCodeRepository)(nil)).Elem() +} + +func (i UserProfileCodeRepositoryArray) ToUserProfileCodeRepositoryArrayOutput() UserProfileCodeRepositoryArrayOutput { + return i.ToUserProfileCodeRepositoryArrayOutputWithContext(context.Background()) +} + +func (i UserProfileCodeRepositoryArray) ToUserProfileCodeRepositoryArrayOutputWithContext(ctx context.Context) UserProfileCodeRepositoryArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCodeRepositoryArrayOutput) +} + +func (i UserProfileCodeRepositoryArray) ToOutput(ctx context.Context) pulumix.Output[[]UserProfileCodeRepository] { + return pulumix.Output[[]UserProfileCodeRepository]{ + OutputState: i.ToUserProfileCodeRepositoryArrayOutputWithContext(ctx).OutputState, + } +} + +type UserProfileCodeRepositoryOutput struct{ *pulumi.OutputState } + +func (UserProfileCodeRepositoryOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCodeRepository)(nil)).Elem() +} + +func (o UserProfileCodeRepositoryOutput) ToUserProfileCodeRepositoryOutput() UserProfileCodeRepositoryOutput { + return o +} + +func (o UserProfileCodeRepositoryOutput) ToUserProfileCodeRepositoryOutputWithContext(ctx context.Context) UserProfileCodeRepositoryOutput { + return o +} + +func (o UserProfileCodeRepositoryOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileCodeRepository] { + return pulumix.Output[UserProfileCodeRepository]{ + OutputState: o.OutputState, + } +} + +// A CodeRepository (valid URL) to be used within Jupyter's Git extension. +func (o UserProfileCodeRepositoryOutput) RepositoryUrl() pulumi.StringOutput { + return o.ApplyT(func(v UserProfileCodeRepository) string { return v.RepositoryUrl }).(pulumi.StringOutput) +} + +type UserProfileCodeRepositoryArrayOutput struct{ *pulumi.OutputState } + +func (UserProfileCodeRepositoryArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]UserProfileCodeRepository)(nil)).Elem() +} + +func (o UserProfileCodeRepositoryArrayOutput) ToUserProfileCodeRepositoryArrayOutput() UserProfileCodeRepositoryArrayOutput { + return o +} + +func (o UserProfileCodeRepositoryArrayOutput) ToUserProfileCodeRepositoryArrayOutputWithContext(ctx context.Context) UserProfileCodeRepositoryArrayOutput { + return o +} + +func (o UserProfileCodeRepositoryArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]UserProfileCodeRepository] { + return pulumix.Output[[]UserProfileCodeRepository]{ + OutputState: o.OutputState, + } +} + +func (o UserProfileCodeRepositoryArrayOutput) Index(i pulumi.IntInput) UserProfileCodeRepositoryOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) UserProfileCodeRepository { + return vs[0].([]UserProfileCodeRepository)[vs[1].(int)] + }).(UserProfileCodeRepositoryOutput) +} + +type UserProfileCustomFileSystemConfig struct { + EfsFileSystemConfig *UserProfileEfsFileSystemConfig `pulumi:"efsFileSystemConfig"` +} + +// UserProfileCustomFileSystemConfigInput is an input type that accepts UserProfileCustomFileSystemConfigArgs and UserProfileCustomFileSystemConfigOutput values. +// You can construct a concrete instance of `UserProfileCustomFileSystemConfigInput` via: +// +// UserProfileCustomFileSystemConfigArgs{...} +type UserProfileCustomFileSystemConfigInput interface { + pulumi.Input + + ToUserProfileCustomFileSystemConfigOutput() UserProfileCustomFileSystemConfigOutput + ToUserProfileCustomFileSystemConfigOutputWithContext(context.Context) UserProfileCustomFileSystemConfigOutput +} + +type UserProfileCustomFileSystemConfigArgs struct { + EfsFileSystemConfig UserProfileEfsFileSystemConfigPtrInput `pulumi:"efsFileSystemConfig"` +} + +func (UserProfileCustomFileSystemConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCustomFileSystemConfig)(nil)).Elem() +} + +func (i UserProfileCustomFileSystemConfigArgs) ToUserProfileCustomFileSystemConfigOutput() UserProfileCustomFileSystemConfigOutput { + return i.ToUserProfileCustomFileSystemConfigOutputWithContext(context.Background()) +} + +func (i UserProfileCustomFileSystemConfigArgs) ToUserProfileCustomFileSystemConfigOutputWithContext(ctx context.Context) UserProfileCustomFileSystemConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomFileSystemConfigOutput) +} + +func (i UserProfileCustomFileSystemConfigArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileCustomFileSystemConfig] { + return pulumix.Output[UserProfileCustomFileSystemConfig]{ + OutputState: i.ToUserProfileCustomFileSystemConfigOutputWithContext(ctx).OutputState, + } +} + +// UserProfileCustomFileSystemConfigArrayInput is an input type that accepts UserProfileCustomFileSystemConfigArray and UserProfileCustomFileSystemConfigArrayOutput values. +// You can construct a concrete instance of `UserProfileCustomFileSystemConfigArrayInput` via: +// +// UserProfileCustomFileSystemConfigArray{ UserProfileCustomFileSystemConfigArgs{...} } +type UserProfileCustomFileSystemConfigArrayInput interface { + pulumi.Input + + ToUserProfileCustomFileSystemConfigArrayOutput() UserProfileCustomFileSystemConfigArrayOutput + ToUserProfileCustomFileSystemConfigArrayOutputWithContext(context.Context) UserProfileCustomFileSystemConfigArrayOutput +} + +type UserProfileCustomFileSystemConfigArray []UserProfileCustomFileSystemConfigInput + +func (UserProfileCustomFileSystemConfigArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]UserProfileCustomFileSystemConfig)(nil)).Elem() +} + +func (i UserProfileCustomFileSystemConfigArray) ToUserProfileCustomFileSystemConfigArrayOutput() UserProfileCustomFileSystemConfigArrayOutput { + return i.ToUserProfileCustomFileSystemConfigArrayOutputWithContext(context.Background()) +} + +func (i UserProfileCustomFileSystemConfigArray) ToUserProfileCustomFileSystemConfigArrayOutputWithContext(ctx context.Context) UserProfileCustomFileSystemConfigArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomFileSystemConfigArrayOutput) +} + +func (i UserProfileCustomFileSystemConfigArray) ToOutput(ctx context.Context) pulumix.Output[[]UserProfileCustomFileSystemConfig] { + return pulumix.Output[[]UserProfileCustomFileSystemConfig]{ + OutputState: i.ToUserProfileCustomFileSystemConfigArrayOutputWithContext(ctx).OutputState, + } +} + +type UserProfileCustomFileSystemConfigOutput struct{ *pulumi.OutputState } + +func (UserProfileCustomFileSystemConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCustomFileSystemConfig)(nil)).Elem() +} + +func (o UserProfileCustomFileSystemConfigOutput) ToUserProfileCustomFileSystemConfigOutput() UserProfileCustomFileSystemConfigOutput { + return o +} + +func (o UserProfileCustomFileSystemConfigOutput) ToUserProfileCustomFileSystemConfigOutputWithContext(ctx context.Context) UserProfileCustomFileSystemConfigOutput { + return o +} + +func (o UserProfileCustomFileSystemConfigOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileCustomFileSystemConfig] { + return pulumix.Output[UserProfileCustomFileSystemConfig]{ + OutputState: o.OutputState, + } +} + +func (o UserProfileCustomFileSystemConfigOutput) EfsFileSystemConfig() UserProfileEfsFileSystemConfigPtrOutput { + return o.ApplyT(func(v UserProfileCustomFileSystemConfig) *UserProfileEfsFileSystemConfig { + return v.EfsFileSystemConfig + }).(UserProfileEfsFileSystemConfigPtrOutput) +} + +type UserProfileCustomFileSystemConfigArrayOutput struct{ *pulumi.OutputState } + +func (UserProfileCustomFileSystemConfigArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]UserProfileCustomFileSystemConfig)(nil)).Elem() +} + +func (o UserProfileCustomFileSystemConfigArrayOutput) ToUserProfileCustomFileSystemConfigArrayOutput() UserProfileCustomFileSystemConfigArrayOutput { + return o +} + +func (o UserProfileCustomFileSystemConfigArrayOutput) ToUserProfileCustomFileSystemConfigArrayOutputWithContext(ctx context.Context) UserProfileCustomFileSystemConfigArrayOutput { + return o +} + +func (o UserProfileCustomFileSystemConfigArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]UserProfileCustomFileSystemConfig] { + return pulumix.Output[[]UserProfileCustomFileSystemConfig]{ + OutputState: o.OutputState, + } +} + +func (o UserProfileCustomFileSystemConfigArrayOutput) Index(i pulumi.IntInput) UserProfileCustomFileSystemConfigOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) UserProfileCustomFileSystemConfig { + return vs[0].([]UserProfileCustomFileSystemConfig)[vs[1].(int)] + }).(UserProfileCustomFileSystemConfigOutput) +} + +// A custom SageMaker image. +type UserProfileCustomImage struct { + // The Name of the AppImageConfig. + AppImageConfigName string `pulumi:"appImageConfigName"` + // The name of the CustomImage. Must be unique to your account. + ImageName string `pulumi:"imageName"` + // The version number of the CustomImage. + ImageVersionNumber *int `pulumi:"imageVersionNumber"` +} + +// UserProfileCustomImageInput is an input type that accepts UserProfileCustomImageArgs and UserProfileCustomImageOutput values. +// You can construct a concrete instance of `UserProfileCustomImageInput` via: +// +// UserProfileCustomImageArgs{...} +type UserProfileCustomImageInput interface { + pulumi.Input + + ToUserProfileCustomImageOutput() UserProfileCustomImageOutput + ToUserProfileCustomImageOutputWithContext(context.Context) UserProfileCustomImageOutput +} + +// A custom SageMaker image. +type UserProfileCustomImageArgs struct { + // The Name of the AppImageConfig. + AppImageConfigName pulumi.StringInput `pulumi:"appImageConfigName"` + // The name of the CustomImage. Must be unique to your account. + ImageName pulumi.StringInput `pulumi:"imageName"` + // The version number of the CustomImage. + ImageVersionNumber pulumi.IntPtrInput `pulumi:"imageVersionNumber"` +} + +func (UserProfileCustomImageArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCustomImage)(nil)).Elem() +} + +func (i UserProfileCustomImageArgs) ToUserProfileCustomImageOutput() UserProfileCustomImageOutput { + return i.ToUserProfileCustomImageOutputWithContext(context.Background()) +} + +func (i UserProfileCustomImageArgs) ToUserProfileCustomImageOutputWithContext(ctx context.Context) UserProfileCustomImageOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomImageOutput) +} + +func (i UserProfileCustomImageArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileCustomImage] { + return pulumix.Output[UserProfileCustomImage]{ + OutputState: i.ToUserProfileCustomImageOutputWithContext(ctx).OutputState, + } +} + +// UserProfileCustomImageArrayInput is an input type that accepts UserProfileCustomImageArray and UserProfileCustomImageArrayOutput values. +// You can construct a concrete instance of `UserProfileCustomImageArrayInput` via: +// +// UserProfileCustomImageArray{ UserProfileCustomImageArgs{...} } +type UserProfileCustomImageArrayInput interface { + pulumi.Input + + ToUserProfileCustomImageArrayOutput() UserProfileCustomImageArrayOutput + ToUserProfileCustomImageArrayOutputWithContext(context.Context) UserProfileCustomImageArrayOutput +} + +type UserProfileCustomImageArray []UserProfileCustomImageInput + +func (UserProfileCustomImageArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]UserProfileCustomImage)(nil)).Elem() +} + +func (i UserProfileCustomImageArray) ToUserProfileCustomImageArrayOutput() UserProfileCustomImageArrayOutput { + return i.ToUserProfileCustomImageArrayOutputWithContext(context.Background()) +} + +func (i UserProfileCustomImageArray) ToUserProfileCustomImageArrayOutputWithContext(ctx context.Context) UserProfileCustomImageArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomImageArrayOutput) +} + +func (i UserProfileCustomImageArray) ToOutput(ctx context.Context) pulumix.Output[[]UserProfileCustomImage] { + return pulumix.Output[[]UserProfileCustomImage]{ + OutputState: i.ToUserProfileCustomImageArrayOutputWithContext(ctx).OutputState, + } +} + +// A custom SageMaker image. +type UserProfileCustomImageOutput struct{ *pulumi.OutputState } + +func (UserProfileCustomImageOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCustomImage)(nil)).Elem() +} + +func (o UserProfileCustomImageOutput) ToUserProfileCustomImageOutput() UserProfileCustomImageOutput { + return o +} + +func (o UserProfileCustomImageOutput) ToUserProfileCustomImageOutputWithContext(ctx context.Context) UserProfileCustomImageOutput { + return o +} + +func (o UserProfileCustomImageOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileCustomImage] { + return pulumix.Output[UserProfileCustomImage]{ + OutputState: o.OutputState, + } +} + +// The Name of the AppImageConfig. +func (o UserProfileCustomImageOutput) AppImageConfigName() pulumi.StringOutput { + return o.ApplyT(func(v UserProfileCustomImage) string { return v.AppImageConfigName }).(pulumi.StringOutput) +} + +// The name of the CustomImage. Must be unique to your account. +func (o UserProfileCustomImageOutput) ImageName() pulumi.StringOutput { + return o.ApplyT(func(v UserProfileCustomImage) string { return v.ImageName }).(pulumi.StringOutput) +} + +// The version number of the CustomImage. +func (o UserProfileCustomImageOutput) ImageVersionNumber() pulumi.IntPtrOutput { + return o.ApplyT(func(v UserProfileCustomImage) *int { return v.ImageVersionNumber }).(pulumi.IntPtrOutput) +} + +type UserProfileCustomImageArrayOutput struct{ *pulumi.OutputState } + +func (UserProfileCustomImageArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]UserProfileCustomImage)(nil)).Elem() +} + +func (o UserProfileCustomImageArrayOutput) ToUserProfileCustomImageArrayOutput() UserProfileCustomImageArrayOutput { + return o +} + +func (o UserProfileCustomImageArrayOutput) ToUserProfileCustomImageArrayOutputWithContext(ctx context.Context) UserProfileCustomImageArrayOutput { + return o +} + +func (o UserProfileCustomImageArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]UserProfileCustomImage] { + return pulumix.Output[[]UserProfileCustomImage]{ + OutputState: o.OutputState, + } +} + +func (o UserProfileCustomImageArrayOutput) Index(i pulumi.IntInput) UserProfileCustomImageOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) UserProfileCustomImage { + return vs[0].([]UserProfileCustomImage)[vs[1].(int)] + }).(UserProfileCustomImageOutput) +} + +type UserProfileCustomPosixUserConfig struct { + Gid int `pulumi:"gid"` + Uid int `pulumi:"uid"` +} + +// UserProfileCustomPosixUserConfigInput is an input type that accepts UserProfileCustomPosixUserConfigArgs and UserProfileCustomPosixUserConfigOutput values. +// You can construct a concrete instance of `UserProfileCustomPosixUserConfigInput` via: +// +// UserProfileCustomPosixUserConfigArgs{...} +type UserProfileCustomPosixUserConfigInput interface { + pulumi.Input + + ToUserProfileCustomPosixUserConfigOutput() UserProfileCustomPosixUserConfigOutput + ToUserProfileCustomPosixUserConfigOutputWithContext(context.Context) UserProfileCustomPosixUserConfigOutput +} + +type UserProfileCustomPosixUserConfigArgs struct { + Gid pulumi.IntInput `pulumi:"gid"` + Uid pulumi.IntInput `pulumi:"uid"` +} + +func (UserProfileCustomPosixUserConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCustomPosixUserConfig)(nil)).Elem() +} + +func (i UserProfileCustomPosixUserConfigArgs) ToUserProfileCustomPosixUserConfigOutput() UserProfileCustomPosixUserConfigOutput { + return i.ToUserProfileCustomPosixUserConfigOutputWithContext(context.Background()) +} + +func (i UserProfileCustomPosixUserConfigArgs) ToUserProfileCustomPosixUserConfigOutputWithContext(ctx context.Context) UserProfileCustomPosixUserConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomPosixUserConfigOutput) +} + +func (i UserProfileCustomPosixUserConfigArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileCustomPosixUserConfig] { + return pulumix.Output[UserProfileCustomPosixUserConfig]{ + OutputState: i.ToUserProfileCustomPosixUserConfigOutputWithContext(ctx).OutputState, + } +} + +func (i UserProfileCustomPosixUserConfigArgs) ToUserProfileCustomPosixUserConfigPtrOutput() UserProfileCustomPosixUserConfigPtrOutput { + return i.ToUserProfileCustomPosixUserConfigPtrOutputWithContext(context.Background()) +} + +func (i UserProfileCustomPosixUserConfigArgs) ToUserProfileCustomPosixUserConfigPtrOutputWithContext(ctx context.Context) UserProfileCustomPosixUserConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomPosixUserConfigOutput).ToUserProfileCustomPosixUserConfigPtrOutputWithContext(ctx) +} + +// UserProfileCustomPosixUserConfigPtrInput is an input type that accepts UserProfileCustomPosixUserConfigArgs, UserProfileCustomPosixUserConfigPtr and UserProfileCustomPosixUserConfigPtrOutput values. +// You can construct a concrete instance of `UserProfileCustomPosixUserConfigPtrInput` via: +// +// UserProfileCustomPosixUserConfigArgs{...} +// +// or: +// +// nil +type UserProfileCustomPosixUserConfigPtrInput interface { + pulumi.Input + + ToUserProfileCustomPosixUserConfigPtrOutput() UserProfileCustomPosixUserConfigPtrOutput + ToUserProfileCustomPosixUserConfigPtrOutputWithContext(context.Context) UserProfileCustomPosixUserConfigPtrOutput +} + +type userProfileCustomPosixUserConfigPtrType UserProfileCustomPosixUserConfigArgs + +func UserProfileCustomPosixUserConfigPtr(v *UserProfileCustomPosixUserConfigArgs) UserProfileCustomPosixUserConfigPtrInput { + return (*userProfileCustomPosixUserConfigPtrType)(v) +} + +func (*userProfileCustomPosixUserConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileCustomPosixUserConfig)(nil)).Elem() +} + +func (i *userProfileCustomPosixUserConfigPtrType) ToUserProfileCustomPosixUserConfigPtrOutput() UserProfileCustomPosixUserConfigPtrOutput { + return i.ToUserProfileCustomPosixUserConfigPtrOutputWithContext(context.Background()) +} + +func (i *userProfileCustomPosixUserConfigPtrType) ToUserProfileCustomPosixUserConfigPtrOutputWithContext(ctx context.Context) UserProfileCustomPosixUserConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomPosixUserConfigPtrOutput) +} + +func (i *userProfileCustomPosixUserConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*UserProfileCustomPosixUserConfig] { + return pulumix.Output[*UserProfileCustomPosixUserConfig]{ + OutputState: i.ToUserProfileCustomPosixUserConfigPtrOutputWithContext(ctx).OutputState, + } +} + +type UserProfileCustomPosixUserConfigOutput struct{ *pulumi.OutputState } -func (SpaceKernelGatewayAppSettingsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SpaceKernelGatewayAppSettings)(nil)).Elem() +func (UserProfileCustomPosixUserConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileCustomPosixUserConfig)(nil)).Elem() } -func (o SpaceKernelGatewayAppSettingsOutput) ToSpaceKernelGatewayAppSettingsOutput() SpaceKernelGatewayAppSettingsOutput { +func (o UserProfileCustomPosixUserConfigOutput) ToUserProfileCustomPosixUserConfigOutput() UserProfileCustomPosixUserConfigOutput { return o } -func (o SpaceKernelGatewayAppSettingsOutput) ToSpaceKernelGatewayAppSettingsOutputWithContext(ctx context.Context) SpaceKernelGatewayAppSettingsOutput { +func (o UserProfileCustomPosixUserConfigOutput) ToUserProfileCustomPosixUserConfigOutputWithContext(ctx context.Context) UserProfileCustomPosixUserConfigOutput { return o } -func (o SpaceKernelGatewayAppSettingsOutput) ToSpaceKernelGatewayAppSettingsPtrOutput() SpaceKernelGatewayAppSettingsPtrOutput { - return o.ToSpaceKernelGatewayAppSettingsPtrOutputWithContext(context.Background()) +func (o UserProfileCustomPosixUserConfigOutput) ToUserProfileCustomPosixUserConfigPtrOutput() UserProfileCustomPosixUserConfigPtrOutput { + return o.ToUserProfileCustomPosixUserConfigPtrOutputWithContext(context.Background()) } -func (o SpaceKernelGatewayAppSettingsOutput) ToSpaceKernelGatewayAppSettingsPtrOutputWithContext(ctx context.Context) SpaceKernelGatewayAppSettingsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v SpaceKernelGatewayAppSettings) *SpaceKernelGatewayAppSettings { +func (o UserProfileCustomPosixUserConfigOutput) ToUserProfileCustomPosixUserConfigPtrOutputWithContext(ctx context.Context) UserProfileCustomPosixUserConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserProfileCustomPosixUserConfig) *UserProfileCustomPosixUserConfig { return &v - }).(SpaceKernelGatewayAppSettingsPtrOutput) + }).(UserProfileCustomPosixUserConfigPtrOutput) } -func (o SpaceKernelGatewayAppSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[SpaceKernelGatewayAppSettings] { - return pulumix.Output[SpaceKernelGatewayAppSettings]{ +func (o UserProfileCustomPosixUserConfigOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileCustomPosixUserConfig] { + return pulumix.Output[UserProfileCustomPosixUserConfig]{ OutputState: o.OutputState, } } -// A list of custom SageMaker images that are configured to run as a KernelGateway app. -func (o SpaceKernelGatewayAppSettingsOutput) CustomImages() SpaceCustomImageArrayOutput { - return o.ApplyT(func(v SpaceKernelGatewayAppSettings) []SpaceCustomImage { return v.CustomImages }).(SpaceCustomImageArrayOutput) +func (o UserProfileCustomPosixUserConfigOutput) Gid() pulumi.IntOutput { + return o.ApplyT(func(v UserProfileCustomPosixUserConfig) int { return v.Gid }).(pulumi.IntOutput) } -// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app. -func (o SpaceKernelGatewayAppSettingsOutput) DefaultResourceSpec() SpaceResourceSpecPtrOutput { - return o.ApplyT(func(v SpaceKernelGatewayAppSettings) *SpaceResourceSpec { return v.DefaultResourceSpec }).(SpaceResourceSpecPtrOutput) +func (o UserProfileCustomPosixUserConfigOutput) Uid() pulumi.IntOutput { + return o.ApplyT(func(v UserProfileCustomPosixUserConfig) int { return v.Uid }).(pulumi.IntOutput) } -type SpaceKernelGatewayAppSettingsPtrOutput struct{ *pulumi.OutputState } +type UserProfileCustomPosixUserConfigPtrOutput struct{ *pulumi.OutputState } -func (SpaceKernelGatewayAppSettingsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**SpaceKernelGatewayAppSettings)(nil)).Elem() +func (UserProfileCustomPosixUserConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileCustomPosixUserConfig)(nil)).Elem() } -func (o SpaceKernelGatewayAppSettingsPtrOutput) ToSpaceKernelGatewayAppSettingsPtrOutput() SpaceKernelGatewayAppSettingsPtrOutput { +func (o UserProfileCustomPosixUserConfigPtrOutput) ToUserProfileCustomPosixUserConfigPtrOutput() UserProfileCustomPosixUserConfigPtrOutput { return o } -func (o SpaceKernelGatewayAppSettingsPtrOutput) ToSpaceKernelGatewayAppSettingsPtrOutputWithContext(ctx context.Context) SpaceKernelGatewayAppSettingsPtrOutput { +func (o UserProfileCustomPosixUserConfigPtrOutput) ToUserProfileCustomPosixUserConfigPtrOutputWithContext(ctx context.Context) UserProfileCustomPosixUserConfigPtrOutput { return o } -func (o SpaceKernelGatewayAppSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*SpaceKernelGatewayAppSettings] { - return pulumix.Output[*SpaceKernelGatewayAppSettings]{ +func (o UserProfileCustomPosixUserConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*UserProfileCustomPosixUserConfig] { + return pulumix.Output[*UserProfileCustomPosixUserConfig]{ OutputState: o.OutputState, } } -func (o SpaceKernelGatewayAppSettingsPtrOutput) Elem() SpaceKernelGatewayAppSettingsOutput { - return o.ApplyT(func(v *SpaceKernelGatewayAppSettings) SpaceKernelGatewayAppSettings { +func (o UserProfileCustomPosixUserConfigPtrOutput) Elem() UserProfileCustomPosixUserConfigOutput { + return o.ApplyT(func(v *UserProfileCustomPosixUserConfig) UserProfileCustomPosixUserConfig { if v != nil { return *v } - var ret SpaceKernelGatewayAppSettings + var ret UserProfileCustomPosixUserConfig return ret - }).(SpaceKernelGatewayAppSettingsOutput) + }).(UserProfileCustomPosixUserConfigOutput) } -// A list of custom SageMaker images that are configured to run as a KernelGateway app. -func (o SpaceKernelGatewayAppSettingsPtrOutput) CustomImages() SpaceCustomImageArrayOutput { - return o.ApplyT(func(v *SpaceKernelGatewayAppSettings) []SpaceCustomImage { +func (o UserProfileCustomPosixUserConfigPtrOutput) Gid() pulumi.IntPtrOutput { + return o.ApplyT(func(v *UserProfileCustomPosixUserConfig) *int { if v == nil { return nil } - return v.CustomImages - }).(SpaceCustomImageArrayOutput) + return &v.Gid + }).(pulumi.IntPtrOutput) } -// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the KernelGateway app. -func (o SpaceKernelGatewayAppSettingsPtrOutput) DefaultResourceSpec() SpaceResourceSpecPtrOutput { - return o.ApplyT(func(v *SpaceKernelGatewayAppSettings) *SpaceResourceSpec { +func (o UserProfileCustomPosixUserConfigPtrOutput) Uid() pulumi.IntPtrOutput { + return o.ApplyT(func(v *UserProfileCustomPosixUserConfig) *int { if v == nil { return nil } - return v.DefaultResourceSpec - }).(SpaceResourceSpecPtrOutput) + return &v.Uid + }).(pulumi.IntPtrOutput) } -type SpaceResourceSpec struct { - // The instance type that the image version runs on. - InstanceType *SpaceResourceSpecInstanceType `pulumi:"instanceType"` - // The ARN of the SageMaker image that the image version belongs to. - SageMakerImageArn *string `pulumi:"sageMakerImageArn"` - // The ARN of the image version created on the instance. - SageMakerImageVersionArn *string `pulumi:"sageMakerImageVersionArn"` +// Properties related to the Amazon Elastic Block Store volume. +type UserProfileDefaultEbsStorageSettings struct { + // Default size of the Amazon EBS volume in Gb + DefaultEbsVolumeSizeInGb int `pulumi:"defaultEbsVolumeSizeInGb"` + // Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + MaximumEbsVolumeSizeInGb int `pulumi:"maximumEbsVolumeSizeInGb"` } -// SpaceResourceSpecInput is an input type that accepts SpaceResourceSpecArgs and SpaceResourceSpecOutput values. -// You can construct a concrete instance of `SpaceResourceSpecInput` via: +// UserProfileDefaultEbsStorageSettingsInput is an input type that accepts UserProfileDefaultEbsStorageSettingsArgs and UserProfileDefaultEbsStorageSettingsOutput values. +// You can construct a concrete instance of `UserProfileDefaultEbsStorageSettingsInput` via: // -// SpaceResourceSpecArgs{...} -type SpaceResourceSpecInput interface { +// UserProfileDefaultEbsStorageSettingsArgs{...} +type UserProfileDefaultEbsStorageSettingsInput interface { pulumi.Input - ToSpaceResourceSpecOutput() SpaceResourceSpecOutput - ToSpaceResourceSpecOutputWithContext(context.Context) SpaceResourceSpecOutput + ToUserProfileDefaultEbsStorageSettingsOutput() UserProfileDefaultEbsStorageSettingsOutput + ToUserProfileDefaultEbsStorageSettingsOutputWithContext(context.Context) UserProfileDefaultEbsStorageSettingsOutput } -type SpaceResourceSpecArgs struct { - // The instance type that the image version runs on. - InstanceType SpaceResourceSpecInstanceTypePtrInput `pulumi:"instanceType"` - // The ARN of the SageMaker image that the image version belongs to. - SageMakerImageArn pulumi.StringPtrInput `pulumi:"sageMakerImageArn"` - // The ARN of the image version created on the instance. - SageMakerImageVersionArn pulumi.StringPtrInput `pulumi:"sageMakerImageVersionArn"` +// Properties related to the Amazon Elastic Block Store volume. +type UserProfileDefaultEbsStorageSettingsArgs struct { + // Default size of the Amazon EBS volume in Gb + DefaultEbsVolumeSizeInGb pulumi.IntInput `pulumi:"defaultEbsVolumeSizeInGb"` + // Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + MaximumEbsVolumeSizeInGb pulumi.IntInput `pulumi:"maximumEbsVolumeSizeInGb"` } -func (SpaceResourceSpecArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SpaceResourceSpec)(nil)).Elem() +func (UserProfileDefaultEbsStorageSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileDefaultEbsStorageSettings)(nil)).Elem() } -func (i SpaceResourceSpecArgs) ToSpaceResourceSpecOutput() SpaceResourceSpecOutput { - return i.ToSpaceResourceSpecOutputWithContext(context.Background()) +func (i UserProfileDefaultEbsStorageSettingsArgs) ToUserProfileDefaultEbsStorageSettingsOutput() UserProfileDefaultEbsStorageSettingsOutput { + return i.ToUserProfileDefaultEbsStorageSettingsOutputWithContext(context.Background()) } -func (i SpaceResourceSpecArgs) ToSpaceResourceSpecOutputWithContext(ctx context.Context) SpaceResourceSpecOutput { - return pulumi.ToOutputWithContext(ctx, i).(SpaceResourceSpecOutput) +func (i UserProfileDefaultEbsStorageSettingsArgs) ToUserProfileDefaultEbsStorageSettingsOutputWithContext(ctx context.Context) UserProfileDefaultEbsStorageSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileDefaultEbsStorageSettingsOutput) } -func (i SpaceResourceSpecArgs) ToOutput(ctx context.Context) pulumix.Output[SpaceResourceSpec] { - return pulumix.Output[SpaceResourceSpec]{ - OutputState: i.ToSpaceResourceSpecOutputWithContext(ctx).OutputState, +func (i UserProfileDefaultEbsStorageSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileDefaultEbsStorageSettings] { + return pulumix.Output[UserProfileDefaultEbsStorageSettings]{ + OutputState: i.ToUserProfileDefaultEbsStorageSettingsOutputWithContext(ctx).OutputState, } } -func (i SpaceResourceSpecArgs) ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput { - return i.ToSpaceResourceSpecPtrOutputWithContext(context.Background()) +func (i UserProfileDefaultEbsStorageSettingsArgs) ToUserProfileDefaultEbsStorageSettingsPtrOutput() UserProfileDefaultEbsStorageSettingsPtrOutput { + return i.ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(context.Background()) } -func (i SpaceResourceSpecArgs) ToSpaceResourceSpecPtrOutputWithContext(ctx context.Context) SpaceResourceSpecPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SpaceResourceSpecOutput).ToSpaceResourceSpecPtrOutputWithContext(ctx) +func (i UserProfileDefaultEbsStorageSettingsArgs) ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(ctx context.Context) UserProfileDefaultEbsStorageSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileDefaultEbsStorageSettingsOutput).ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(ctx) } -// SpaceResourceSpecPtrInput is an input type that accepts SpaceResourceSpecArgs, SpaceResourceSpecPtr and SpaceResourceSpecPtrOutput values. -// You can construct a concrete instance of `SpaceResourceSpecPtrInput` via: +// UserProfileDefaultEbsStorageSettingsPtrInput is an input type that accepts UserProfileDefaultEbsStorageSettingsArgs, UserProfileDefaultEbsStorageSettingsPtr and UserProfileDefaultEbsStorageSettingsPtrOutput values. +// You can construct a concrete instance of `UserProfileDefaultEbsStorageSettingsPtrInput` via: // -// SpaceResourceSpecArgs{...} +// UserProfileDefaultEbsStorageSettingsArgs{...} // // or: // // nil -type SpaceResourceSpecPtrInput interface { +type UserProfileDefaultEbsStorageSettingsPtrInput interface { pulumi.Input - ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput - ToSpaceResourceSpecPtrOutputWithContext(context.Context) SpaceResourceSpecPtrOutput + ToUserProfileDefaultEbsStorageSettingsPtrOutput() UserProfileDefaultEbsStorageSettingsPtrOutput + ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(context.Context) UserProfileDefaultEbsStorageSettingsPtrOutput } -type spaceResourceSpecPtrType SpaceResourceSpecArgs +type userProfileDefaultEbsStorageSettingsPtrType UserProfileDefaultEbsStorageSettingsArgs -func SpaceResourceSpecPtr(v *SpaceResourceSpecArgs) SpaceResourceSpecPtrInput { - return (*spaceResourceSpecPtrType)(v) +func UserProfileDefaultEbsStorageSettingsPtr(v *UserProfileDefaultEbsStorageSettingsArgs) UserProfileDefaultEbsStorageSettingsPtrInput { + return (*userProfileDefaultEbsStorageSettingsPtrType)(v) } -func (*spaceResourceSpecPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**SpaceResourceSpec)(nil)).Elem() +func (*userProfileDefaultEbsStorageSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileDefaultEbsStorageSettings)(nil)).Elem() } -func (i *spaceResourceSpecPtrType) ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput { - return i.ToSpaceResourceSpecPtrOutputWithContext(context.Background()) +func (i *userProfileDefaultEbsStorageSettingsPtrType) ToUserProfileDefaultEbsStorageSettingsPtrOutput() UserProfileDefaultEbsStorageSettingsPtrOutput { + return i.ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(context.Background()) } -func (i *spaceResourceSpecPtrType) ToSpaceResourceSpecPtrOutputWithContext(ctx context.Context) SpaceResourceSpecPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SpaceResourceSpecPtrOutput) +func (i *userProfileDefaultEbsStorageSettingsPtrType) ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(ctx context.Context) UserProfileDefaultEbsStorageSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileDefaultEbsStorageSettingsPtrOutput) } -func (i *spaceResourceSpecPtrType) ToOutput(ctx context.Context) pulumix.Output[*SpaceResourceSpec] { - return pulumix.Output[*SpaceResourceSpec]{ - OutputState: i.ToSpaceResourceSpecPtrOutputWithContext(ctx).OutputState, +func (i *userProfileDefaultEbsStorageSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*UserProfileDefaultEbsStorageSettings] { + return pulumix.Output[*UserProfileDefaultEbsStorageSettings]{ + OutputState: i.ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(ctx).OutputState, } } -type SpaceResourceSpecOutput struct{ *pulumi.OutputState } +// Properties related to the Amazon Elastic Block Store volume. +type UserProfileDefaultEbsStorageSettingsOutput struct{ *pulumi.OutputState } -func (SpaceResourceSpecOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SpaceResourceSpec)(nil)).Elem() +func (UserProfileDefaultEbsStorageSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileDefaultEbsStorageSettings)(nil)).Elem() } -func (o SpaceResourceSpecOutput) ToSpaceResourceSpecOutput() SpaceResourceSpecOutput { +func (o UserProfileDefaultEbsStorageSettingsOutput) ToUserProfileDefaultEbsStorageSettingsOutput() UserProfileDefaultEbsStorageSettingsOutput { return o } -func (o SpaceResourceSpecOutput) ToSpaceResourceSpecOutputWithContext(ctx context.Context) SpaceResourceSpecOutput { +func (o UserProfileDefaultEbsStorageSettingsOutput) ToUserProfileDefaultEbsStorageSettingsOutputWithContext(ctx context.Context) UserProfileDefaultEbsStorageSettingsOutput { return o } -func (o SpaceResourceSpecOutput) ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput { - return o.ToSpaceResourceSpecPtrOutputWithContext(context.Background()) +func (o UserProfileDefaultEbsStorageSettingsOutput) ToUserProfileDefaultEbsStorageSettingsPtrOutput() UserProfileDefaultEbsStorageSettingsPtrOutput { + return o.ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(context.Background()) } -func (o SpaceResourceSpecOutput) ToSpaceResourceSpecPtrOutputWithContext(ctx context.Context) SpaceResourceSpecPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v SpaceResourceSpec) *SpaceResourceSpec { +func (o UserProfileDefaultEbsStorageSettingsOutput) ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(ctx context.Context) UserProfileDefaultEbsStorageSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserProfileDefaultEbsStorageSettings) *UserProfileDefaultEbsStorageSettings { return &v - }).(SpaceResourceSpecPtrOutput) + }).(UserProfileDefaultEbsStorageSettingsPtrOutput) } -func (o SpaceResourceSpecOutput) ToOutput(ctx context.Context) pulumix.Output[SpaceResourceSpec] { - return pulumix.Output[SpaceResourceSpec]{ +func (o UserProfileDefaultEbsStorageSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileDefaultEbsStorageSettings] { + return pulumix.Output[UserProfileDefaultEbsStorageSettings]{ OutputState: o.OutputState, } } -// The instance type that the image version runs on. -func (o SpaceResourceSpecOutput) InstanceType() SpaceResourceSpecInstanceTypePtrOutput { - return o.ApplyT(func(v SpaceResourceSpec) *SpaceResourceSpecInstanceType { return v.InstanceType }).(SpaceResourceSpecInstanceTypePtrOutput) -} - -// The ARN of the SageMaker image that the image version belongs to. -func (o SpaceResourceSpecOutput) SageMakerImageArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v SpaceResourceSpec) *string { return v.SageMakerImageArn }).(pulumi.StringPtrOutput) +// Default size of the Amazon EBS volume in Gb +func (o UserProfileDefaultEbsStorageSettingsOutput) DefaultEbsVolumeSizeInGb() pulumi.IntOutput { + return o.ApplyT(func(v UserProfileDefaultEbsStorageSettings) int { return v.DefaultEbsVolumeSizeInGb }).(pulumi.IntOutput) } -// The ARN of the image version created on the instance. -func (o SpaceResourceSpecOutput) SageMakerImageVersionArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v SpaceResourceSpec) *string { return v.SageMakerImageVersionArn }).(pulumi.StringPtrOutput) +// Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. +func (o UserProfileDefaultEbsStorageSettingsOutput) MaximumEbsVolumeSizeInGb() pulumi.IntOutput { + return o.ApplyT(func(v UserProfileDefaultEbsStorageSettings) int { return v.MaximumEbsVolumeSizeInGb }).(pulumi.IntOutput) } -type SpaceResourceSpecPtrOutput struct{ *pulumi.OutputState } +type UserProfileDefaultEbsStorageSettingsPtrOutput struct{ *pulumi.OutputState } -func (SpaceResourceSpecPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**SpaceResourceSpec)(nil)).Elem() +func (UserProfileDefaultEbsStorageSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileDefaultEbsStorageSettings)(nil)).Elem() } -func (o SpaceResourceSpecPtrOutput) ToSpaceResourceSpecPtrOutput() SpaceResourceSpecPtrOutput { +func (o UserProfileDefaultEbsStorageSettingsPtrOutput) ToUserProfileDefaultEbsStorageSettingsPtrOutput() UserProfileDefaultEbsStorageSettingsPtrOutput { return o } -func (o SpaceResourceSpecPtrOutput) ToSpaceResourceSpecPtrOutputWithContext(ctx context.Context) SpaceResourceSpecPtrOutput { +func (o UserProfileDefaultEbsStorageSettingsPtrOutput) ToUserProfileDefaultEbsStorageSettingsPtrOutputWithContext(ctx context.Context) UserProfileDefaultEbsStorageSettingsPtrOutput { return o } -func (o SpaceResourceSpecPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*SpaceResourceSpec] { - return pulumix.Output[*SpaceResourceSpec]{ +func (o UserProfileDefaultEbsStorageSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*UserProfileDefaultEbsStorageSettings] { + return pulumix.Output[*UserProfileDefaultEbsStorageSettings]{ OutputState: o.OutputState, } } -func (o SpaceResourceSpecPtrOutput) Elem() SpaceResourceSpecOutput { - return o.ApplyT(func(v *SpaceResourceSpec) SpaceResourceSpec { +func (o UserProfileDefaultEbsStorageSettingsPtrOutput) Elem() UserProfileDefaultEbsStorageSettingsOutput { + return o.ApplyT(func(v *UserProfileDefaultEbsStorageSettings) UserProfileDefaultEbsStorageSettings { if v != nil { return *v } - var ret SpaceResourceSpec + var ret UserProfileDefaultEbsStorageSettings return ret - }).(SpaceResourceSpecOutput) + }).(UserProfileDefaultEbsStorageSettingsOutput) } -// The instance type that the image version runs on. -func (o SpaceResourceSpecPtrOutput) InstanceType() SpaceResourceSpecInstanceTypePtrOutput { - return o.ApplyT(func(v *SpaceResourceSpec) *SpaceResourceSpecInstanceType { - if v == nil { - return nil - } - return v.InstanceType - }).(SpaceResourceSpecInstanceTypePtrOutput) -} - -// The ARN of the SageMaker image that the image version belongs to. -func (o SpaceResourceSpecPtrOutput) SageMakerImageArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v *SpaceResourceSpec) *string { +// Default size of the Amazon EBS volume in Gb +func (o UserProfileDefaultEbsStorageSettingsPtrOutput) DefaultEbsVolumeSizeInGb() pulumi.IntPtrOutput { + return o.ApplyT(func(v *UserProfileDefaultEbsStorageSettings) *int { if v == nil { return nil } - return v.SageMakerImageArn - }).(pulumi.StringPtrOutput) + return &v.DefaultEbsVolumeSizeInGb + }).(pulumi.IntPtrOutput) } -// The ARN of the image version created on the instance. -func (o SpaceResourceSpecPtrOutput) SageMakerImageVersionArn() pulumi.StringPtrOutput { - return o.ApplyT(func(v *SpaceResourceSpec) *string { +// Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. +func (o UserProfileDefaultEbsStorageSettingsPtrOutput) MaximumEbsVolumeSizeInGb() pulumi.IntPtrOutput { + return o.ApplyT(func(v *UserProfileDefaultEbsStorageSettings) *int { if v == nil { return nil } - return v.SageMakerImageVersionArn - }).(pulumi.StringPtrOutput) + return &v.MaximumEbsVolumeSizeInGb + }).(pulumi.IntPtrOutput) } -// A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the CreateSpace API is called. -type SpaceSettings struct { - // The Jupyter server's app settings. - JupyterServerAppSettings *SpaceJupyterServerAppSettings `pulumi:"jupyterServerAppSettings"` - // The kernel gateway app settings. - KernelGatewayAppSettings *SpaceKernelGatewayAppSettings `pulumi:"kernelGatewayAppSettings"` +// Default storage settings for a space. +type UserProfileDefaultSpaceStorageSettings struct { + DefaultEbsStorageSettings *UserProfileDefaultEbsStorageSettings `pulumi:"defaultEbsStorageSettings"` } -// SpaceSettingsInput is an input type that accepts SpaceSettingsArgs and SpaceSettingsOutput values. -// You can construct a concrete instance of `SpaceSettingsInput` via: +// UserProfileDefaultSpaceStorageSettingsInput is an input type that accepts UserProfileDefaultSpaceStorageSettingsArgs and UserProfileDefaultSpaceStorageSettingsOutput values. +// You can construct a concrete instance of `UserProfileDefaultSpaceStorageSettingsInput` via: // -// SpaceSettingsArgs{...} -type SpaceSettingsInput interface { +// UserProfileDefaultSpaceStorageSettingsArgs{...} +type UserProfileDefaultSpaceStorageSettingsInput interface { pulumi.Input - ToSpaceSettingsOutput() SpaceSettingsOutput - ToSpaceSettingsOutputWithContext(context.Context) SpaceSettingsOutput + ToUserProfileDefaultSpaceStorageSettingsOutput() UserProfileDefaultSpaceStorageSettingsOutput + ToUserProfileDefaultSpaceStorageSettingsOutputWithContext(context.Context) UserProfileDefaultSpaceStorageSettingsOutput } -// A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the CreateSpace API is called. -type SpaceSettingsArgs struct { - // The Jupyter server's app settings. - JupyterServerAppSettings SpaceJupyterServerAppSettingsPtrInput `pulumi:"jupyterServerAppSettings"` - // The kernel gateway app settings. - KernelGatewayAppSettings SpaceKernelGatewayAppSettingsPtrInput `pulumi:"kernelGatewayAppSettings"` +// Default storage settings for a space. +type UserProfileDefaultSpaceStorageSettingsArgs struct { + DefaultEbsStorageSettings UserProfileDefaultEbsStorageSettingsPtrInput `pulumi:"defaultEbsStorageSettings"` } -func (SpaceSettingsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SpaceSettings)(nil)).Elem() +func (UserProfileDefaultSpaceStorageSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileDefaultSpaceStorageSettings)(nil)).Elem() } -func (i SpaceSettingsArgs) ToSpaceSettingsOutput() SpaceSettingsOutput { - return i.ToSpaceSettingsOutputWithContext(context.Background()) +func (i UserProfileDefaultSpaceStorageSettingsArgs) ToUserProfileDefaultSpaceStorageSettingsOutput() UserProfileDefaultSpaceStorageSettingsOutput { + return i.ToUserProfileDefaultSpaceStorageSettingsOutputWithContext(context.Background()) } -func (i SpaceSettingsArgs) ToSpaceSettingsOutputWithContext(ctx context.Context) SpaceSettingsOutput { - return pulumi.ToOutputWithContext(ctx, i).(SpaceSettingsOutput) +func (i UserProfileDefaultSpaceStorageSettingsArgs) ToUserProfileDefaultSpaceStorageSettingsOutputWithContext(ctx context.Context) UserProfileDefaultSpaceStorageSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileDefaultSpaceStorageSettingsOutput) } -func (i SpaceSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[SpaceSettings] { - return pulumix.Output[SpaceSettings]{ - OutputState: i.ToSpaceSettingsOutputWithContext(ctx).OutputState, +func (i UserProfileDefaultSpaceStorageSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileDefaultSpaceStorageSettings] { + return pulumix.Output[UserProfileDefaultSpaceStorageSettings]{ + OutputState: i.ToUserProfileDefaultSpaceStorageSettingsOutputWithContext(ctx).OutputState, } } -func (i SpaceSettingsArgs) ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput { - return i.ToSpaceSettingsPtrOutputWithContext(context.Background()) +func (i UserProfileDefaultSpaceStorageSettingsArgs) ToUserProfileDefaultSpaceStorageSettingsPtrOutput() UserProfileDefaultSpaceStorageSettingsPtrOutput { + return i.ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(context.Background()) } -func (i SpaceSettingsArgs) ToSpaceSettingsPtrOutputWithContext(ctx context.Context) SpaceSettingsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SpaceSettingsOutput).ToSpaceSettingsPtrOutputWithContext(ctx) +func (i UserProfileDefaultSpaceStorageSettingsArgs) ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(ctx context.Context) UserProfileDefaultSpaceStorageSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileDefaultSpaceStorageSettingsOutput).ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(ctx) } -// SpaceSettingsPtrInput is an input type that accepts SpaceSettingsArgs, SpaceSettingsPtr and SpaceSettingsPtrOutput values. -// You can construct a concrete instance of `SpaceSettingsPtrInput` via: +// UserProfileDefaultSpaceStorageSettingsPtrInput is an input type that accepts UserProfileDefaultSpaceStorageSettingsArgs, UserProfileDefaultSpaceStorageSettingsPtr and UserProfileDefaultSpaceStorageSettingsPtrOutput values. +// You can construct a concrete instance of `UserProfileDefaultSpaceStorageSettingsPtrInput` via: // -// SpaceSettingsArgs{...} +// UserProfileDefaultSpaceStorageSettingsArgs{...} // // or: // // nil -type SpaceSettingsPtrInput interface { +type UserProfileDefaultSpaceStorageSettingsPtrInput interface { pulumi.Input - ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput - ToSpaceSettingsPtrOutputWithContext(context.Context) SpaceSettingsPtrOutput + ToUserProfileDefaultSpaceStorageSettingsPtrOutput() UserProfileDefaultSpaceStorageSettingsPtrOutput + ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(context.Context) UserProfileDefaultSpaceStorageSettingsPtrOutput } -type spaceSettingsPtrType SpaceSettingsArgs +type userProfileDefaultSpaceStorageSettingsPtrType UserProfileDefaultSpaceStorageSettingsArgs -func SpaceSettingsPtr(v *SpaceSettingsArgs) SpaceSettingsPtrInput { - return (*spaceSettingsPtrType)(v) +func UserProfileDefaultSpaceStorageSettingsPtr(v *UserProfileDefaultSpaceStorageSettingsArgs) UserProfileDefaultSpaceStorageSettingsPtrInput { + return (*userProfileDefaultSpaceStorageSettingsPtrType)(v) } -func (*spaceSettingsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**SpaceSettings)(nil)).Elem() +func (*userProfileDefaultSpaceStorageSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileDefaultSpaceStorageSettings)(nil)).Elem() } -func (i *spaceSettingsPtrType) ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput { - return i.ToSpaceSettingsPtrOutputWithContext(context.Background()) +func (i *userProfileDefaultSpaceStorageSettingsPtrType) ToUserProfileDefaultSpaceStorageSettingsPtrOutput() UserProfileDefaultSpaceStorageSettingsPtrOutput { + return i.ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(context.Background()) } -func (i *spaceSettingsPtrType) ToSpaceSettingsPtrOutputWithContext(ctx context.Context) SpaceSettingsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SpaceSettingsPtrOutput) +func (i *userProfileDefaultSpaceStorageSettingsPtrType) ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(ctx context.Context) UserProfileDefaultSpaceStorageSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileDefaultSpaceStorageSettingsPtrOutput) } -func (i *spaceSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*SpaceSettings] { - return pulumix.Output[*SpaceSettings]{ - OutputState: i.ToSpaceSettingsPtrOutputWithContext(ctx).OutputState, +func (i *userProfileDefaultSpaceStorageSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*UserProfileDefaultSpaceStorageSettings] { + return pulumix.Output[*UserProfileDefaultSpaceStorageSettings]{ + OutputState: i.ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(ctx).OutputState, } } -// A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the CreateSpace API is called. -type SpaceSettingsOutput struct{ *pulumi.OutputState } +// Default storage settings for a space. +type UserProfileDefaultSpaceStorageSettingsOutput struct{ *pulumi.OutputState } -func (SpaceSettingsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SpaceSettings)(nil)).Elem() +func (UserProfileDefaultSpaceStorageSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileDefaultSpaceStorageSettings)(nil)).Elem() } -func (o SpaceSettingsOutput) ToSpaceSettingsOutput() SpaceSettingsOutput { +func (o UserProfileDefaultSpaceStorageSettingsOutput) ToUserProfileDefaultSpaceStorageSettingsOutput() UserProfileDefaultSpaceStorageSettingsOutput { return o } -func (o SpaceSettingsOutput) ToSpaceSettingsOutputWithContext(ctx context.Context) SpaceSettingsOutput { +func (o UserProfileDefaultSpaceStorageSettingsOutput) ToUserProfileDefaultSpaceStorageSettingsOutputWithContext(ctx context.Context) UserProfileDefaultSpaceStorageSettingsOutput { return o } -func (o SpaceSettingsOutput) ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput { - return o.ToSpaceSettingsPtrOutputWithContext(context.Background()) +func (o UserProfileDefaultSpaceStorageSettingsOutput) ToUserProfileDefaultSpaceStorageSettingsPtrOutput() UserProfileDefaultSpaceStorageSettingsPtrOutput { + return o.ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(context.Background()) } -func (o SpaceSettingsOutput) ToSpaceSettingsPtrOutputWithContext(ctx context.Context) SpaceSettingsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v SpaceSettings) *SpaceSettings { +func (o UserProfileDefaultSpaceStorageSettingsOutput) ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(ctx context.Context) UserProfileDefaultSpaceStorageSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserProfileDefaultSpaceStorageSettings) *UserProfileDefaultSpaceStorageSettings { return &v - }).(SpaceSettingsPtrOutput) + }).(UserProfileDefaultSpaceStorageSettingsPtrOutput) } -func (o SpaceSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[SpaceSettings] { - return pulumix.Output[SpaceSettings]{ +func (o UserProfileDefaultSpaceStorageSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileDefaultSpaceStorageSettings] { + return pulumix.Output[UserProfileDefaultSpaceStorageSettings]{ OutputState: o.OutputState, } } -// The Jupyter server's app settings. -func (o SpaceSettingsOutput) JupyterServerAppSettings() SpaceJupyterServerAppSettingsPtrOutput { - return o.ApplyT(func(v SpaceSettings) *SpaceJupyterServerAppSettings { return v.JupyterServerAppSettings }).(SpaceJupyterServerAppSettingsPtrOutput) -} - -// The kernel gateway app settings. -func (o SpaceSettingsOutput) KernelGatewayAppSettings() SpaceKernelGatewayAppSettingsPtrOutput { - return o.ApplyT(func(v SpaceSettings) *SpaceKernelGatewayAppSettings { return v.KernelGatewayAppSettings }).(SpaceKernelGatewayAppSettingsPtrOutput) +func (o UserProfileDefaultSpaceStorageSettingsOutput) DefaultEbsStorageSettings() UserProfileDefaultEbsStorageSettingsPtrOutput { + return o.ApplyT(func(v UserProfileDefaultSpaceStorageSettings) *UserProfileDefaultEbsStorageSettings { + return v.DefaultEbsStorageSettings + }).(UserProfileDefaultEbsStorageSettingsPtrOutput) } -type SpaceSettingsPtrOutput struct{ *pulumi.OutputState } +type UserProfileDefaultSpaceStorageSettingsPtrOutput struct{ *pulumi.OutputState } -func (SpaceSettingsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**SpaceSettings)(nil)).Elem() +func (UserProfileDefaultSpaceStorageSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileDefaultSpaceStorageSettings)(nil)).Elem() } -func (o SpaceSettingsPtrOutput) ToSpaceSettingsPtrOutput() SpaceSettingsPtrOutput { +func (o UserProfileDefaultSpaceStorageSettingsPtrOutput) ToUserProfileDefaultSpaceStorageSettingsPtrOutput() UserProfileDefaultSpaceStorageSettingsPtrOutput { return o } -func (o SpaceSettingsPtrOutput) ToSpaceSettingsPtrOutputWithContext(ctx context.Context) SpaceSettingsPtrOutput { +func (o UserProfileDefaultSpaceStorageSettingsPtrOutput) ToUserProfileDefaultSpaceStorageSettingsPtrOutputWithContext(ctx context.Context) UserProfileDefaultSpaceStorageSettingsPtrOutput { return o } -func (o SpaceSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*SpaceSettings] { - return pulumix.Output[*SpaceSettings]{ +func (o UserProfileDefaultSpaceStorageSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*UserProfileDefaultSpaceStorageSettings] { + return pulumix.Output[*UserProfileDefaultSpaceStorageSettings]{ OutputState: o.OutputState, } } -func (o SpaceSettingsPtrOutput) Elem() SpaceSettingsOutput { - return o.ApplyT(func(v *SpaceSettings) SpaceSettings { +func (o UserProfileDefaultSpaceStorageSettingsPtrOutput) Elem() UserProfileDefaultSpaceStorageSettingsOutput { + return o.ApplyT(func(v *UserProfileDefaultSpaceStorageSettings) UserProfileDefaultSpaceStorageSettings { if v != nil { return *v } - var ret SpaceSettings + var ret UserProfileDefaultSpaceStorageSettings return ret - }).(SpaceSettingsOutput) -} - -// The Jupyter server's app settings. -func (o SpaceSettingsPtrOutput) JupyterServerAppSettings() SpaceJupyterServerAppSettingsPtrOutput { - return o.ApplyT(func(v *SpaceSettings) *SpaceJupyterServerAppSettings { - if v == nil { - return nil - } - return v.JupyterServerAppSettings - }).(SpaceJupyterServerAppSettingsPtrOutput) + }).(UserProfileDefaultSpaceStorageSettingsOutput) } -// The kernel gateway app settings. -func (o SpaceSettingsPtrOutput) KernelGatewayAppSettings() SpaceKernelGatewayAppSettingsPtrOutput { - return o.ApplyT(func(v *SpaceSettings) *SpaceKernelGatewayAppSettings { +func (o UserProfileDefaultSpaceStorageSettingsPtrOutput) DefaultEbsStorageSettings() UserProfileDefaultEbsStorageSettingsPtrOutput { + return o.ApplyT(func(v *UserProfileDefaultSpaceStorageSettings) *UserProfileDefaultEbsStorageSettings { if v == nil { return nil } - return v.KernelGatewayAppSettings - }).(SpaceKernelGatewayAppSettingsPtrOutput) + return v.DefaultEbsStorageSettings + }).(UserProfileDefaultEbsStorageSettingsPtrOutput) } -type SpaceTag struct { - Key string `pulumi:"key"` - Value string `pulumi:"value"` +type UserProfileEfsFileSystemConfig struct { + FileSystemId string `pulumi:"fileSystemId"` + FileSystemPath *string `pulumi:"fileSystemPath"` } -// SpaceTagInput is an input type that accepts SpaceTagArgs and SpaceTagOutput values. -// You can construct a concrete instance of `SpaceTagInput` via: +// UserProfileEfsFileSystemConfigInput is an input type that accepts UserProfileEfsFileSystemConfigArgs and UserProfileEfsFileSystemConfigOutput values. +// You can construct a concrete instance of `UserProfileEfsFileSystemConfigInput` via: // -// SpaceTagArgs{...} -type SpaceTagInput interface { +// UserProfileEfsFileSystemConfigArgs{...} +type UserProfileEfsFileSystemConfigInput interface { pulumi.Input - ToSpaceTagOutput() SpaceTagOutput - ToSpaceTagOutputWithContext(context.Context) SpaceTagOutput + ToUserProfileEfsFileSystemConfigOutput() UserProfileEfsFileSystemConfigOutput + ToUserProfileEfsFileSystemConfigOutputWithContext(context.Context) UserProfileEfsFileSystemConfigOutput } -type SpaceTagArgs struct { - Key pulumi.StringInput `pulumi:"key"` - Value pulumi.StringInput `pulumi:"value"` +type UserProfileEfsFileSystemConfigArgs struct { + FileSystemId pulumi.StringInput `pulumi:"fileSystemId"` + FileSystemPath pulumi.StringPtrInput `pulumi:"fileSystemPath"` } -func (SpaceTagArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SpaceTag)(nil)).Elem() +func (UserProfileEfsFileSystemConfigArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileEfsFileSystemConfig)(nil)).Elem() } -func (i SpaceTagArgs) ToSpaceTagOutput() SpaceTagOutput { - return i.ToSpaceTagOutputWithContext(context.Background()) +func (i UserProfileEfsFileSystemConfigArgs) ToUserProfileEfsFileSystemConfigOutput() UserProfileEfsFileSystemConfigOutput { + return i.ToUserProfileEfsFileSystemConfigOutputWithContext(context.Background()) } -func (i SpaceTagArgs) ToSpaceTagOutputWithContext(ctx context.Context) SpaceTagOutput { - return pulumi.ToOutputWithContext(ctx, i).(SpaceTagOutput) +func (i UserProfileEfsFileSystemConfigArgs) ToUserProfileEfsFileSystemConfigOutputWithContext(ctx context.Context) UserProfileEfsFileSystemConfigOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileEfsFileSystemConfigOutput) } -func (i SpaceTagArgs) ToOutput(ctx context.Context) pulumix.Output[SpaceTag] { - return pulumix.Output[SpaceTag]{ - OutputState: i.ToSpaceTagOutputWithContext(ctx).OutputState, +func (i UserProfileEfsFileSystemConfigArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileEfsFileSystemConfig] { + return pulumix.Output[UserProfileEfsFileSystemConfig]{ + OutputState: i.ToUserProfileEfsFileSystemConfigOutputWithContext(ctx).OutputState, } } -// SpaceTagArrayInput is an input type that accepts SpaceTagArray and SpaceTagArrayOutput values. -// You can construct a concrete instance of `SpaceTagArrayInput` via: +func (i UserProfileEfsFileSystemConfigArgs) ToUserProfileEfsFileSystemConfigPtrOutput() UserProfileEfsFileSystemConfigPtrOutput { + return i.ToUserProfileEfsFileSystemConfigPtrOutputWithContext(context.Background()) +} + +func (i UserProfileEfsFileSystemConfigArgs) ToUserProfileEfsFileSystemConfigPtrOutputWithContext(ctx context.Context) UserProfileEfsFileSystemConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileEfsFileSystemConfigOutput).ToUserProfileEfsFileSystemConfigPtrOutputWithContext(ctx) +} + +// UserProfileEfsFileSystemConfigPtrInput is an input type that accepts UserProfileEfsFileSystemConfigArgs, UserProfileEfsFileSystemConfigPtr and UserProfileEfsFileSystemConfigPtrOutput values. +// You can construct a concrete instance of `UserProfileEfsFileSystemConfigPtrInput` via: // -// SpaceTagArray{ SpaceTagArgs{...} } -type SpaceTagArrayInput interface { +// UserProfileEfsFileSystemConfigArgs{...} +// +// or: +// +// nil +type UserProfileEfsFileSystemConfigPtrInput interface { pulumi.Input - ToSpaceTagArrayOutput() SpaceTagArrayOutput - ToSpaceTagArrayOutputWithContext(context.Context) SpaceTagArrayOutput + ToUserProfileEfsFileSystemConfigPtrOutput() UserProfileEfsFileSystemConfigPtrOutput + ToUserProfileEfsFileSystemConfigPtrOutputWithContext(context.Context) UserProfileEfsFileSystemConfigPtrOutput } -type SpaceTagArray []SpaceTagInput +type userProfileEfsFileSystemConfigPtrType UserProfileEfsFileSystemConfigArgs -func (SpaceTagArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]SpaceTag)(nil)).Elem() +func UserProfileEfsFileSystemConfigPtr(v *UserProfileEfsFileSystemConfigArgs) UserProfileEfsFileSystemConfigPtrInput { + return (*userProfileEfsFileSystemConfigPtrType)(v) } -func (i SpaceTagArray) ToSpaceTagArrayOutput() SpaceTagArrayOutput { - return i.ToSpaceTagArrayOutputWithContext(context.Background()) +func (*userProfileEfsFileSystemConfigPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileEfsFileSystemConfig)(nil)).Elem() } -func (i SpaceTagArray) ToSpaceTagArrayOutputWithContext(ctx context.Context) SpaceTagArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(SpaceTagArrayOutput) +func (i *userProfileEfsFileSystemConfigPtrType) ToUserProfileEfsFileSystemConfigPtrOutput() UserProfileEfsFileSystemConfigPtrOutput { + return i.ToUserProfileEfsFileSystemConfigPtrOutputWithContext(context.Background()) } -func (i SpaceTagArray) ToOutput(ctx context.Context) pulumix.Output[[]SpaceTag] { - return pulumix.Output[[]SpaceTag]{ - OutputState: i.ToSpaceTagArrayOutputWithContext(ctx).OutputState, +func (i *userProfileEfsFileSystemConfigPtrType) ToUserProfileEfsFileSystemConfigPtrOutputWithContext(ctx context.Context) UserProfileEfsFileSystemConfigPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileEfsFileSystemConfigPtrOutput) +} + +func (i *userProfileEfsFileSystemConfigPtrType) ToOutput(ctx context.Context) pulumix.Output[*UserProfileEfsFileSystemConfig] { + return pulumix.Output[*UserProfileEfsFileSystemConfig]{ + OutputState: i.ToUserProfileEfsFileSystemConfigPtrOutputWithContext(ctx).OutputState, } } -type SpaceTagOutput struct{ *pulumi.OutputState } +type UserProfileEfsFileSystemConfigOutput struct{ *pulumi.OutputState } -func (SpaceTagOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SpaceTag)(nil)).Elem() +func (UserProfileEfsFileSystemConfigOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileEfsFileSystemConfig)(nil)).Elem() } -func (o SpaceTagOutput) ToSpaceTagOutput() SpaceTagOutput { +func (o UserProfileEfsFileSystemConfigOutput) ToUserProfileEfsFileSystemConfigOutput() UserProfileEfsFileSystemConfigOutput { return o } -func (o SpaceTagOutput) ToSpaceTagOutputWithContext(ctx context.Context) SpaceTagOutput { +func (o UserProfileEfsFileSystemConfigOutput) ToUserProfileEfsFileSystemConfigOutputWithContext(ctx context.Context) UserProfileEfsFileSystemConfigOutput { return o } -func (o SpaceTagOutput) ToOutput(ctx context.Context) pulumix.Output[SpaceTag] { - return pulumix.Output[SpaceTag]{ +func (o UserProfileEfsFileSystemConfigOutput) ToUserProfileEfsFileSystemConfigPtrOutput() UserProfileEfsFileSystemConfigPtrOutput { + return o.ToUserProfileEfsFileSystemConfigPtrOutputWithContext(context.Background()) +} + +func (o UserProfileEfsFileSystemConfigOutput) ToUserProfileEfsFileSystemConfigPtrOutputWithContext(ctx context.Context) UserProfileEfsFileSystemConfigPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserProfileEfsFileSystemConfig) *UserProfileEfsFileSystemConfig { + return &v + }).(UserProfileEfsFileSystemConfigPtrOutput) +} + +func (o UserProfileEfsFileSystemConfigOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileEfsFileSystemConfig] { + return pulumix.Output[UserProfileEfsFileSystemConfig]{ OutputState: o.OutputState, } } -func (o SpaceTagOutput) Key() pulumi.StringOutput { - return o.ApplyT(func(v SpaceTag) string { return v.Key }).(pulumi.StringOutput) +func (o UserProfileEfsFileSystemConfigOutput) FileSystemId() pulumi.StringOutput { + return o.ApplyT(func(v UserProfileEfsFileSystemConfig) string { return v.FileSystemId }).(pulumi.StringOutput) } -func (o SpaceTagOutput) Value() pulumi.StringOutput { - return o.ApplyT(func(v SpaceTag) string { return v.Value }).(pulumi.StringOutput) +func (o UserProfileEfsFileSystemConfigOutput) FileSystemPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v UserProfileEfsFileSystemConfig) *string { return v.FileSystemPath }).(pulumi.StringPtrOutput) } -type SpaceTagArrayOutput struct{ *pulumi.OutputState } +type UserProfileEfsFileSystemConfigPtrOutput struct{ *pulumi.OutputState } -func (SpaceTagArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]SpaceTag)(nil)).Elem() +func (UserProfileEfsFileSystemConfigPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileEfsFileSystemConfig)(nil)).Elem() } -func (o SpaceTagArrayOutput) ToSpaceTagArrayOutput() SpaceTagArrayOutput { +func (o UserProfileEfsFileSystemConfigPtrOutput) ToUserProfileEfsFileSystemConfigPtrOutput() UserProfileEfsFileSystemConfigPtrOutput { return o } -func (o SpaceTagArrayOutput) ToSpaceTagArrayOutputWithContext(ctx context.Context) SpaceTagArrayOutput { +func (o UserProfileEfsFileSystemConfigPtrOutput) ToUserProfileEfsFileSystemConfigPtrOutputWithContext(ctx context.Context) UserProfileEfsFileSystemConfigPtrOutput { return o } -func (o SpaceTagArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]SpaceTag] { - return pulumix.Output[[]SpaceTag]{ +func (o UserProfileEfsFileSystemConfigPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*UserProfileEfsFileSystemConfig] { + return pulumix.Output[*UserProfileEfsFileSystemConfig]{ OutputState: o.OutputState, } } -func (o SpaceTagArrayOutput) Index(i pulumi.IntInput) SpaceTagOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) SpaceTag { - return vs[0].([]SpaceTag)[vs[1].(int)] - }).(SpaceTagOutput) +func (o UserProfileEfsFileSystemConfigPtrOutput) Elem() UserProfileEfsFileSystemConfigOutput { + return o.ApplyT(func(v *UserProfileEfsFileSystemConfig) UserProfileEfsFileSystemConfig { + if v != nil { + return *v + } + var ret UserProfileEfsFileSystemConfig + return ret + }).(UserProfileEfsFileSystemConfigOutput) } -// A custom SageMaker image. -type UserProfileCustomImage struct { - // The Name of the AppImageConfig. - AppImageConfigName string `pulumi:"appImageConfigName"` - // The name of the CustomImage. Must be unique to your account. - ImageName string `pulumi:"imageName"` - // The version number of the CustomImage. - ImageVersionNumber *int `pulumi:"imageVersionNumber"` +func (o UserProfileEfsFileSystemConfigPtrOutput) FileSystemId() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserProfileEfsFileSystemConfig) *string { + if v == nil { + return nil + } + return &v.FileSystemId + }).(pulumi.StringPtrOutput) } -// UserProfileCustomImageInput is an input type that accepts UserProfileCustomImageArgs and UserProfileCustomImageOutput values. -// You can construct a concrete instance of `UserProfileCustomImageInput` via: +func (o UserProfileEfsFileSystemConfigPtrOutput) FileSystemPath() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserProfileEfsFileSystemConfig) *string { + if v == nil { + return nil + } + return v.FileSystemPath + }).(pulumi.StringPtrOutput) +} + +// The JupyterLab app settings. +type UserProfileJupyterLabAppSettings struct { + // A list of CodeRepositories available for use with JupyterLab apps. + CodeRepositories []UserProfileCodeRepository `pulumi:"codeRepositories"` + // A list of custom images available for use for JupyterLab apps + CustomImages []UserProfileCustomImage `pulumi:"customImages"` + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + DefaultResourceSpec *UserProfileResourceSpec `pulumi:"defaultResourceSpec"` + // A list of LifecycleConfigArns available for use with JupyterLab apps. + LifecycleConfigArns []string `pulumi:"lifecycleConfigArns"` +} + +// UserProfileJupyterLabAppSettingsInput is an input type that accepts UserProfileJupyterLabAppSettingsArgs and UserProfileJupyterLabAppSettingsOutput values. +// You can construct a concrete instance of `UserProfileJupyterLabAppSettingsInput` via: // -// UserProfileCustomImageArgs{...} -type UserProfileCustomImageInput interface { +// UserProfileJupyterLabAppSettingsArgs{...} +type UserProfileJupyterLabAppSettingsInput interface { pulumi.Input - ToUserProfileCustomImageOutput() UserProfileCustomImageOutput - ToUserProfileCustomImageOutputWithContext(context.Context) UserProfileCustomImageOutput + ToUserProfileJupyterLabAppSettingsOutput() UserProfileJupyterLabAppSettingsOutput + ToUserProfileJupyterLabAppSettingsOutputWithContext(context.Context) UserProfileJupyterLabAppSettingsOutput } -// A custom SageMaker image. -type UserProfileCustomImageArgs struct { - // The Name of the AppImageConfig. - AppImageConfigName pulumi.StringInput `pulumi:"appImageConfigName"` - // The name of the CustomImage. Must be unique to your account. - ImageName pulumi.StringInput `pulumi:"imageName"` - // The version number of the CustomImage. - ImageVersionNumber pulumi.IntPtrInput `pulumi:"imageVersionNumber"` +// The JupyterLab app settings. +type UserProfileJupyterLabAppSettingsArgs struct { + // A list of CodeRepositories available for use with JupyterLab apps. + CodeRepositories UserProfileCodeRepositoryArrayInput `pulumi:"codeRepositories"` + // A list of custom images available for use for JupyterLab apps + CustomImages UserProfileCustomImageArrayInput `pulumi:"customImages"` + // The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + DefaultResourceSpec UserProfileResourceSpecPtrInput `pulumi:"defaultResourceSpec"` + // A list of LifecycleConfigArns available for use with JupyterLab apps. + LifecycleConfigArns pulumi.StringArrayInput `pulumi:"lifecycleConfigArns"` } -func (UserProfileCustomImageArgs) ElementType() reflect.Type { - return reflect.TypeOf((*UserProfileCustomImage)(nil)).Elem() +func (UserProfileJupyterLabAppSettingsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileJupyterLabAppSettings)(nil)).Elem() } -func (i UserProfileCustomImageArgs) ToUserProfileCustomImageOutput() UserProfileCustomImageOutput { - return i.ToUserProfileCustomImageOutputWithContext(context.Background()) +func (i UserProfileJupyterLabAppSettingsArgs) ToUserProfileJupyterLabAppSettingsOutput() UserProfileJupyterLabAppSettingsOutput { + return i.ToUserProfileJupyterLabAppSettingsOutputWithContext(context.Background()) } -func (i UserProfileCustomImageArgs) ToUserProfileCustomImageOutputWithContext(ctx context.Context) UserProfileCustomImageOutput { - return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomImageOutput) +func (i UserProfileJupyterLabAppSettingsArgs) ToUserProfileJupyterLabAppSettingsOutputWithContext(ctx context.Context) UserProfileJupyterLabAppSettingsOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileJupyterLabAppSettingsOutput) } -func (i UserProfileCustomImageArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileCustomImage] { - return pulumix.Output[UserProfileCustomImage]{ - OutputState: i.ToUserProfileCustomImageOutputWithContext(ctx).OutputState, +func (i UserProfileJupyterLabAppSettingsArgs) ToOutput(ctx context.Context) pulumix.Output[UserProfileJupyterLabAppSettings] { + return pulumix.Output[UserProfileJupyterLabAppSettings]{ + OutputState: i.ToUserProfileJupyterLabAppSettingsOutputWithContext(ctx).OutputState, } } -// UserProfileCustomImageArrayInput is an input type that accepts UserProfileCustomImageArray and UserProfileCustomImageArrayOutput values. -// You can construct a concrete instance of `UserProfileCustomImageArrayInput` via: +func (i UserProfileJupyterLabAppSettingsArgs) ToUserProfileJupyterLabAppSettingsPtrOutput() UserProfileJupyterLabAppSettingsPtrOutput { + return i.ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(context.Background()) +} + +func (i UserProfileJupyterLabAppSettingsArgs) ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(ctx context.Context) UserProfileJupyterLabAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileJupyterLabAppSettingsOutput).ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(ctx) +} + +// UserProfileJupyterLabAppSettingsPtrInput is an input type that accepts UserProfileJupyterLabAppSettingsArgs, UserProfileJupyterLabAppSettingsPtr and UserProfileJupyterLabAppSettingsPtrOutput values. +// You can construct a concrete instance of `UserProfileJupyterLabAppSettingsPtrInput` via: // -// UserProfileCustomImageArray{ UserProfileCustomImageArgs{...} } -type UserProfileCustomImageArrayInput interface { +// UserProfileJupyterLabAppSettingsArgs{...} +// +// or: +// +// nil +type UserProfileJupyterLabAppSettingsPtrInput interface { pulumi.Input - ToUserProfileCustomImageArrayOutput() UserProfileCustomImageArrayOutput - ToUserProfileCustomImageArrayOutputWithContext(context.Context) UserProfileCustomImageArrayOutput + ToUserProfileJupyterLabAppSettingsPtrOutput() UserProfileJupyterLabAppSettingsPtrOutput + ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(context.Context) UserProfileJupyterLabAppSettingsPtrOutput } -type UserProfileCustomImageArray []UserProfileCustomImageInput +type userProfileJupyterLabAppSettingsPtrType UserProfileJupyterLabAppSettingsArgs -func (UserProfileCustomImageArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]UserProfileCustomImage)(nil)).Elem() +func UserProfileJupyterLabAppSettingsPtr(v *UserProfileJupyterLabAppSettingsArgs) UserProfileJupyterLabAppSettingsPtrInput { + return (*userProfileJupyterLabAppSettingsPtrType)(v) } -func (i UserProfileCustomImageArray) ToUserProfileCustomImageArrayOutput() UserProfileCustomImageArrayOutput { - return i.ToUserProfileCustomImageArrayOutputWithContext(context.Background()) +func (*userProfileJupyterLabAppSettingsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileJupyterLabAppSettings)(nil)).Elem() } -func (i UserProfileCustomImageArray) ToUserProfileCustomImageArrayOutputWithContext(ctx context.Context) UserProfileCustomImageArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(UserProfileCustomImageArrayOutput) +func (i *userProfileJupyterLabAppSettingsPtrType) ToUserProfileJupyterLabAppSettingsPtrOutput() UserProfileJupyterLabAppSettingsPtrOutput { + return i.ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(context.Background()) } -func (i UserProfileCustomImageArray) ToOutput(ctx context.Context) pulumix.Output[[]UserProfileCustomImage] { - return pulumix.Output[[]UserProfileCustomImage]{ - OutputState: i.ToUserProfileCustomImageArrayOutputWithContext(ctx).OutputState, +func (i *userProfileJupyterLabAppSettingsPtrType) ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(ctx context.Context) UserProfileJupyterLabAppSettingsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(UserProfileJupyterLabAppSettingsPtrOutput) +} + +func (i *userProfileJupyterLabAppSettingsPtrType) ToOutput(ctx context.Context) pulumix.Output[*UserProfileJupyterLabAppSettings] { + return pulumix.Output[*UserProfileJupyterLabAppSettings]{ + OutputState: i.ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(ctx).OutputState, } } -// A custom SageMaker image. -type UserProfileCustomImageOutput struct{ *pulumi.OutputState } +// The JupyterLab app settings. +type UserProfileJupyterLabAppSettingsOutput struct{ *pulumi.OutputState } -func (UserProfileCustomImageOutput) ElementType() reflect.Type { - return reflect.TypeOf((*UserProfileCustomImage)(nil)).Elem() +func (UserProfileJupyterLabAppSettingsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*UserProfileJupyterLabAppSettings)(nil)).Elem() } -func (o UserProfileCustomImageOutput) ToUserProfileCustomImageOutput() UserProfileCustomImageOutput { +func (o UserProfileJupyterLabAppSettingsOutput) ToUserProfileJupyterLabAppSettingsOutput() UserProfileJupyterLabAppSettingsOutput { return o } -func (o UserProfileCustomImageOutput) ToUserProfileCustomImageOutputWithContext(ctx context.Context) UserProfileCustomImageOutput { +func (o UserProfileJupyterLabAppSettingsOutput) ToUserProfileJupyterLabAppSettingsOutputWithContext(ctx context.Context) UserProfileJupyterLabAppSettingsOutput { return o } -func (o UserProfileCustomImageOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileCustomImage] { - return pulumix.Output[UserProfileCustomImage]{ +func (o UserProfileJupyterLabAppSettingsOutput) ToUserProfileJupyterLabAppSettingsPtrOutput() UserProfileJupyterLabAppSettingsPtrOutput { + return o.ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(context.Background()) +} + +func (o UserProfileJupyterLabAppSettingsOutput) ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(ctx context.Context) UserProfileJupyterLabAppSettingsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v UserProfileJupyterLabAppSettings) *UserProfileJupyterLabAppSettings { + return &v + }).(UserProfileJupyterLabAppSettingsPtrOutput) +} + +func (o UserProfileJupyterLabAppSettingsOutput) ToOutput(ctx context.Context) pulumix.Output[UserProfileJupyterLabAppSettings] { + return pulumix.Output[UserProfileJupyterLabAppSettings]{ OutputState: o.OutputState, } } -// The Name of the AppImageConfig. -func (o UserProfileCustomImageOutput) AppImageConfigName() pulumi.StringOutput { - return o.ApplyT(func(v UserProfileCustomImage) string { return v.AppImageConfigName }).(pulumi.StringOutput) +// A list of CodeRepositories available for use with JupyterLab apps. +func (o UserProfileJupyterLabAppSettingsOutput) CodeRepositories() UserProfileCodeRepositoryArrayOutput { + return o.ApplyT(func(v UserProfileJupyterLabAppSettings) []UserProfileCodeRepository { return v.CodeRepositories }).(UserProfileCodeRepositoryArrayOutput) } -// The name of the CustomImage. Must be unique to your account. -func (o UserProfileCustomImageOutput) ImageName() pulumi.StringOutput { - return o.ApplyT(func(v UserProfileCustomImage) string { return v.ImageName }).(pulumi.StringOutput) +// A list of custom images available for use for JupyterLab apps +func (o UserProfileJupyterLabAppSettingsOutput) CustomImages() UserProfileCustomImageArrayOutput { + return o.ApplyT(func(v UserProfileJupyterLabAppSettings) []UserProfileCustomImage { return v.CustomImages }).(UserProfileCustomImageArrayOutput) } -// The version number of the CustomImage. -func (o UserProfileCustomImageOutput) ImageVersionNumber() pulumi.IntPtrOutput { - return o.ApplyT(func(v UserProfileCustomImage) *int { return v.ImageVersionNumber }).(pulumi.IntPtrOutput) +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. +func (o UserProfileJupyterLabAppSettingsOutput) DefaultResourceSpec() UserProfileResourceSpecPtrOutput { + return o.ApplyT(func(v UserProfileJupyterLabAppSettings) *UserProfileResourceSpec { return v.DefaultResourceSpec }).(UserProfileResourceSpecPtrOutput) } -type UserProfileCustomImageArrayOutput struct{ *pulumi.OutputState } +// A list of LifecycleConfigArns available for use with JupyterLab apps. +func (o UserProfileJupyterLabAppSettingsOutput) LifecycleConfigArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v UserProfileJupyterLabAppSettings) []string { return v.LifecycleConfigArns }).(pulumi.StringArrayOutput) +} -func (UserProfileCustomImageArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]UserProfileCustomImage)(nil)).Elem() +type UserProfileJupyterLabAppSettingsPtrOutput struct{ *pulumi.OutputState } + +func (UserProfileJupyterLabAppSettingsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**UserProfileJupyterLabAppSettings)(nil)).Elem() } -func (o UserProfileCustomImageArrayOutput) ToUserProfileCustomImageArrayOutput() UserProfileCustomImageArrayOutput { +func (o UserProfileJupyterLabAppSettingsPtrOutput) ToUserProfileJupyterLabAppSettingsPtrOutput() UserProfileJupyterLabAppSettingsPtrOutput { return o } -func (o UserProfileCustomImageArrayOutput) ToUserProfileCustomImageArrayOutputWithContext(ctx context.Context) UserProfileCustomImageArrayOutput { +func (o UserProfileJupyterLabAppSettingsPtrOutput) ToUserProfileJupyterLabAppSettingsPtrOutputWithContext(ctx context.Context) UserProfileJupyterLabAppSettingsPtrOutput { return o } -func (o UserProfileCustomImageArrayOutput) ToOutput(ctx context.Context) pulumix.Output[[]UserProfileCustomImage] { - return pulumix.Output[[]UserProfileCustomImage]{ +func (o UserProfileJupyterLabAppSettingsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*UserProfileJupyterLabAppSettings] { + return pulumix.Output[*UserProfileJupyterLabAppSettings]{ OutputState: o.OutputState, } } -func (o UserProfileCustomImageArrayOutput) Index(i pulumi.IntInput) UserProfileCustomImageOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) UserProfileCustomImage { - return vs[0].([]UserProfileCustomImage)[vs[1].(int)] - }).(UserProfileCustomImageOutput) +func (o UserProfileJupyterLabAppSettingsPtrOutput) Elem() UserProfileJupyterLabAppSettingsOutput { + return o.ApplyT(func(v *UserProfileJupyterLabAppSettings) UserProfileJupyterLabAppSettings { + if v != nil { + return *v + } + var ret UserProfileJupyterLabAppSettings + return ret + }).(UserProfileJupyterLabAppSettingsOutput) +} + +// A list of CodeRepositories available for use with JupyterLab apps. +func (o UserProfileJupyterLabAppSettingsPtrOutput) CodeRepositories() UserProfileCodeRepositoryArrayOutput { + return o.ApplyT(func(v *UserProfileJupyterLabAppSettings) []UserProfileCodeRepository { + if v == nil { + return nil + } + return v.CodeRepositories + }).(UserProfileCodeRepositoryArrayOutput) +} + +// A list of custom images available for use for JupyterLab apps +func (o UserProfileJupyterLabAppSettingsPtrOutput) CustomImages() UserProfileCustomImageArrayOutput { + return o.ApplyT(func(v *UserProfileJupyterLabAppSettings) []UserProfileCustomImage { + if v == nil { + return nil + } + return v.CustomImages + }).(UserProfileCustomImageArrayOutput) +} + +// The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. +func (o UserProfileJupyterLabAppSettingsPtrOutput) DefaultResourceSpec() UserProfileResourceSpecPtrOutput { + return o.ApplyT(func(v *UserProfileJupyterLabAppSettings) *UserProfileResourceSpec { + if v == nil { + return nil + } + return v.DefaultResourceSpec + }).(UserProfileResourceSpecPtrOutput) +} + +// A list of LifecycleConfigArns available for use with JupyterLab apps. +func (o UserProfileJupyterLabAppSettingsPtrOutput) LifecycleConfigArns() pulumi.StringArrayOutput { + return o.ApplyT(func(v *UserProfileJupyterLabAppSettings) []string { + if v == nil { + return nil + } + return v.LifecycleConfigArns + }).(pulumi.StringArrayOutput) } // The JupyterServer app settings. @@ -43553,8 +46347,14 @@ func (o UserProfileTagArrayOutput) Index(i pulumi.IntInput) UserProfileTagOutput // A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. type UserProfileUserSettings struct { + CodeEditorAppSettings *UserProfileCodeEditorAppSettings `pulumi:"codeEditorAppSettings"` + CustomFileSystemConfigs []UserProfileCustomFileSystemConfig `pulumi:"customFileSystemConfigs"` + CustomPosixUserConfig *UserProfileCustomPosixUserConfig `pulumi:"customPosixUserConfig"` + // Defines which Amazon SageMaker application users are directed to by default. + DefaultLandingUri *string `pulumi:"defaultLandingUri"` // The user profile Amazon Resource Name (ARN). - ExecutionRole *string `pulumi:"executionRole"` + ExecutionRole *string `pulumi:"executionRole"` + JupyterLabAppSettings *UserProfileJupyterLabAppSettings `pulumi:"jupyterLabAppSettings"` // The Jupyter server's app settings. JupyterServerAppSettings *UserProfileJupyterServerAppSettings `pulumi:"jupyterServerAppSettings"` // The kernel gateway app settings. @@ -43563,7 +46363,10 @@ type UserProfileUserSettings struct { // The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. SecurityGroups []string `pulumi:"securityGroups"` // The sharing settings. - SharingSettings *UserProfileSharingSettings `pulumi:"sharingSettings"` + SharingSettings *UserProfileSharingSettings `pulumi:"sharingSettings"` + SpaceStorageSettings *UserProfileDefaultSpaceStorageSettings `pulumi:"spaceStorageSettings"` + // Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + StudioWebPortal *UserProfileUserSettingsStudioWebPortal `pulumi:"studioWebPortal"` } // UserProfileUserSettingsInput is an input type that accepts UserProfileUserSettingsArgs and UserProfileUserSettingsOutput values. @@ -43579,8 +46382,14 @@ type UserProfileUserSettingsInput interface { // A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. type UserProfileUserSettingsArgs struct { + CodeEditorAppSettings UserProfileCodeEditorAppSettingsPtrInput `pulumi:"codeEditorAppSettings"` + CustomFileSystemConfigs UserProfileCustomFileSystemConfigArrayInput `pulumi:"customFileSystemConfigs"` + CustomPosixUserConfig UserProfileCustomPosixUserConfigPtrInput `pulumi:"customPosixUserConfig"` + // Defines which Amazon SageMaker application users are directed to by default. + DefaultLandingUri pulumi.StringPtrInput `pulumi:"defaultLandingUri"` // The user profile Amazon Resource Name (ARN). - ExecutionRole pulumi.StringPtrInput `pulumi:"executionRole"` + ExecutionRole pulumi.StringPtrInput `pulumi:"executionRole"` + JupyterLabAppSettings UserProfileJupyterLabAppSettingsPtrInput `pulumi:"jupyterLabAppSettings"` // The Jupyter server's app settings. JupyterServerAppSettings UserProfileJupyterServerAppSettingsPtrInput `pulumi:"jupyterServerAppSettings"` // The kernel gateway app settings. @@ -43589,7 +46398,10 @@ type UserProfileUserSettingsArgs struct { // The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. SecurityGroups pulumi.StringArrayInput `pulumi:"securityGroups"` // The sharing settings. - SharingSettings UserProfileSharingSettingsPtrInput `pulumi:"sharingSettings"` + SharingSettings UserProfileSharingSettingsPtrInput `pulumi:"sharingSettings"` + SpaceStorageSettings UserProfileDefaultSpaceStorageSettingsPtrInput `pulumi:"spaceStorageSettings"` + // Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + StudioWebPortal UserProfileUserSettingsStudioWebPortalPtrInput `pulumi:"studioWebPortal"` } func (UserProfileUserSettingsArgs) ElementType() reflect.Type { @@ -43688,11 +46500,32 @@ func (o UserProfileUserSettingsOutput) ToOutput(ctx context.Context) pulumix.Out } } +func (o UserProfileUserSettingsOutput) CodeEditorAppSettings() UserProfileCodeEditorAppSettingsPtrOutput { + return o.ApplyT(func(v UserProfileUserSettings) *UserProfileCodeEditorAppSettings { return v.CodeEditorAppSettings }).(UserProfileCodeEditorAppSettingsPtrOutput) +} + +func (o UserProfileUserSettingsOutput) CustomFileSystemConfigs() UserProfileCustomFileSystemConfigArrayOutput { + return o.ApplyT(func(v UserProfileUserSettings) []UserProfileCustomFileSystemConfig { return v.CustomFileSystemConfigs }).(UserProfileCustomFileSystemConfigArrayOutput) +} + +func (o UserProfileUserSettingsOutput) CustomPosixUserConfig() UserProfileCustomPosixUserConfigPtrOutput { + return o.ApplyT(func(v UserProfileUserSettings) *UserProfileCustomPosixUserConfig { return v.CustomPosixUserConfig }).(UserProfileCustomPosixUserConfigPtrOutput) +} + +// Defines which Amazon SageMaker application users are directed to by default. +func (o UserProfileUserSettingsOutput) DefaultLandingUri() pulumi.StringPtrOutput { + return o.ApplyT(func(v UserProfileUserSettings) *string { return v.DefaultLandingUri }).(pulumi.StringPtrOutput) +} + // The user profile Amazon Resource Name (ARN). func (o UserProfileUserSettingsOutput) ExecutionRole() pulumi.StringPtrOutput { return o.ApplyT(func(v UserProfileUserSettings) *string { return v.ExecutionRole }).(pulumi.StringPtrOutput) } +func (o UserProfileUserSettingsOutput) JupyterLabAppSettings() UserProfileJupyterLabAppSettingsPtrOutput { + return o.ApplyT(func(v UserProfileUserSettings) *UserProfileJupyterLabAppSettings { return v.JupyterLabAppSettings }).(UserProfileJupyterLabAppSettingsPtrOutput) +} + // The Jupyter server's app settings. func (o UserProfileUserSettingsOutput) JupyterServerAppSettings() UserProfileJupyterServerAppSettingsPtrOutput { return o.ApplyT(func(v UserProfileUserSettings) *UserProfileJupyterServerAppSettings { @@ -43723,6 +46556,15 @@ func (o UserProfileUserSettingsOutput) SharingSettings() UserProfileSharingSetti return o.ApplyT(func(v UserProfileUserSettings) *UserProfileSharingSettings { return v.SharingSettings }).(UserProfileSharingSettingsPtrOutput) } +func (o UserProfileUserSettingsOutput) SpaceStorageSettings() UserProfileDefaultSpaceStorageSettingsPtrOutput { + return o.ApplyT(func(v UserProfileUserSettings) *UserProfileDefaultSpaceStorageSettings { return v.SpaceStorageSettings }).(UserProfileDefaultSpaceStorageSettingsPtrOutput) +} + +// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. +func (o UserProfileUserSettingsOutput) StudioWebPortal() UserProfileUserSettingsStudioWebPortalPtrOutput { + return o.ApplyT(func(v UserProfileUserSettings) *UserProfileUserSettingsStudioWebPortal { return v.StudioWebPortal }).(UserProfileUserSettingsStudioWebPortalPtrOutput) +} + type UserProfileUserSettingsPtrOutput struct{ *pulumi.OutputState } func (UserProfileUserSettingsPtrOutput) ElementType() reflect.Type { @@ -43753,6 +46595,43 @@ func (o UserProfileUserSettingsPtrOutput) Elem() UserProfileUserSettingsOutput { }).(UserProfileUserSettingsOutput) } +func (o UserProfileUserSettingsPtrOutput) CodeEditorAppSettings() UserProfileCodeEditorAppSettingsPtrOutput { + return o.ApplyT(func(v *UserProfileUserSettings) *UserProfileCodeEditorAppSettings { + if v == nil { + return nil + } + return v.CodeEditorAppSettings + }).(UserProfileCodeEditorAppSettingsPtrOutput) +} + +func (o UserProfileUserSettingsPtrOutput) CustomFileSystemConfigs() UserProfileCustomFileSystemConfigArrayOutput { + return o.ApplyT(func(v *UserProfileUserSettings) []UserProfileCustomFileSystemConfig { + if v == nil { + return nil + } + return v.CustomFileSystemConfigs + }).(UserProfileCustomFileSystemConfigArrayOutput) +} + +func (o UserProfileUserSettingsPtrOutput) CustomPosixUserConfig() UserProfileCustomPosixUserConfigPtrOutput { + return o.ApplyT(func(v *UserProfileUserSettings) *UserProfileCustomPosixUserConfig { + if v == nil { + return nil + } + return v.CustomPosixUserConfig + }).(UserProfileCustomPosixUserConfigPtrOutput) +} + +// Defines which Amazon SageMaker application users are directed to by default. +func (o UserProfileUserSettingsPtrOutput) DefaultLandingUri() pulumi.StringPtrOutput { + return o.ApplyT(func(v *UserProfileUserSettings) *string { + if v == nil { + return nil + } + return v.DefaultLandingUri + }).(pulumi.StringPtrOutput) +} + // The user profile Amazon Resource Name (ARN). func (o UserProfileUserSettingsPtrOutput) ExecutionRole() pulumi.StringPtrOutput { return o.ApplyT(func(v *UserProfileUserSettings) *string { @@ -43763,6 +46642,15 @@ func (o UserProfileUserSettingsPtrOutput) ExecutionRole() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } +func (o UserProfileUserSettingsPtrOutput) JupyterLabAppSettings() UserProfileJupyterLabAppSettingsPtrOutput { + return o.ApplyT(func(v *UserProfileUserSettings) *UserProfileJupyterLabAppSettings { + if v == nil { + return nil + } + return v.JupyterLabAppSettings + }).(UserProfileJupyterLabAppSettingsPtrOutput) +} + // The Jupyter server's app settings. func (o UserProfileUserSettingsPtrOutput) JupyterServerAppSettings() UserProfileJupyterServerAppSettingsPtrOutput { return o.ApplyT(func(v *UserProfileUserSettings) *UserProfileJupyterServerAppSettings { @@ -43812,6 +46700,25 @@ func (o UserProfileUserSettingsPtrOutput) SharingSettings() UserProfileSharingSe }).(UserProfileSharingSettingsPtrOutput) } +func (o UserProfileUserSettingsPtrOutput) SpaceStorageSettings() UserProfileDefaultSpaceStorageSettingsPtrOutput { + return o.ApplyT(func(v *UserProfileUserSettings) *UserProfileDefaultSpaceStorageSettings { + if v == nil { + return nil + } + return v.SpaceStorageSettings + }).(UserProfileDefaultSpaceStorageSettingsPtrOutput) +} + +// Indicates whether the Studio experience is available to users. If not, users cannot access Studio. +func (o UserProfileUserSettingsPtrOutput) StudioWebPortal() UserProfileUserSettingsStudioWebPortalPtrOutput { + return o.ApplyT(func(v *UserProfileUserSettings) *UserProfileUserSettingsStudioWebPortal { + if v == nil { + return nil + } + return v.StudioWebPortal + }).(UserProfileUserSettingsStudioWebPortalPtrOutput) +} + type WorkteamCognitoMemberDefinition struct { CognitoClientId string `pulumi:"cognitoClientId"` CognitoUserGroup string `pulumi:"cognitoUserGroup"` @@ -44616,10 +47523,26 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*DeviceFleetTagArrayInput)(nil)).Elem(), DeviceFleetTagArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DeviceTagInput)(nil)).Elem(), DeviceTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DeviceTagArrayInput)(nil)).Elem(), DeviceTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainCodeEditorAppSettingsInput)(nil)).Elem(), DomainCodeEditorAppSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainCodeEditorAppSettingsPtrInput)(nil)).Elem(), DomainCodeEditorAppSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainCodeRepositoryInput)(nil)).Elem(), DomainCodeRepositoryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainCodeRepositoryArrayInput)(nil)).Elem(), DomainCodeRepositoryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainCustomFileSystemConfigInput)(nil)).Elem(), DomainCustomFileSystemConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainCustomFileSystemConfigArrayInput)(nil)).Elem(), DomainCustomFileSystemConfigArray{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainCustomImageInput)(nil)).Elem(), DomainCustomImageArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainCustomImageArrayInput)(nil)).Elem(), DomainCustomImageArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainCustomPosixUserConfigInput)(nil)).Elem(), DomainCustomPosixUserConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainCustomPosixUserConfigPtrInput)(nil)).Elem(), DomainCustomPosixUserConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainDefaultEbsStorageSettingsInput)(nil)).Elem(), DomainDefaultEbsStorageSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainDefaultEbsStorageSettingsPtrInput)(nil)).Elem(), DomainDefaultEbsStorageSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainDefaultSpaceSettingsInput)(nil)).Elem(), DomainDefaultSpaceSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainDefaultSpaceSettingsPtrInput)(nil)).Elem(), DomainDefaultSpaceSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainDefaultSpaceStorageSettingsInput)(nil)).Elem(), DomainDefaultSpaceStorageSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainDefaultSpaceStorageSettingsPtrInput)(nil)).Elem(), DomainDefaultSpaceStorageSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainEfsFileSystemConfigInput)(nil)).Elem(), DomainEfsFileSystemConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainEfsFileSystemConfigPtrInput)(nil)).Elem(), DomainEfsFileSystemConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainJupyterLabAppSettingsInput)(nil)).Elem(), DomainJupyterLabAppSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*DomainJupyterLabAppSettingsPtrInput)(nil)).Elem(), DomainJupyterLabAppSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainJupyterServerAppSettingsInput)(nil)).Elem(), DomainJupyterServerAppSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainJupyterServerAppSettingsPtrInput)(nil)).Elem(), DomainJupyterServerAppSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*DomainKernelGatewayAppSettingsInput)(nil)).Elem(), DomainKernelGatewayAppSettingsArgs{}) @@ -45033,8 +47956,24 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SpaceSettingsPtrInput)(nil)).Elem(), SpaceSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SpaceTagInput)(nil)).Elem(), SpaceTagArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SpaceTagArrayInput)(nil)).Elem(), SpaceTagArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCodeEditorAppSettingsInput)(nil)).Elem(), UserProfileCodeEditorAppSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCodeEditorAppSettingsPtrInput)(nil)).Elem(), UserProfileCodeEditorAppSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCodeRepositoryInput)(nil)).Elem(), UserProfileCodeRepositoryArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCodeRepositoryArrayInput)(nil)).Elem(), UserProfileCodeRepositoryArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCustomFileSystemConfigInput)(nil)).Elem(), UserProfileCustomFileSystemConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCustomFileSystemConfigArrayInput)(nil)).Elem(), UserProfileCustomFileSystemConfigArray{}) pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCustomImageInput)(nil)).Elem(), UserProfileCustomImageArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCustomImageArrayInput)(nil)).Elem(), UserProfileCustomImageArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCustomPosixUserConfigInput)(nil)).Elem(), UserProfileCustomPosixUserConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileCustomPosixUserConfigPtrInput)(nil)).Elem(), UserProfileCustomPosixUserConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileDefaultEbsStorageSettingsInput)(nil)).Elem(), UserProfileDefaultEbsStorageSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileDefaultEbsStorageSettingsPtrInput)(nil)).Elem(), UserProfileDefaultEbsStorageSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileDefaultSpaceStorageSettingsInput)(nil)).Elem(), UserProfileDefaultSpaceStorageSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileDefaultSpaceStorageSettingsPtrInput)(nil)).Elem(), UserProfileDefaultSpaceStorageSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileEfsFileSystemConfigInput)(nil)).Elem(), UserProfileEfsFileSystemConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileEfsFileSystemConfigPtrInput)(nil)).Elem(), UserProfileEfsFileSystemConfigArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileJupyterLabAppSettingsInput)(nil)).Elem(), UserProfileJupyterLabAppSettingsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*UserProfileJupyterLabAppSettingsPtrInput)(nil)).Elem(), UserProfileJupyterLabAppSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserProfileJupyterServerAppSettingsInput)(nil)).Elem(), UserProfileJupyterServerAppSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserProfileJupyterServerAppSettingsPtrInput)(nil)).Elem(), UserProfileJupyterServerAppSettingsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*UserProfileKernelGatewayAppSettingsInput)(nil)).Elem(), UserProfileKernelGatewayAppSettingsArgs{}) @@ -45115,10 +48054,26 @@ func init() { pulumi.RegisterOutputType(DeviceFleetTagArrayOutput{}) pulumi.RegisterOutputType(DeviceTagOutput{}) pulumi.RegisterOutputType(DeviceTagArrayOutput{}) + pulumi.RegisterOutputType(DomainCodeEditorAppSettingsOutput{}) + pulumi.RegisterOutputType(DomainCodeEditorAppSettingsPtrOutput{}) + pulumi.RegisterOutputType(DomainCodeRepositoryOutput{}) + pulumi.RegisterOutputType(DomainCodeRepositoryArrayOutput{}) + pulumi.RegisterOutputType(DomainCustomFileSystemConfigOutput{}) + pulumi.RegisterOutputType(DomainCustomFileSystemConfigArrayOutput{}) pulumi.RegisterOutputType(DomainCustomImageOutput{}) pulumi.RegisterOutputType(DomainCustomImageArrayOutput{}) + pulumi.RegisterOutputType(DomainCustomPosixUserConfigOutput{}) + pulumi.RegisterOutputType(DomainCustomPosixUserConfigPtrOutput{}) + pulumi.RegisterOutputType(DomainDefaultEbsStorageSettingsOutput{}) + pulumi.RegisterOutputType(DomainDefaultEbsStorageSettingsPtrOutput{}) pulumi.RegisterOutputType(DomainDefaultSpaceSettingsOutput{}) pulumi.RegisterOutputType(DomainDefaultSpaceSettingsPtrOutput{}) + pulumi.RegisterOutputType(DomainDefaultSpaceStorageSettingsOutput{}) + pulumi.RegisterOutputType(DomainDefaultSpaceStorageSettingsPtrOutput{}) + pulumi.RegisterOutputType(DomainEfsFileSystemConfigOutput{}) + pulumi.RegisterOutputType(DomainEfsFileSystemConfigPtrOutput{}) + pulumi.RegisterOutputType(DomainJupyterLabAppSettingsOutput{}) + pulumi.RegisterOutputType(DomainJupyterLabAppSettingsPtrOutput{}) pulumi.RegisterOutputType(DomainJupyterServerAppSettingsOutput{}) pulumi.RegisterOutputType(DomainJupyterServerAppSettingsPtrOutput{}) pulumi.RegisterOutputType(DomainKernelGatewayAppSettingsOutput{}) @@ -45540,8 +48495,24 @@ func init() { pulumi.RegisterOutputType(SpaceSettingsPtrOutput{}) pulumi.RegisterOutputType(SpaceTagOutput{}) pulumi.RegisterOutputType(SpaceTagArrayOutput{}) + pulumi.RegisterOutputType(UserProfileCodeEditorAppSettingsOutput{}) + pulumi.RegisterOutputType(UserProfileCodeEditorAppSettingsPtrOutput{}) + pulumi.RegisterOutputType(UserProfileCodeRepositoryOutput{}) + pulumi.RegisterOutputType(UserProfileCodeRepositoryArrayOutput{}) + pulumi.RegisterOutputType(UserProfileCustomFileSystemConfigOutput{}) + pulumi.RegisterOutputType(UserProfileCustomFileSystemConfigArrayOutput{}) pulumi.RegisterOutputType(UserProfileCustomImageOutput{}) pulumi.RegisterOutputType(UserProfileCustomImageArrayOutput{}) + pulumi.RegisterOutputType(UserProfileCustomPosixUserConfigOutput{}) + pulumi.RegisterOutputType(UserProfileCustomPosixUserConfigPtrOutput{}) + pulumi.RegisterOutputType(UserProfileDefaultEbsStorageSettingsOutput{}) + pulumi.RegisterOutputType(UserProfileDefaultEbsStorageSettingsPtrOutput{}) + pulumi.RegisterOutputType(UserProfileDefaultSpaceStorageSettingsOutput{}) + pulumi.RegisterOutputType(UserProfileDefaultSpaceStorageSettingsPtrOutput{}) + pulumi.RegisterOutputType(UserProfileEfsFileSystemConfigOutput{}) + pulumi.RegisterOutputType(UserProfileEfsFileSystemConfigPtrOutput{}) + pulumi.RegisterOutputType(UserProfileJupyterLabAppSettingsOutput{}) + pulumi.RegisterOutputType(UserProfileJupyterLabAppSettingsPtrOutput{}) pulumi.RegisterOutputType(UserProfileJupyterServerAppSettingsOutput{}) pulumi.RegisterOutputType(UserProfileJupyterServerAppSettingsPtrOutput{}) pulumi.RegisterOutputType(UserProfileKernelGatewayAppSettingsOutput{}) diff --git a/sdk/go/aws/securityhub/getHub.go b/sdk/go/aws/securityhub/getHub.go index 7cf81ac3b5..599841828f 100644 --- a/sdk/go/aws/securityhub/getHub.go +++ b/sdk/go/aws/securityhub/getHub.go @@ -12,7 +12,7 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::SecurityHub::Hub +// The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. func LookupHub(ctx *pulumi.Context, args *LookupHubArgs, opts ...pulumi.InvokeOption) (*LookupHubResult, error) { opts = internal.PkgInvokeDefaultOpts(opts) var rv LookupHubResult @@ -24,15 +24,20 @@ func LookupHub(ctx *pulumi.Context, args *LookupHubArgs, opts ...pulumi.InvokeOp } type LookupHubArgs struct { - Id string `pulumi:"id"` + // An ARN is automatically created for the customer. + Arn string `pulumi:"arn"` } type LookupHubResult struct { - AutoEnableControls *bool `pulumi:"autoEnableControls"` - ControlFindingGenerator *string `pulumi:"controlFindingGenerator"` - EnableDefaultStandards *bool `pulumi:"enableDefaultStandards"` - Id *string `pulumi:"id"` - Tags interface{} `pulumi:"tags"` + // An ARN is automatically created for the customer. + Arn *string `pulumi:"arn"` + // Whether to automatically enable new controls when they are added to standards that are enabled + AutoEnableControls *bool `pulumi:"autoEnableControls"` + // This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + ControlFindingGenerator *string `pulumi:"controlFindingGenerator"` + // The date and time when Security Hub was enabled in the account. + SubscribedAt *string `pulumi:"subscribedAt"` + Tags *HubTags `pulumi:"tags"` } func LookupHubOutput(ctx *pulumi.Context, args LookupHubOutputArgs, opts ...pulumi.InvokeOption) LookupHubResultOutput { @@ -49,7 +54,8 @@ func LookupHubOutput(ctx *pulumi.Context, args LookupHubOutputArgs, opts ...pulu } type LookupHubOutputArgs struct { - Id pulumi.StringInput `pulumi:"id"` + // An ARN is automatically created for the customer. + Arn pulumi.StringInput `pulumi:"arn"` } func (LookupHubOutputArgs) ElementType() reflect.Type { @@ -76,24 +82,28 @@ func (o LookupHubResultOutput) ToOutput(ctx context.Context) pulumix.Output[Look } } +// An ARN is automatically created for the customer. +func (o LookupHubResultOutput) Arn() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupHubResult) *string { return v.Arn }).(pulumi.StringPtrOutput) +} + +// Whether to automatically enable new controls when they are added to standards that are enabled func (o LookupHubResultOutput) AutoEnableControls() pulumi.BoolPtrOutput { return o.ApplyT(func(v LookupHubResult) *bool { return v.AutoEnableControls }).(pulumi.BoolPtrOutput) } +// This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. func (o LookupHubResultOutput) ControlFindingGenerator() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupHubResult) *string { return v.ControlFindingGenerator }).(pulumi.StringPtrOutput) } -func (o LookupHubResultOutput) EnableDefaultStandards() pulumi.BoolPtrOutput { - return o.ApplyT(func(v LookupHubResult) *bool { return v.EnableDefaultStandards }).(pulumi.BoolPtrOutput) -} - -func (o LookupHubResultOutput) Id() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupHubResult) *string { return v.Id }).(pulumi.StringPtrOutput) +// The date and time when Security Hub was enabled in the account. +func (o LookupHubResultOutput) SubscribedAt() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupHubResult) *string { return v.SubscribedAt }).(pulumi.StringPtrOutput) } -func (o LookupHubResultOutput) Tags() pulumi.AnyOutput { - return o.ApplyT(func(v LookupHubResult) interface{} { return v.Tags }).(pulumi.AnyOutput) +func (o LookupHubResultOutput) Tags() HubTagsPtrOutput { + return o.ApplyT(func(v LookupHubResult) *HubTags { return v.Tags }).(HubTagsPtrOutput) } func init() { diff --git a/sdk/go/aws/securityhub/hub.go b/sdk/go/aws/securityhub/hub.go index a19591c443..bb64f325e9 100644 --- a/sdk/go/aws/securityhub/hub.go +++ b/sdk/go/aws/securityhub/hub.go @@ -12,16 +12,21 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumix" ) -// Resource Type definition for AWS::SecurityHub::Hub -// -// Deprecated: Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. +// The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. type Hub struct { pulumi.CustomResourceState - AutoEnableControls pulumi.BoolPtrOutput `pulumi:"autoEnableControls"` + // An ARN is automatically created for the customer. + Arn pulumi.StringOutput `pulumi:"arn"` + // Whether to automatically enable new controls when they are added to standards that are enabled + AutoEnableControls pulumi.BoolPtrOutput `pulumi:"autoEnableControls"` + // This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. ControlFindingGenerator pulumi.StringPtrOutput `pulumi:"controlFindingGenerator"` - EnableDefaultStandards pulumi.BoolPtrOutput `pulumi:"enableDefaultStandards"` - Tags pulumi.AnyOutput `pulumi:"tags"` + // Whether to enable the security standards that Security Hub has designated as automatically enabled. + EnableDefaultStandards pulumi.BoolPtrOutput `pulumi:"enableDefaultStandards"` + // The date and time when Security Hub was enabled in the account. + SubscribedAt pulumi.StringOutput `pulumi:"subscribedAt"` + Tags HubTagsPtrOutput `pulumi:"tags"` } // NewHub registers a new resource with the given unique name, arguments, and options. @@ -64,18 +69,24 @@ func (HubState) ElementType() reflect.Type { } type hubArgs struct { - AutoEnableControls *bool `pulumi:"autoEnableControls"` - ControlFindingGenerator *string `pulumi:"controlFindingGenerator"` - EnableDefaultStandards *bool `pulumi:"enableDefaultStandards"` - Tags interface{} `pulumi:"tags"` + // Whether to automatically enable new controls when they are added to standards that are enabled + AutoEnableControls *bool `pulumi:"autoEnableControls"` + // This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + ControlFindingGenerator *string `pulumi:"controlFindingGenerator"` + // Whether to enable the security standards that Security Hub has designated as automatically enabled. + EnableDefaultStandards *bool `pulumi:"enableDefaultStandards"` + Tags *HubTags `pulumi:"tags"` } // The set of arguments for constructing a Hub resource. type HubArgs struct { - AutoEnableControls pulumi.BoolPtrInput + // Whether to automatically enable new controls when they are added to standards that are enabled + AutoEnableControls pulumi.BoolPtrInput + // This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. ControlFindingGenerator pulumi.StringPtrInput - EnableDefaultStandards pulumi.BoolPtrInput - Tags pulumi.Input + // Whether to enable the security standards that Security Hub has designated as automatically enabled. + EnableDefaultStandards pulumi.BoolPtrInput + Tags HubTagsPtrInput } func (HubArgs) ElementType() reflect.Type { @@ -127,20 +138,33 @@ func (o HubOutput) ToOutput(ctx context.Context) pulumix.Output[*Hub] { } } +// An ARN is automatically created for the customer. +func (o HubOutput) Arn() pulumi.StringOutput { + return o.ApplyT(func(v *Hub) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) +} + +// Whether to automatically enable new controls when they are added to standards that are enabled func (o HubOutput) AutoEnableControls() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Hub) pulumi.BoolPtrOutput { return v.AutoEnableControls }).(pulumi.BoolPtrOutput) } +// This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. func (o HubOutput) ControlFindingGenerator() pulumi.StringPtrOutput { return o.ApplyT(func(v *Hub) pulumi.StringPtrOutput { return v.ControlFindingGenerator }).(pulumi.StringPtrOutput) } +// Whether to enable the security standards that Security Hub has designated as automatically enabled. func (o HubOutput) EnableDefaultStandards() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Hub) pulumi.BoolPtrOutput { return v.EnableDefaultStandards }).(pulumi.BoolPtrOutput) } -func (o HubOutput) Tags() pulumi.AnyOutput { - return o.ApplyT(func(v *Hub) pulumi.AnyOutput { return v.Tags }).(pulumi.AnyOutput) +// The date and time when Security Hub was enabled in the account. +func (o HubOutput) SubscribedAt() pulumi.StringOutput { + return o.ApplyT(func(v *Hub) pulumi.StringOutput { return v.SubscribedAt }).(pulumi.StringOutput) +} + +func (o HubOutput) Tags() HubTagsPtrOutput { + return o.ApplyT(func(v *Hub) HubTagsPtrOutput { return v.Tags }).(HubTagsPtrOutput) } func init() { diff --git a/sdk/go/aws/securityhub/pulumiTypes.go b/sdk/go/aws/securityhub/pulumiTypes.go index 382a9ce790..ab11a41e6e 100644 --- a/sdk/go/aws/securityhub/pulumiTypes.go +++ b/sdk/go/aws/securityhub/pulumiTypes.go @@ -2542,6 +2542,151 @@ func (o AutomationRulesFindingFiltersPtrOutput) WorkflowStatus() AutomationRuleS }).(AutomationRuleStringFilterArrayOutput) } +// A key-value pair to associate with a resource. +type HubTags struct { +} + +// HubTagsInput is an input type that accepts HubTagsArgs and HubTagsOutput values. +// You can construct a concrete instance of `HubTagsInput` via: +// +// HubTagsArgs{...} +type HubTagsInput interface { + pulumi.Input + + ToHubTagsOutput() HubTagsOutput + ToHubTagsOutputWithContext(context.Context) HubTagsOutput +} + +// A key-value pair to associate with a resource. +type HubTagsArgs struct { +} + +func (HubTagsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*HubTags)(nil)).Elem() +} + +func (i HubTagsArgs) ToHubTagsOutput() HubTagsOutput { + return i.ToHubTagsOutputWithContext(context.Background()) +} + +func (i HubTagsArgs) ToHubTagsOutputWithContext(ctx context.Context) HubTagsOutput { + return pulumi.ToOutputWithContext(ctx, i).(HubTagsOutput) +} + +func (i HubTagsArgs) ToOutput(ctx context.Context) pulumix.Output[HubTags] { + return pulumix.Output[HubTags]{ + OutputState: i.ToHubTagsOutputWithContext(ctx).OutputState, + } +} + +func (i HubTagsArgs) ToHubTagsPtrOutput() HubTagsPtrOutput { + return i.ToHubTagsPtrOutputWithContext(context.Background()) +} + +func (i HubTagsArgs) ToHubTagsPtrOutputWithContext(ctx context.Context) HubTagsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(HubTagsOutput).ToHubTagsPtrOutputWithContext(ctx) +} + +// HubTagsPtrInput is an input type that accepts HubTagsArgs, HubTagsPtr and HubTagsPtrOutput values. +// You can construct a concrete instance of `HubTagsPtrInput` via: +// +// HubTagsArgs{...} +// +// or: +// +// nil +type HubTagsPtrInput interface { + pulumi.Input + + ToHubTagsPtrOutput() HubTagsPtrOutput + ToHubTagsPtrOutputWithContext(context.Context) HubTagsPtrOutput +} + +type hubTagsPtrType HubTagsArgs + +func HubTagsPtr(v *HubTagsArgs) HubTagsPtrInput { + return (*hubTagsPtrType)(v) +} + +func (*hubTagsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**HubTags)(nil)).Elem() +} + +func (i *hubTagsPtrType) ToHubTagsPtrOutput() HubTagsPtrOutput { + return i.ToHubTagsPtrOutputWithContext(context.Background()) +} + +func (i *hubTagsPtrType) ToHubTagsPtrOutputWithContext(ctx context.Context) HubTagsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(HubTagsPtrOutput) +} + +func (i *hubTagsPtrType) ToOutput(ctx context.Context) pulumix.Output[*HubTags] { + return pulumix.Output[*HubTags]{ + OutputState: i.ToHubTagsPtrOutputWithContext(ctx).OutputState, + } +} + +// A key-value pair to associate with a resource. +type HubTagsOutput struct{ *pulumi.OutputState } + +func (HubTagsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*HubTags)(nil)).Elem() +} + +func (o HubTagsOutput) ToHubTagsOutput() HubTagsOutput { + return o +} + +func (o HubTagsOutput) ToHubTagsOutputWithContext(ctx context.Context) HubTagsOutput { + return o +} + +func (o HubTagsOutput) ToHubTagsPtrOutput() HubTagsPtrOutput { + return o.ToHubTagsPtrOutputWithContext(context.Background()) +} + +func (o HubTagsOutput) ToHubTagsPtrOutputWithContext(ctx context.Context) HubTagsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v HubTags) *HubTags { + return &v + }).(HubTagsPtrOutput) +} + +func (o HubTagsOutput) ToOutput(ctx context.Context) pulumix.Output[HubTags] { + return pulumix.Output[HubTags]{ + OutputState: o.OutputState, + } +} + +type HubTagsPtrOutput struct{ *pulumi.OutputState } + +func (HubTagsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**HubTags)(nil)).Elem() +} + +func (o HubTagsPtrOutput) ToHubTagsPtrOutput() HubTagsPtrOutput { + return o +} + +func (o HubTagsPtrOutput) ToHubTagsPtrOutputWithContext(ctx context.Context) HubTagsPtrOutput { + return o +} + +func (o HubTagsPtrOutput) ToOutput(ctx context.Context) pulumix.Output[*HubTags] { + return pulumix.Output[*HubTags]{ + OutputState: o.OutputState, + } +} + +func (o HubTagsPtrOutput) Elem() HubTagsOutput { + return o.ApplyT(func(v *HubTags) HubTags { + if v != nil { + return *v + } + var ret HubTags + return ret + }).(HubTagsOutput) +} + // An individual StandardsControl within the Standard. type StandardsControl struct { // the reason the standard control is disabled @@ -2703,6 +2848,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AutomationRulesFindingFieldsUpdateInput)(nil)).Elem(), AutomationRulesFindingFieldsUpdateArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AutomationRulesFindingFiltersInput)(nil)).Elem(), AutomationRulesFindingFiltersArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*AutomationRulesFindingFiltersPtrInput)(nil)).Elem(), AutomationRulesFindingFiltersArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*HubTagsInput)(nil)).Elem(), HubTagsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*HubTagsPtrInput)(nil)).Elem(), HubTagsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*StandardsControlInput)(nil)).Elem(), StandardsControlArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*StandardsControlArrayInput)(nil)).Elem(), StandardsControlArray{}) pulumi.RegisterOutputType(AutomationRuleDateFilterOutput{}) @@ -2732,6 +2879,8 @@ func init() { pulumi.RegisterOutputType(AutomationRulesFindingFieldsUpdateOutput{}) pulumi.RegisterOutputType(AutomationRulesFindingFiltersOutput{}) pulumi.RegisterOutputType(AutomationRulesFindingFiltersPtrOutput{}) + pulumi.RegisterOutputType(HubTagsOutput{}) + pulumi.RegisterOutputType(HubTagsPtrOutput{}) pulumi.RegisterOutputType(StandardsControlOutput{}) pulumi.RegisterOutputType(StandardsControlArrayOutput{}) } diff --git a/sdk/go/aws/servicecatalogappregistry/application.go b/sdk/go/aws/servicecatalogappregistry/application.go index f57848fe81..d74be4caae 100644 --- a/sdk/go/aws/servicecatalogappregistry/application.go +++ b/sdk/go/aws/servicecatalogappregistry/application.go @@ -16,7 +16,13 @@ import ( type Application struct { pulumi.CustomResourceState - Arn pulumi.StringOutput `pulumi:"arn"` + // The name of the application. + ApplicationName pulumi.StringOutput `pulumi:"applicationName"` + // The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + ApplicationTagKey pulumi.StringOutput `pulumi:"applicationTagKey"` + // The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + ApplicationTagValue pulumi.StringOutput `pulumi:"applicationTagValue"` + Arn pulumi.StringOutput `pulumi:"arn"` // The description of the application. Description pulumi.StringPtrOutput `pulumi:"description"` // The name of the application. @@ -129,6 +135,21 @@ func (o ApplicationOutput) ToOutput(ctx context.Context) pulumix.Output[*Applica } } +// The name of the application. +func (o ApplicationOutput) ApplicationName() pulumi.StringOutput { + return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.ApplicationName }).(pulumi.StringOutput) +} + +// The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. +func (o ApplicationOutput) ApplicationTagKey() pulumi.StringOutput { + return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.ApplicationTagKey }).(pulumi.StringOutput) +} + +// The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. +func (o ApplicationOutput) ApplicationTagValue() pulumi.StringOutput { + return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.ApplicationTagValue }).(pulumi.StringOutput) +} + func (o ApplicationOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/servicecatalogappregistry/getApplication.go b/sdk/go/aws/servicecatalogappregistry/getApplication.go index cec0b3abf8..8dca6ad9ad 100644 --- a/sdk/go/aws/servicecatalogappregistry/getApplication.go +++ b/sdk/go/aws/servicecatalogappregistry/getApplication.go @@ -28,7 +28,13 @@ type LookupApplicationArgs struct { } type LookupApplicationResult struct { - Arn *string `pulumi:"arn"` + // The name of the application. + ApplicationName *string `pulumi:"applicationName"` + // The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + ApplicationTagKey *string `pulumi:"applicationTagKey"` + // The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + ApplicationTagValue *string `pulumi:"applicationTagValue"` + Arn *string `pulumi:"arn"` // The description of the application. Description *string `pulumi:"description"` Id *string `pulumi:"id"` @@ -78,6 +84,21 @@ func (o LookupApplicationResultOutput) ToOutput(ctx context.Context) pulumix.Out } } +// The name of the application. +func (o LookupApplicationResultOutput) ApplicationName() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupApplicationResult) *string { return v.ApplicationName }).(pulumi.StringPtrOutput) +} + +// The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. +func (o LookupApplicationResultOutput) ApplicationTagKey() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupApplicationResult) *string { return v.ApplicationTagKey }).(pulumi.StringPtrOutput) +} + +// The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. +func (o LookupApplicationResultOutput) ApplicationTagValue() pulumi.StringPtrOutput { + return o.ApplyT(func(v LookupApplicationResult) *string { return v.ApplicationTagValue }).(pulumi.StringPtrOutput) +} + func (o LookupApplicationResultOutput) Arn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupApplicationResult) *string { return v.Arn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/sns/getSubscription.go b/sdk/go/aws/sns/getSubscription.go index 033d604194..f5326299c3 100644 --- a/sdk/go/aws/sns/getSubscription.go +++ b/sdk/go/aws/sns/getSubscription.go @@ -35,6 +35,7 @@ type LookupSubscriptionResult struct { RawMessageDelivery *bool `pulumi:"rawMessageDelivery"` RedrivePolicy interface{} `pulumi:"redrivePolicy"` Region *string `pulumi:"region"` + ReplayPolicy interface{} `pulumi:"replayPolicy"` SubscriptionRoleArn *string `pulumi:"subscriptionRoleArn"` } @@ -107,6 +108,10 @@ func (o LookupSubscriptionResultOutput) Region() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSubscriptionResult) *string { return v.Region }).(pulumi.StringPtrOutput) } +func (o LookupSubscriptionResultOutput) ReplayPolicy() pulumi.AnyOutput { + return o.ApplyT(func(v LookupSubscriptionResult) interface{} { return v.ReplayPolicy }).(pulumi.AnyOutput) +} + func (o LookupSubscriptionResultOutput) SubscriptionRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupSubscriptionResult) *string { return v.SubscriptionRoleArn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/sns/subscription.go b/sdk/go/aws/sns/subscription.go index ebf092de17..129d663694 100644 --- a/sdk/go/aws/sns/subscription.go +++ b/sdk/go/aws/sns/subscription.go @@ -27,6 +27,7 @@ type Subscription struct { RawMessageDelivery pulumi.BoolPtrOutput `pulumi:"rawMessageDelivery"` RedrivePolicy pulumi.AnyOutput `pulumi:"redrivePolicy"` Region pulumi.StringPtrOutput `pulumi:"region"` + ReplayPolicy pulumi.AnyOutput `pulumi:"replayPolicy"` SubscriptionRoleArn pulumi.StringPtrOutput `pulumi:"subscriptionRoleArn"` TopicArn pulumi.StringOutput `pulumi:"topicArn"` } @@ -91,6 +92,7 @@ type subscriptionArgs struct { RawMessageDelivery *bool `pulumi:"rawMessageDelivery"` RedrivePolicy interface{} `pulumi:"redrivePolicy"` Region *string `pulumi:"region"` + ReplayPolicy interface{} `pulumi:"replayPolicy"` SubscriptionRoleArn *string `pulumi:"subscriptionRoleArn"` TopicArn string `pulumi:"topicArn"` } @@ -105,6 +107,7 @@ type SubscriptionArgs struct { RawMessageDelivery pulumi.BoolPtrInput RedrivePolicy pulumi.Input Region pulumi.StringPtrInput + ReplayPolicy pulumi.Input SubscriptionRoleArn pulumi.StringPtrInput TopicArn pulumi.StringInput } @@ -190,6 +193,10 @@ func (o SubscriptionOutput) Region() pulumi.StringPtrOutput { return o.ApplyT(func(v *Subscription) pulumi.StringPtrOutput { return v.Region }).(pulumi.StringPtrOutput) } +func (o SubscriptionOutput) ReplayPolicy() pulumi.AnyOutput { + return o.ApplyT(func(v *Subscription) pulumi.AnyOutput { return v.ReplayPolicy }).(pulumi.AnyOutput) +} + func (o SubscriptionOutput) SubscriptionRoleArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *Subscription) pulumi.StringPtrOutput { return v.SubscriptionRoleArn }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/ssm/getAssociation.go b/sdk/go/aws/ssm/getAssociation.go index f31e916410..2cdecebf8c 100644 --- a/sdk/go/aws/ssm/getAssociation.go +++ b/sdk/go/aws/ssm/getAssociation.go @@ -53,8 +53,7 @@ type LookupAssociationResult struct { ScheduleOffset *int `pulumi:"scheduleOffset"` SyncCompliance *AssociationSyncCompliance `pulumi:"syncCompliance"` // The targets that the SSM document sends commands to. - Targets []AssociationTarget `pulumi:"targets"` - WaitForSuccessTimeoutSeconds *int `pulumi:"waitForSuccessTimeoutSeconds"` + Targets []AssociationTarget `pulumi:"targets"` } func LookupAssociationOutput(ctx *pulumi.Context, args LookupAssociationOutputArgs, opts ...pulumi.InvokeOption) LookupAssociationResultOutput { @@ -175,10 +174,6 @@ func (o LookupAssociationResultOutput) Targets() AssociationTargetArrayOutput { return o.ApplyT(func(v LookupAssociationResult) []AssociationTarget { return v.Targets }).(AssociationTargetArrayOutput) } -func (o LookupAssociationResultOutput) WaitForSuccessTimeoutSeconds() pulumi.IntPtrOutput { - return o.ApplyT(func(v LookupAssociationResult) *int { return v.WaitForSuccessTimeoutSeconds }).(pulumi.IntPtrOutput) -} - func init() { pulumi.RegisterOutputType(LookupAssociationResultOutput{}) } diff --git a/sdk/nodejs/appsync/getGraphQlApi.ts b/sdk/nodejs/appsync/getGraphQlApi.ts index 5485a10dee..c811ae01ca 100644 --- a/sdk/nodejs/appsync/getGraphQlApi.ts +++ b/sdk/nodejs/appsync/getGraphQlApi.ts @@ -29,6 +29,7 @@ export interface GetGraphQlApiResult { readonly arn?: string; readonly authenticationType?: string; readonly graphQlDns?: string; + readonly graphQlEndpointArn?: string; readonly graphQlUrl?: string; readonly id?: string; readonly lambdaAuthorizerConfig?: outputs.appsync.GraphQlApiLambdaAuthorizerConfig; diff --git a/sdk/nodejs/appsync/graphQlApi.ts b/sdk/nodejs/appsync/graphQlApi.ts index 54d62f3c97..d3eaca3c1c 100644 --- a/sdk/nodejs/appsync/graphQlApi.ts +++ b/sdk/nodejs/appsync/graphQlApi.ts @@ -46,6 +46,7 @@ export class GraphQlApi extends pulumi.CustomResource { public /*out*/ readonly arn!: pulumi.Output; public readonly authenticationType!: pulumi.Output; public /*out*/ readonly graphQlDns!: pulumi.Output; + public /*out*/ readonly graphQlEndpointArn!: pulumi.Output; public /*out*/ readonly graphQlUrl!: pulumi.Output; public readonly lambdaAuthorizerConfig!: pulumi.Output; public readonly logConfig!: pulumi.Output; @@ -92,6 +93,7 @@ export class GraphQlApi extends pulumi.CustomResource { resourceInputs["apiId"] = undefined /*out*/; resourceInputs["arn"] = undefined /*out*/; resourceInputs["graphQlDns"] = undefined /*out*/; + resourceInputs["graphQlEndpointArn"] = undefined /*out*/; resourceInputs["graphQlUrl"] = undefined /*out*/; resourceInputs["realtimeDns"] = undefined /*out*/; resourceInputs["realtimeUrl"] = undefined /*out*/; @@ -102,6 +104,7 @@ export class GraphQlApi extends pulumi.CustomResource { resourceInputs["arn"] = undefined /*out*/; resourceInputs["authenticationType"] = undefined /*out*/; resourceInputs["graphQlDns"] = undefined /*out*/; + resourceInputs["graphQlEndpointArn"] = undefined /*out*/; resourceInputs["graphQlUrl"] = undefined /*out*/; resourceInputs["lambdaAuthorizerConfig"] = undefined /*out*/; resourceInputs["logConfig"] = undefined /*out*/; diff --git a/sdk/nodejs/b2bi/capability.ts b/sdk/nodejs/b2bi/capability.ts new file mode 100644 index 0000000000..a0e8e5bf93 --- /dev/null +++ b/sdk/nodejs/b2bi/capability.ts @@ -0,0 +1,103 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Definition of AWS::B2BI::Capability Resource Type + */ +export class Capability extends pulumi.CustomResource { + /** + * Get an existing Capability 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): Capability { + return new Capability(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:b2bi:Capability'; + + /** + * Returns true if the given object is an instance of Capability. 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 Capability { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Capability.__pulumiType; + } + + public /*out*/ readonly capabilityArn!: pulumi.Output; + public /*out*/ readonly capabilityId!: pulumi.Output; + public readonly configuration!: pulumi.Output; + public /*out*/ readonly createdAt!: pulumi.Output; + public readonly instructionsDocuments!: pulumi.Output; + public /*out*/ readonly modifiedAt!: pulumi.Output; + public readonly name!: pulumi.Output; + public readonly tags!: pulumi.Output; + public readonly type!: pulumi.Output; + + /** + * Create a Capability 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: CapabilityArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.configuration === undefined) && !opts.urn) { + throw new Error("Missing required property 'configuration'"); + } + if ((!args || args.type === undefined) && !opts.urn) { + throw new Error("Missing required property 'type'"); + } + resourceInputs["configuration"] = args ? args.configuration : undefined; + resourceInputs["instructionsDocuments"] = args ? args.instructionsDocuments : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["type"] = args ? args.type : undefined; + resourceInputs["capabilityArn"] = undefined /*out*/; + resourceInputs["capabilityId"] = undefined /*out*/; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["modifiedAt"] = undefined /*out*/; + } else { + resourceInputs["capabilityArn"] = undefined /*out*/; + resourceInputs["capabilityId"] = undefined /*out*/; + resourceInputs["configuration"] = undefined /*out*/; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["instructionsDocuments"] = undefined /*out*/; + resourceInputs["modifiedAt"] = undefined /*out*/; + resourceInputs["name"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + resourceInputs["type"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["type"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(Capability.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a Capability resource. + */ +export interface CapabilityArgs { + configuration: pulumi.Input; + instructionsDocuments?: pulumi.Input[]>; + name?: pulumi.Input; + tags?: pulumi.Input[]>; + type: pulumi.Input; +} diff --git a/sdk/nodejs/b2bi/getCapability.ts b/sdk/nodejs/b2bi/getCapability.ts new file mode 100644 index 0000000000..d7bf7c06b5 --- /dev/null +++ b/sdk/nodejs/b2bi/getCapability.ts @@ -0,0 +1,44 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Definition of AWS::B2BI::Capability Resource Type + */ +export function getCapability(args: GetCapabilityArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:b2bi:getCapability", { + "capabilityId": args.capabilityId, + }, opts); +} + +export interface GetCapabilityArgs { + capabilityId: string; +} + +export interface GetCapabilityResult { + readonly capabilityArn?: string; + readonly capabilityId?: string; + readonly configuration?: outputs.b2bi.CapabilityConfigurationProperties; + readonly createdAt?: string; + readonly instructionsDocuments?: outputs.b2bi.CapabilityS3Location[]; + readonly modifiedAt?: string; + readonly name?: string; + readonly tags?: outputs.b2bi.CapabilityTag[]; +} +/** + * Definition of AWS::B2BI::Capability Resource Type + */ +export function getCapabilityOutput(args: GetCapabilityOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getCapability(a, opts)) +} + +export interface GetCapabilityOutputArgs { + capabilityId: pulumi.Input; +} diff --git a/sdk/nodejs/b2bi/getPartnership.ts b/sdk/nodejs/b2bi/getPartnership.ts new file mode 100644 index 0000000000..ad07ca9fa5 --- /dev/null +++ b/sdk/nodejs/b2bi/getPartnership.ts @@ -0,0 +1,44 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Definition of AWS::B2BI::Partnership Resource Type + */ +export function getPartnership(args: GetPartnershipArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:b2bi:getPartnership", { + "partnershipId": args.partnershipId, + }, opts); +} + +export interface GetPartnershipArgs { + partnershipId: string; +} + +export interface GetPartnershipResult { + readonly capabilities?: string[]; + readonly createdAt?: string; + readonly modifiedAt?: string; + readonly name?: string; + readonly partnershipArn?: string; + readonly partnershipId?: string; + readonly tags?: outputs.b2bi.PartnershipTag[]; + readonly tradingPartnerId?: string; +} +/** + * Definition of AWS::B2BI::Partnership Resource Type + */ +export function getPartnershipOutput(args: GetPartnershipOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getPartnership(a, opts)) +} + +export interface GetPartnershipOutputArgs { + partnershipId: pulumi.Input; +} diff --git a/sdk/nodejs/b2bi/getProfile.ts b/sdk/nodejs/b2bi/getProfile.ts new file mode 100644 index 0000000000..bae2c7083c --- /dev/null +++ b/sdk/nodejs/b2bi/getProfile.ts @@ -0,0 +1,46 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Definition of AWS::B2BI::Profile Resource Type + */ +export function getProfile(args: GetProfileArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:b2bi:getProfile", { + "profileId": args.profileId, + }, opts); +} + +export interface GetProfileArgs { + profileId: string; +} + +export interface GetProfileResult { + readonly businessName?: string; + readonly createdAt?: string; + readonly email?: string; + readonly logGroupName?: string; + readonly modifiedAt?: string; + readonly name?: string; + readonly phone?: string; + readonly profileArn?: string; + readonly profileId?: string; + readonly tags?: outputs.b2bi.ProfileTag[]; +} +/** + * Definition of AWS::B2BI::Profile Resource Type + */ +export function getProfileOutput(args: GetProfileOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getProfile(a, opts)) +} + +export interface GetProfileOutputArgs { + profileId: pulumi.Input; +} diff --git a/sdk/nodejs/b2bi/getTransformer.ts b/sdk/nodejs/b2bi/getTransformer.ts new file mode 100644 index 0000000000..3825f1362a --- /dev/null +++ b/sdk/nodejs/b2bi/getTransformer.ts @@ -0,0 +1,47 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Definition of AWS::B2BI::Transformer Resource Type + */ +export function getTransformer(args: GetTransformerArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:b2bi:getTransformer", { + "transformerId": args.transformerId, + }, opts); +} + +export interface GetTransformerArgs { + transformerId: string; +} + +export interface GetTransformerResult { + readonly createdAt?: string; + readonly ediType?: outputs.b2bi.TransformerEdiTypeProperties; + readonly fileFormat?: enums.b2bi.TransformerFileFormat; + readonly mappingTemplate?: string; + readonly modifiedAt?: string; + readonly name?: string; + readonly sampleDocument?: string; + readonly status?: enums.b2bi.TransformerStatus; + readonly tags?: outputs.b2bi.TransformerTag[]; + readonly transformerArn?: string; + readonly transformerId?: string; +} +/** + * Definition of AWS::B2BI::Transformer Resource Type + */ +export function getTransformerOutput(args: GetTransformerOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getTransformer(a, opts)) +} + +export interface GetTransformerOutputArgs { + transformerId: pulumi.Input; +} diff --git a/sdk/nodejs/b2bi/index.ts b/sdk/nodejs/b2bi/index.ts new file mode 100644 index 0000000000..7c176d0bf9 --- /dev/null +++ b/sdk/nodejs/b2bi/index.ts @@ -0,0 +1,69 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +// Export members: +export { CapabilityArgs } from "./capability"; +export type Capability = import("./capability").Capability; +export const Capability: typeof import("./capability").Capability = null as any; +utilities.lazyLoad(exports, ["Capability"], () => require("./capability")); + +export { GetCapabilityArgs, GetCapabilityResult, GetCapabilityOutputArgs } from "./getCapability"; +export const getCapability: typeof import("./getCapability").getCapability = null as any; +export const getCapabilityOutput: typeof import("./getCapability").getCapabilityOutput = null as any; +utilities.lazyLoad(exports, ["getCapability","getCapabilityOutput"], () => require("./getCapability")); + +export { GetPartnershipArgs, GetPartnershipResult, GetPartnershipOutputArgs } from "./getPartnership"; +export const getPartnership: typeof import("./getPartnership").getPartnership = null as any; +export const getPartnershipOutput: typeof import("./getPartnership").getPartnershipOutput = null as any; +utilities.lazyLoad(exports, ["getPartnership","getPartnershipOutput"], () => require("./getPartnership")); + +export { GetProfileArgs, GetProfileResult, GetProfileOutputArgs } from "./getProfile"; +export const getProfile: typeof import("./getProfile").getProfile = null as any; +export const getProfileOutput: typeof import("./getProfile").getProfileOutput = null as any; +utilities.lazyLoad(exports, ["getProfile","getProfileOutput"], () => require("./getProfile")); + +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 { PartnershipArgs } from "./partnership"; +export type Partnership = import("./partnership").Partnership; +export const Partnership: typeof import("./partnership").Partnership = null as any; +utilities.lazyLoad(exports, ["Partnership"], () => require("./partnership")); + +export { ProfileArgs } from "./profile"; +export type Profile = import("./profile").Profile; +export const Profile: typeof import("./profile").Profile = null as any; +utilities.lazyLoad(exports, ["Profile"], () => require("./profile")); + +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/b2bi"; + +const _module = { + version: utilities.getVersion(), + construct: (name: string, type: string, urn: string): pulumi.Resource => { + switch (type) { + case "aws-native:b2bi:Capability": + return new Capability(name, undefined, { urn }) + case "aws-native:b2bi:Partnership": + return new Partnership(name, undefined, { urn }) + case "aws-native:b2bi:Profile": + return new Profile(name, undefined, { urn }) + case "aws-native:b2bi:Transformer": + return new Transformer(name, undefined, { urn }) + default: + throw new Error(`unknown resource type ${type}`); + } + }, +}; +pulumi.runtime.registerResourceModule("aws-native", "b2bi", _module) diff --git a/sdk/nodejs/b2bi/partnership.ts b/sdk/nodejs/b2bi/partnership.ts new file mode 100644 index 0000000000..735fe1bd0e --- /dev/null +++ b/sdk/nodejs/b2bi/partnership.ts @@ -0,0 +1,110 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Definition of AWS::B2BI::Partnership Resource Type + */ +export class Partnership extends pulumi.CustomResource { + /** + * Get an existing Partnership 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): Partnership { + return new Partnership(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:b2bi:Partnership'; + + /** + * Returns true if the given object is an instance of Partnership. 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 Partnership { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Partnership.__pulumiType; + } + + public readonly capabilities!: pulumi.Output; + public /*out*/ readonly createdAt!: pulumi.Output; + public readonly email!: pulumi.Output; + public /*out*/ readonly modifiedAt!: pulumi.Output; + public readonly name!: pulumi.Output; + public /*out*/ readonly partnershipArn!: pulumi.Output; + public /*out*/ readonly partnershipId!: pulumi.Output; + public readonly phone!: pulumi.Output; + public readonly profileId!: pulumi.Output; + public readonly tags!: pulumi.Output; + public /*out*/ readonly tradingPartnerId!: pulumi.Output; + + /** + * Create a Partnership 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: PartnershipArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.email === undefined) && !opts.urn) { + throw new Error("Missing required property 'email'"); + } + if ((!args || args.profileId === undefined) && !opts.urn) { + throw new Error("Missing required property 'profileId'"); + } + resourceInputs["capabilities"] = args ? args.capabilities : undefined; + resourceInputs["email"] = args ? args.email : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["phone"] = args ? args.phone : undefined; + resourceInputs["profileId"] = args ? args.profileId : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["modifiedAt"] = undefined /*out*/; + resourceInputs["partnershipArn"] = undefined /*out*/; + resourceInputs["partnershipId"] = undefined /*out*/; + resourceInputs["tradingPartnerId"] = undefined /*out*/; + } else { + resourceInputs["capabilities"] = undefined /*out*/; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["email"] = undefined /*out*/; + resourceInputs["modifiedAt"] = undefined /*out*/; + resourceInputs["name"] = undefined /*out*/; + resourceInputs["partnershipArn"] = undefined /*out*/; + resourceInputs["partnershipId"] = undefined /*out*/; + resourceInputs["phone"] = undefined /*out*/; + resourceInputs["profileId"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + resourceInputs["tradingPartnerId"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["email", "phone", "profileId"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(Partnership.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a Partnership resource. + */ +export interface PartnershipArgs { + capabilities?: pulumi.Input[]>; + email: pulumi.Input; + name?: pulumi.Input; + phone?: pulumi.Input; + profileId: pulumi.Input; + tags?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/b2bi/profile.ts b/sdk/nodejs/b2bi/profile.ts new file mode 100644 index 0000000000..4304c3d608 --- /dev/null +++ b/sdk/nodejs/b2bi/profile.ts @@ -0,0 +1,113 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Definition of AWS::B2BI::Profile Resource Type + */ +export class Profile extends pulumi.CustomResource { + /** + * Get an existing Profile 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): Profile { + return new Profile(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:b2bi:Profile'; + + /** + * Returns true if the given object is an instance of Profile. 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 Profile { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Profile.__pulumiType; + } + + public readonly businessName!: pulumi.Output; + public /*out*/ readonly createdAt!: pulumi.Output; + public readonly email!: pulumi.Output; + public /*out*/ readonly logGroupName!: pulumi.Output; + public readonly logging!: pulumi.Output; + public /*out*/ readonly modifiedAt!: pulumi.Output; + public readonly name!: pulumi.Output; + public readonly phone!: pulumi.Output; + public /*out*/ readonly profileArn!: pulumi.Output; + public /*out*/ readonly profileId!: pulumi.Output; + public readonly tags!: pulumi.Output; + + /** + * Create a Profile 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: ProfileArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.businessName === undefined) && !opts.urn) { + throw new Error("Missing required property 'businessName'"); + } + if ((!args || args.logging === undefined) && !opts.urn) { + throw new Error("Missing required property 'logging'"); + } + if ((!args || args.phone === undefined) && !opts.urn) { + throw new Error("Missing required property 'phone'"); + } + resourceInputs["businessName"] = args ? args.businessName : undefined; + resourceInputs["email"] = args ? args.email : undefined; + resourceInputs["logging"] = args ? args.logging : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["phone"] = args ? args.phone : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["logGroupName"] = undefined /*out*/; + resourceInputs["modifiedAt"] = undefined /*out*/; + resourceInputs["profileArn"] = undefined /*out*/; + resourceInputs["profileId"] = undefined /*out*/; + } else { + resourceInputs["businessName"] = undefined /*out*/; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["email"] = undefined /*out*/; + resourceInputs["logGroupName"] = undefined /*out*/; + resourceInputs["logging"] = undefined /*out*/; + resourceInputs["modifiedAt"] = undefined /*out*/; + resourceInputs["name"] = undefined /*out*/; + resourceInputs["phone"] = undefined /*out*/; + resourceInputs["profileArn"] = undefined /*out*/; + resourceInputs["profileId"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["logging"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(Profile.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a Profile resource. + */ +export interface ProfileArgs { + businessName: pulumi.Input; + email?: pulumi.Input; + logging: pulumi.Input; + name?: pulumi.Input; + phone: pulumi.Input; + tags?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/b2bi/transformer.ts b/sdk/nodejs/b2bi/transformer.ts new file mode 100644 index 0000000000..9eea4585d8 --- /dev/null +++ b/sdk/nodejs/b2bi/transformer.ts @@ -0,0 +1,116 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Definition of AWS::B2BI::Transformer Resource Type + */ +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:b2bi: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; + } + + public /*out*/ readonly createdAt!: pulumi.Output; + public readonly ediType!: pulumi.Output; + public readonly fileFormat!: pulumi.Output; + public readonly mappingTemplate!: pulumi.Output; + public readonly modifiedAt!: pulumi.Output; + public readonly name!: pulumi.Output; + public readonly sampleDocument!: pulumi.Output; + public readonly status!: pulumi.Output; + public readonly tags!: pulumi.Output; + public /*out*/ readonly transformerArn!: pulumi.Output; + public /*out*/ readonly transformerId!: 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.ediType === undefined) && !opts.urn) { + throw new Error("Missing required property 'ediType'"); + } + if ((!args || args.fileFormat === undefined) && !opts.urn) { + throw new Error("Missing required property 'fileFormat'"); + } + if ((!args || args.mappingTemplate === undefined) && !opts.urn) { + throw new Error("Missing required property 'mappingTemplate'"); + } + if ((!args || args.status === undefined) && !opts.urn) { + throw new Error("Missing required property 'status'"); + } + resourceInputs["ediType"] = args ? args.ediType : undefined; + resourceInputs["fileFormat"] = args ? args.fileFormat : undefined; + resourceInputs["mappingTemplate"] = args ? args.mappingTemplate : undefined; + resourceInputs["modifiedAt"] = args ? args.modifiedAt : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["sampleDocument"] = args ? args.sampleDocument : undefined; + resourceInputs["status"] = args ? args.status : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["transformerArn"] = undefined /*out*/; + resourceInputs["transformerId"] = undefined /*out*/; + } else { + resourceInputs["createdAt"] = undefined /*out*/; + resourceInputs["ediType"] = undefined /*out*/; + resourceInputs["fileFormat"] = undefined /*out*/; + resourceInputs["mappingTemplate"] = undefined /*out*/; + resourceInputs["modifiedAt"] = undefined /*out*/; + resourceInputs["name"] = undefined /*out*/; + resourceInputs["sampleDocument"] = undefined /*out*/; + resourceInputs["status"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + resourceInputs["transformerArn"] = undefined /*out*/; + resourceInputs["transformerId"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(Transformer.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a Transformer resource. + */ +export interface TransformerArgs { + ediType: pulumi.Input; + fileFormat: pulumi.Input; + mappingTemplate: pulumi.Input; + modifiedAt?: pulumi.Input; + name?: pulumi.Input; + sampleDocument?: pulumi.Input; + status: pulumi.Input; + tags?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/batch/getJobDefinition.ts b/sdk/nodejs/batch/getJobDefinition.ts index 96b914880d..4dc594b13c 100644 --- a/sdk/nodejs/batch/getJobDefinition.ts +++ b/sdk/nodejs/batch/getJobDefinition.ts @@ -2,9 +2,6 @@ // *** 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"; /** @@ -14,26 +11,23 @@ export function getJobDefinition(args: GetJobDefinitionArgs, opts?: pulumi.Invok opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:batch:getJobDefinition", { - "id": args.id, + "jobDefinitionArn": args.jobDefinitionArn, }, opts); } export interface GetJobDefinitionArgs { - id: string; + jobDefinitionArn: string; } export interface GetJobDefinitionResult { - readonly containerProperties?: outputs.batch.JobDefinitionContainerProperties; - readonly eksProperties?: outputs.batch.JobDefinitionEksProperties; - readonly id?: string; - readonly nodeProperties?: outputs.batch.JobDefinitionNodeProperties; - readonly parameters?: any; - readonly platformCapabilities?: string[]; - readonly propagateTags?: boolean; - readonly retryStrategy?: outputs.batch.JobDefinitionRetryStrategy; - readonly schedulingPriority?: number; - readonly timeout?: outputs.batch.JobDefinitionTimeout; - readonly type?: string; + readonly containerOrchestrationType?: string; + readonly jobDefinitionArn?: string; + readonly revision?: number; + readonly status?: string; + /** + * A key-value pair to associate with a resource. + */ + readonly tags?: any; } /** * Resource Type definition for AWS::Batch::JobDefinition @@ -43,5 +37,5 @@ export function getJobDefinitionOutput(args: GetJobDefinitionOutputArgs, opts?: } export interface GetJobDefinitionOutputArgs { - id: pulumi.Input; + jobDefinitionArn: pulumi.Input; } diff --git a/sdk/nodejs/batch/jobDefinition.ts b/sdk/nodejs/batch/jobDefinition.ts index db2af38779..111860035e 100644 --- a/sdk/nodejs/batch/jobDefinition.ts +++ b/sdk/nodejs/batch/jobDefinition.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::Batch::JobDefinition - * - * @deprecated JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class JobDefinition extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class JobDefinition extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): JobDefinition { - pulumi.log.warn("JobDefinition is deprecated: JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new JobDefinition(name, undefined as any, { ...opts, id: id }); } @@ -40,17 +37,24 @@ export class JobDefinition extends pulumi.CustomResource { return obj['__pulumiType'] === JobDefinition.__pulumiType; } + public /*out*/ readonly containerOrchestrationType!: pulumi.Output; public readonly containerProperties!: pulumi.Output; public readonly eksProperties!: pulumi.Output; + public /*out*/ readonly jobDefinitionArn!: pulumi.Output; public readonly jobDefinitionName!: pulumi.Output; public readonly nodeProperties!: pulumi.Output; public readonly parameters!: pulumi.Output; public readonly platformCapabilities!: pulumi.Output; public readonly propagateTags!: pulumi.Output; public readonly retryStrategy!: pulumi.Output; + public /*out*/ readonly revision!: pulumi.Output; public readonly schedulingPriority!: pulumi.Output; + public /*out*/ readonly status!: pulumi.Output; + /** + * A key-value pair to associate with a resource. + */ public readonly tags!: pulumi.Output; - public readonly timeout!: pulumi.Output; + public readonly timeout!: pulumi.Output; public readonly type!: pulumi.Output; /** @@ -60,9 +64,7 @@ export class JobDefinition extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args: JobDefinitionArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("JobDefinition is deprecated: JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -81,22 +83,30 @@ 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["containerOrchestrationType"] = undefined /*out*/; + resourceInputs["jobDefinitionArn"] = undefined /*out*/; + resourceInputs["revision"] = undefined /*out*/; + resourceInputs["status"] = undefined /*out*/; } else { + resourceInputs["containerOrchestrationType"] = undefined /*out*/; resourceInputs["containerProperties"] = undefined /*out*/; resourceInputs["eksProperties"] = undefined /*out*/; + resourceInputs["jobDefinitionArn"] = undefined /*out*/; resourceInputs["jobDefinitionName"] = undefined /*out*/; resourceInputs["nodeProperties"] = undefined /*out*/; resourceInputs["parameters"] = undefined /*out*/; resourceInputs["platformCapabilities"] = undefined /*out*/; resourceInputs["propagateTags"] = undefined /*out*/; resourceInputs["retryStrategy"] = undefined /*out*/; + resourceInputs["revision"] = undefined /*out*/; resourceInputs["schedulingPriority"] = undefined /*out*/; + resourceInputs["status"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; resourceInputs["timeout"] = undefined /*out*/; resourceInputs["type"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["jobDefinitionName", "tags"] }; + const replaceOnChanges = { replaceOnChanges: ["containerProperties", "eksProperties", "jobDefinitionName", "nodeProperties", "parameters", "platformCapabilities[*]", "propagateTags", "retryStrategy", "schedulingPriority", "timeout", "type"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(JobDefinition.__pulumiType, name, resourceInputs, opts); } @@ -115,7 +125,10 @@ export interface JobDefinitionArgs { propagateTags?: pulumi.Input; retryStrategy?: pulumi.Input; schedulingPriority?: pulumi.Input; + /** + * A key-value pair to associate with a resource. + */ tags?: any; - timeout?: pulumi.Input; + timeout?: pulumi.Input; type: pulumi.Input; } diff --git a/sdk/nodejs/billingconductor/customLineItem.ts b/sdk/nodejs/billingconductor/customLineItem.ts index c6aa315554..69646816d0 100644 --- a/sdk/nodejs/billingconductor/customLineItem.ts +++ b/sdk/nodejs/billingconductor/customLineItem.ts @@ -40,6 +40,10 @@ export class CustomLineItem extends pulumi.CustomResource { return obj['__pulumiType'] === CustomLineItem.__pulumiType; } + /** + * The account which this custom line item will be charged to + */ + public readonly accountId!: pulumi.Output; /** * ARN */ @@ -84,6 +88,7 @@ export class CustomLineItem extends pulumi.CustomResource { if ((!args || args.billingGroupArn === undefined) && !opts.urn) { throw new Error("Missing required property 'billingGroupArn'"); } + resourceInputs["accountId"] = args ? args.accountId : undefined; resourceInputs["billingGroupArn"] = args ? args.billingGroupArn : undefined; resourceInputs["billingPeriodRange"] = args ? args.billingPeriodRange : undefined; resourceInputs["customLineItemChargeDetails"] = args ? args.customLineItemChargeDetails : undefined; @@ -97,6 +102,7 @@ export class CustomLineItem extends pulumi.CustomResource { resourceInputs["lastModifiedTime"] = undefined /*out*/; resourceInputs["productCode"] = undefined /*out*/; } else { + resourceInputs["accountId"] = undefined /*out*/; resourceInputs["arn"] = undefined /*out*/; resourceInputs["associationSize"] = undefined /*out*/; resourceInputs["billingGroupArn"] = undefined /*out*/; @@ -111,7 +117,7 @@ export class CustomLineItem extends pulumi.CustomResource { resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["billingGroupArn", "billingPeriodRange.exclusiveEndBillingPeriod", "billingPeriodRange.inclusiveStartBillingPeriod", "customLineItemChargeDetails.type"] }; + const replaceOnChanges = { replaceOnChanges: ["accountId", "billingGroupArn", "billingPeriodRange.exclusiveEndBillingPeriod", "billingPeriodRange.inclusiveStartBillingPeriod", "customLineItemChargeDetails.type"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(CustomLineItem.__pulumiType, name, resourceInputs, opts); } @@ -121,6 +127,10 @@ export class CustomLineItem extends pulumi.CustomResource { * The set of arguments for constructing a CustomLineItem resource. */ export interface CustomLineItemArgs { + /** + * The account which this custom line item will be charged to + */ + accountId?: pulumi.Input; /** * Billing Group ARN */ diff --git a/sdk/nodejs/ce/anomalyMonitor.ts b/sdk/nodejs/ce/anomalyMonitor.ts index 8dcd99228b..0d0058615b 100644 --- a/sdk/nodejs/ce/anomalyMonitor.ts +++ b/sdk/nodejs/ce/anomalyMonitor.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * 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. - * - * @deprecated AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class AnomalyMonitor extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class AnomalyMonitor extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): AnomalyMonitor { - pulumi.log.warn("AnomalyMonitor is deprecated: AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new AnomalyMonitor(name, undefined as any, { ...opts, id: id }); } @@ -79,9 +76,7 @@ export class AnomalyMonitor extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args: AnomalyMonitorArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("AnomalyMonitor is deprecated: AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { diff --git a/sdk/nodejs/ce/anomalySubscription.ts b/sdk/nodejs/ce/anomalySubscription.ts index b0bef4760b..7f7fe63490 100644 --- a/sdk/nodejs/ce/anomalySubscription.ts +++ b/sdk/nodejs/ce/anomalySubscription.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * AWS Cost Anomaly Detection leverages advanced Machine Learning technologies to identify anomalous spend and root causes, so you can quickly take action. Create subscription to be notified - * - * @deprecated AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class AnomalySubscription extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class AnomalySubscription extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): AnomalySubscription { - pulumi.log.warn("AnomalySubscription is deprecated: AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new AnomalySubscription(name, undefined as any, { ...opts, id: id }); } @@ -81,9 +78,7 @@ export class AnomalySubscription extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args: AnomalySubscriptionArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("AnomalySubscription is deprecated: AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { diff --git a/sdk/nodejs/cleanrooms/collaboration.ts b/sdk/nodejs/cleanrooms/collaboration.ts index af7222bd31..da104c8dd6 100644 --- a/sdk/nodejs/cleanrooms/collaboration.ts +++ b/sdk/nodejs/cleanrooms/collaboration.ts @@ -41,6 +41,7 @@ export class Collaboration extends pulumi.CustomResource { public /*out*/ readonly collaborationIdentifier!: pulumi.Output; public readonly creatorDisplayName!: pulumi.Output; public readonly creatorMemberAbilities!: pulumi.Output; + public readonly creatorPaymentConfiguration!: pulumi.Output; public readonly dataEncryptionMetadata!: pulumi.Output; public readonly description!: pulumi.Output; public readonly members!: pulumi.Output; @@ -79,6 +80,7 @@ export class Collaboration extends pulumi.CustomResource { } resourceInputs["creatorDisplayName"] = args ? args.creatorDisplayName : undefined; resourceInputs["creatorMemberAbilities"] = args ? args.creatorMemberAbilities : undefined; + resourceInputs["creatorPaymentConfiguration"] = args ? args.creatorPaymentConfiguration : undefined; resourceInputs["dataEncryptionMetadata"] = args ? args.dataEncryptionMetadata : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["members"] = args ? args.members : undefined; @@ -92,6 +94,7 @@ export class Collaboration extends pulumi.CustomResource { resourceInputs["collaborationIdentifier"] = undefined /*out*/; resourceInputs["creatorDisplayName"] = undefined /*out*/; resourceInputs["creatorMemberAbilities"] = undefined /*out*/; + resourceInputs["creatorPaymentConfiguration"] = undefined /*out*/; resourceInputs["dataEncryptionMetadata"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; resourceInputs["members"] = undefined /*out*/; @@ -100,7 +103,7 @@ export class Collaboration extends pulumi.CustomResource { resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["creatorDisplayName", "creatorMemberAbilities[*]", "dataEncryptionMetadata", "members[*]", "queryLogStatus"] }; + const replaceOnChanges = { replaceOnChanges: ["creatorDisplayName", "creatorMemberAbilities[*]", "creatorPaymentConfiguration", "dataEncryptionMetadata", "members[*]", "queryLogStatus"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Collaboration.__pulumiType, name, resourceInputs, opts); } @@ -112,6 +115,7 @@ export class Collaboration extends pulumi.CustomResource { export interface CollaborationArgs { creatorDisplayName: pulumi.Input; creatorMemberAbilities: pulumi.Input[]>; + creatorPaymentConfiguration?: pulumi.Input; dataEncryptionMetadata?: pulumi.Input; description: pulumi.Input; members: pulumi.Input[]>; diff --git a/sdk/nodejs/cleanrooms/getMembership.ts b/sdk/nodejs/cleanrooms/getMembership.ts index 3f668562b7..dde006dbe9 100644 --- a/sdk/nodejs/cleanrooms/getMembership.ts +++ b/sdk/nodejs/cleanrooms/getMembership.ts @@ -28,6 +28,7 @@ export interface GetMembershipResult { readonly collaborationCreatorAccountId?: string; readonly defaultResultConfiguration?: outputs.cleanrooms.MembershipProtectedQueryResultConfiguration; readonly membershipIdentifier?: string; + readonly paymentConfiguration?: outputs.cleanrooms.MembershipPaymentConfiguration; readonly queryLogStatus?: enums.cleanrooms.MembershipQueryLogStatus; /** * An arbitrary set of tags (key-value pairs) for this cleanrooms membership. diff --git a/sdk/nodejs/cleanrooms/membership.ts b/sdk/nodejs/cleanrooms/membership.ts index 9949257644..24a9f895c1 100644 --- a/sdk/nodejs/cleanrooms/membership.ts +++ b/sdk/nodejs/cleanrooms/membership.ts @@ -43,6 +43,7 @@ export class Membership extends pulumi.CustomResource { public readonly collaborationIdentifier!: pulumi.Output; public readonly defaultResultConfiguration!: pulumi.Output; public /*out*/ readonly membershipIdentifier!: pulumi.Output; + public readonly paymentConfiguration!: pulumi.Output; public readonly queryLogStatus!: pulumi.Output; /** * An arbitrary set of tags (key-value pairs) for this cleanrooms membership. @@ -68,6 +69,7 @@ export class Membership extends pulumi.CustomResource { } resourceInputs["collaborationIdentifier"] = args ? args.collaborationIdentifier : undefined; resourceInputs["defaultResultConfiguration"] = args ? args.defaultResultConfiguration : undefined; + resourceInputs["paymentConfiguration"] = args ? args.paymentConfiguration : undefined; resourceInputs["queryLogStatus"] = args ? args.queryLogStatus : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["arn"] = undefined /*out*/; @@ -81,6 +83,7 @@ export class Membership extends pulumi.CustomResource { resourceInputs["collaborationIdentifier"] = undefined /*out*/; resourceInputs["defaultResultConfiguration"] = undefined /*out*/; resourceInputs["membershipIdentifier"] = undefined /*out*/; + resourceInputs["paymentConfiguration"] = undefined /*out*/; resourceInputs["queryLogStatus"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; } @@ -97,6 +100,7 @@ export class Membership extends pulumi.CustomResource { export interface MembershipArgs { collaborationIdentifier: pulumi.Input; defaultResultConfiguration?: pulumi.Input; + paymentConfiguration?: pulumi.Input; queryLogStatus: pulumi.Input; /** * An arbitrary set of tags (key-value pairs) for this cleanrooms membership. diff --git a/sdk/nodejs/cloud9/environmentEc2.ts b/sdk/nodejs/cloud9/environmentEc2.ts index 0e4fcdd458..2d38b5aea6 100644 --- a/sdk/nodejs/cloud9/environmentEc2.ts +++ b/sdk/nodejs/cloud9/environmentEc2.ts @@ -44,7 +44,7 @@ export class EnvironmentEc2 extends pulumi.CustomResource { public readonly automaticStopTimeMinutes!: pulumi.Output; public readonly connectionType!: pulumi.Output; public readonly description!: pulumi.Output; - public readonly imageId!: pulumi.Output; + public readonly imageId!: pulumi.Output; public readonly instanceType!: pulumi.Output; public readonly name!: pulumi.Output; public readonly ownerArn!: pulumi.Output; @@ -65,6 +65,9 @@ export class EnvironmentEc2 extends pulumi.CustomResource { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { + if ((!args || args.imageId === undefined) && !opts.urn) { + throw new Error("Missing required property 'imageId'"); + } if ((!args || args.instanceType === undefined) && !opts.urn) { throw new Error("Missing required property 'instanceType'"); } @@ -106,7 +109,7 @@ export interface EnvironmentEc2Args { automaticStopTimeMinutes?: pulumi.Input; connectionType?: pulumi.Input; description?: pulumi.Input; - imageId?: pulumi.Input; + imageId: pulumi.Input; instanceType: pulumi.Input; name?: pulumi.Input; ownerArn?: pulumi.Input; diff --git a/sdk/nodejs/cloudfront/getKeyValueStore.ts b/sdk/nodejs/cloudfront/getKeyValueStore.ts new file mode 100644 index 0000000000..f0fa6e2f9e --- /dev/null +++ b/sdk/nodejs/cloudfront/getKeyValueStore.ts @@ -0,0 +1,37 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 Type definition for AWS::CloudFront::KeyValueStore + */ +export function getKeyValueStore(args: GetKeyValueStoreArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:cloudfront:getKeyValueStore", { + "name": args.name, + }, opts); +} + +export interface GetKeyValueStoreArgs { + name: string; +} + +export interface GetKeyValueStoreResult { + readonly arn?: string; + readonly comment?: string; + readonly id?: string; + readonly status?: string; +} +/** + * Resource Type definition for AWS::CloudFront::KeyValueStore + */ +export function getKeyValueStoreOutput(args: GetKeyValueStoreOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getKeyValueStore(a, opts)) +} + +export interface GetKeyValueStoreOutputArgs { + name: pulumi.Input; +} diff --git a/sdk/nodejs/cloudfront/index.ts b/sdk/nodejs/cloudfront/index.ts index 6ded774675..da2f589a1f 100644 --- a/sdk/nodejs/cloudfront/index.ts +++ b/sdk/nodejs/cloudfront/index.ts @@ -60,6 +60,11 @@ export const getKeyGroup: typeof import("./getKeyGroup").getKeyGroup = null as a export const getKeyGroupOutput: typeof import("./getKeyGroup").getKeyGroupOutput = null as any; utilities.lazyLoad(exports, ["getKeyGroup","getKeyGroupOutput"], () => require("./getKeyGroup")); +export { GetKeyValueStoreArgs, GetKeyValueStoreResult, GetKeyValueStoreOutputArgs } from "./getKeyValueStore"; +export const getKeyValueStore: typeof import("./getKeyValueStore").getKeyValueStore = null as any; +export const getKeyValueStoreOutput: typeof import("./getKeyValueStore").getKeyValueStoreOutput = null as any; +utilities.lazyLoad(exports, ["getKeyValueStore","getKeyValueStoreOutput"], () => require("./getKeyValueStore")); + export { GetMonitoringSubscriptionArgs, GetMonitoringSubscriptionResult, GetMonitoringSubscriptionOutputArgs } from "./getMonitoringSubscription"; export const getMonitoringSubscription: typeof import("./getMonitoringSubscription").getMonitoringSubscription = null as any; export const getMonitoringSubscriptionOutput: typeof import("./getMonitoringSubscription").getMonitoringSubscriptionOutput = null as any; @@ -100,6 +105,11 @@ export type KeyGroup = import("./keyGroup").KeyGroup; export const KeyGroup: typeof import("./keyGroup").KeyGroup = null as any; utilities.lazyLoad(exports, ["KeyGroup"], () => require("./keyGroup")); +export { KeyValueStoreArgs } from "./keyValueStore"; +export type KeyValueStore = import("./keyValueStore").KeyValueStore; +export const KeyValueStore: typeof import("./keyValueStore").KeyValueStore = null as any; +utilities.lazyLoad(exports, ["KeyValueStore"], () => require("./keyValueStore")); + export { MonitoringSubscriptionArgs } from "./monitoringSubscription"; export type MonitoringSubscription = import("./monitoringSubscription").MonitoringSubscription; export const MonitoringSubscription: typeof import("./monitoringSubscription").MonitoringSubscription = null as any; @@ -155,6 +165,8 @@ const _module = { return new Function(name, undefined, { urn }) case "aws-native:cloudfront:KeyGroup": return new KeyGroup(name, undefined, { urn }) + case "aws-native:cloudfront:KeyValueStore": + return new KeyValueStore(name, undefined, { urn }) case "aws-native:cloudfront:MonitoringSubscription": return new MonitoringSubscription(name, undefined, { urn }) case "aws-native:cloudfront:OriginAccessControl": diff --git a/sdk/nodejs/cloudfront/keyValueStore.ts b/sdk/nodejs/cloudfront/keyValueStore.ts new file mode 100644 index 0000000000..9cbaf43b85 --- /dev/null +++ b/sdk/nodejs/cloudfront/keyValueStore.ts @@ -0,0 +1,88 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 Type definition for AWS::CloudFront::KeyValueStore + * + * @deprecated KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. + */ +export class KeyValueStore extends pulumi.CustomResource { + /** + * Get an existing KeyValueStore 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): KeyValueStore { + pulumi.log.warn("KeyValueStore is deprecated: KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") + return new KeyValueStore(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:cloudfront:KeyValueStore'; + + /** + * Returns true if the given object is an instance of KeyValueStore. 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 KeyValueStore { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === KeyValueStore.__pulumiType; + } + + public /*out*/ readonly arn!: pulumi.Output; + public readonly comment!: pulumi.Output; + public readonly importSource!: pulumi.Output; + public readonly name!: pulumi.Output; + public /*out*/ readonly status!: pulumi.Output; + + /** + * Create a KeyValueStore 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. + */ + /** @deprecated KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ + constructor(name: string, args?: KeyValueStoreArgs, opts?: pulumi.CustomResourceOptions) { + pulumi.log.warn("KeyValueStore is deprecated: KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + resourceInputs["comment"] = args ? args.comment : undefined; + resourceInputs["importSource"] = args ? args.importSource : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["status"] = undefined /*out*/; + } else { + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["comment"] = undefined /*out*/; + resourceInputs["importSource"] = undefined /*out*/; + resourceInputs["name"] = undefined /*out*/; + resourceInputs["status"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["name"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(KeyValueStore.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a KeyValueStore resource. + */ +export interface KeyValueStoreArgs { + comment?: pulumi.Input; + importSource?: pulumi.Input; + name?: pulumi.Input; +} diff --git a/sdk/nodejs/cloudtrail/eventDataStore.ts b/sdk/nodejs/cloudtrail/eventDataStore.ts index c9087b2c05..2347e327fc 100644 --- a/sdk/nodejs/cloudtrail/eventDataStore.ts +++ b/sdk/nodejs/cloudtrail/eventDataStore.ts @@ -53,6 +53,14 @@ export class EventDataStore extends pulumi.CustomResource { * The ARN of the event data store. */ public /*out*/ readonly eventDataStoreArn!: pulumi.Output; + /** + * Indicates whether federation is enabled on an event data store. + */ + public readonly federationEnabled!: pulumi.Output; + /** + * The ARN of the role used for event data store federation. + */ + public readonly federationRoleArn!: pulumi.Output; /** * Indicates whether the event data store is ingesting events. */ @@ -112,6 +120,8 @@ export class EventDataStore extends pulumi.CustomResource { if (!opts.id) { resourceInputs["advancedEventSelectors"] = args ? args.advancedEventSelectors : undefined; resourceInputs["billingMode"] = args ? args.billingMode : undefined; + resourceInputs["federationEnabled"] = args ? args.federationEnabled : undefined; + resourceInputs["federationRoleArn"] = args ? args.federationRoleArn : undefined; resourceInputs["ingestionEnabled"] = args ? args.ingestionEnabled : undefined; resourceInputs["insightSelectors"] = args ? args.insightSelectors : undefined; resourceInputs["insightsDestination"] = args ? args.insightsDestination : undefined; @@ -131,6 +141,8 @@ export class EventDataStore extends pulumi.CustomResource { resourceInputs["billingMode"] = undefined /*out*/; resourceInputs["createdTimestamp"] = undefined /*out*/; resourceInputs["eventDataStoreArn"] = undefined /*out*/; + resourceInputs["federationEnabled"] = undefined /*out*/; + resourceInputs["federationRoleArn"] = undefined /*out*/; resourceInputs["ingestionEnabled"] = undefined /*out*/; resourceInputs["insightSelectors"] = undefined /*out*/; resourceInputs["insightsDestination"] = undefined /*out*/; @@ -161,6 +173,14 @@ export interface EventDataStoreArgs { * The mode that the event data store will use to charge for event storage. */ billingMode?: pulumi.Input; + /** + * Indicates whether federation is enabled on an event data store. + */ + federationEnabled?: pulumi.Input; + /** + * The ARN of the role used for event data store federation. + */ + federationRoleArn?: pulumi.Input; /** * Indicates whether the event data store is ingesting events. */ diff --git a/sdk/nodejs/cloudtrail/getEventDataStore.ts b/sdk/nodejs/cloudtrail/getEventDataStore.ts index 59a6030541..66816b2c49 100644 --- a/sdk/nodejs/cloudtrail/getEventDataStore.ts +++ b/sdk/nodejs/cloudtrail/getEventDataStore.ts @@ -42,6 +42,14 @@ export interface GetEventDataStoreResult { * The ARN of the event data store. */ readonly eventDataStoreArn?: string; + /** + * Indicates whether federation is enabled on an event data store. + */ + readonly federationEnabled?: boolean; + /** + * The ARN of the role used for event data store federation. + */ + readonly federationRoleArn?: string; /** * Indicates whether the event data store is ingesting events. */ diff --git a/sdk/nodejs/codedeploy/deploymentConfig.ts b/sdk/nodejs/codedeploy/deploymentConfig.ts index 45e31662ca..3407a923b0 100644 --- a/sdk/nodejs/codedeploy/deploymentConfig.ts +++ b/sdk/nodejs/codedeploy/deploymentConfig.ts @@ -53,6 +53,10 @@ export class DeploymentConfig extends pulumi.CustomResource { * The configuration that specifies how the deployment traffic is routed. */ public readonly trafficRoutingConfig!: pulumi.Output; + /** + * The zonal deployment config that specifies how the zonal deployment behaves + */ + public readonly zonalConfig!: pulumi.Output; /** * Create a DeploymentConfig resource with the given unique name, arguments, and options. @@ -69,14 +73,16 @@ export class DeploymentConfig extends pulumi.CustomResource { resourceInputs["deploymentConfigName"] = args ? args.deploymentConfigName : undefined; resourceInputs["minimumHealthyHosts"] = args ? args.minimumHealthyHosts : undefined; resourceInputs["trafficRoutingConfig"] = args ? args.trafficRoutingConfig : undefined; + resourceInputs["zonalConfig"] = args ? args.zonalConfig : undefined; } else { resourceInputs["computePlatform"] = undefined /*out*/; resourceInputs["deploymentConfigName"] = undefined /*out*/; resourceInputs["minimumHealthyHosts"] = undefined /*out*/; resourceInputs["trafficRoutingConfig"] = undefined /*out*/; + resourceInputs["zonalConfig"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["computePlatform", "deploymentConfigName", "minimumHealthyHosts", "trafficRoutingConfig"] }; + const replaceOnChanges = { replaceOnChanges: ["computePlatform", "deploymentConfigName", "minimumHealthyHosts", "trafficRoutingConfig", "zonalConfig"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(DeploymentConfig.__pulumiType, name, resourceInputs, opts); } @@ -102,4 +108,8 @@ export interface DeploymentConfigArgs { * The configuration that specifies how the deployment traffic is routed. */ trafficRoutingConfig?: pulumi.Input; + /** + * The zonal deployment config that specifies how the zonal deployment behaves + */ + zonalConfig?: pulumi.Input; } diff --git a/sdk/nodejs/codedeploy/deploymentGroup.ts b/sdk/nodejs/codedeploy/deploymentGroup.ts index 7787bc7fbb..058f6d36d4 100644 --- a/sdk/nodejs/codedeploy/deploymentGroup.ts +++ b/sdk/nodejs/codedeploy/deploymentGroup.ts @@ -58,6 +58,7 @@ export class DeploymentGroup extends pulumi.CustomResource { public readonly outdatedInstancesStrategy!: pulumi.Output; public readonly serviceRoleArn!: pulumi.Output; public readonly tags!: pulumi.Output; + public readonly terminationHookEnabled!: pulumi.Output; public readonly triggerConfigurations!: pulumi.Output; /** @@ -97,6 +98,7 @@ export class DeploymentGroup extends pulumi.CustomResource { resourceInputs["outdatedInstancesStrategy"] = args ? args.outdatedInstancesStrategy : undefined; resourceInputs["serviceRoleArn"] = args ? args.serviceRoleArn : undefined; resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["terminationHookEnabled"] = args ? args.terminationHookEnabled : undefined; resourceInputs["triggerConfigurations"] = args ? args.triggerConfigurations : undefined; } else { resourceInputs["alarmConfiguration"] = undefined /*out*/; @@ -117,6 +119,7 @@ export class DeploymentGroup extends pulumi.CustomResource { resourceInputs["outdatedInstancesStrategy"] = undefined /*out*/; resourceInputs["serviceRoleArn"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; + resourceInputs["terminationHookEnabled"] = undefined /*out*/; resourceInputs["triggerConfigurations"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -148,5 +151,6 @@ export interface DeploymentGroupArgs { outdatedInstancesStrategy?: pulumi.Input; serviceRoleArn: pulumi.Input; tags?: pulumi.Input[]>; + terminationHookEnabled?: pulumi.Input; triggerConfigurations?: pulumi.Input[]>; } diff --git a/sdk/nodejs/codedeploy/getDeploymentGroup.ts b/sdk/nodejs/codedeploy/getDeploymentGroup.ts index 2bd5ea8773..4817a87325 100644 --- a/sdk/nodejs/codedeploy/getDeploymentGroup.ts +++ b/sdk/nodejs/codedeploy/getDeploymentGroup.ts @@ -40,6 +40,7 @@ export interface GetDeploymentGroupResult { readonly outdatedInstancesStrategy?: string; readonly serviceRoleArn?: string; readonly tags?: outputs.codedeploy.DeploymentGroupTag[]; + readonly terminationHookEnabled?: boolean; readonly triggerConfigurations?: outputs.codedeploy.DeploymentGroupTriggerConfig[]; } /** diff --git a/sdk/nodejs/codepipeline/getPipeline.ts b/sdk/nodejs/codepipeline/getPipeline.ts index e6cdb2b535..7d113f39b3 100644 --- a/sdk/nodejs/codepipeline/getPipeline.ts +++ b/sdk/nodejs/codepipeline/getPipeline.ts @@ -27,10 +27,13 @@ export interface GetPipelineResult { readonly artifactStores?: outputs.codepipeline.PipelineArtifactStoreMap[]; readonly disableInboundStageTransitions?: outputs.codepipeline.PipelineStageTransition[]; readonly id?: string; + readonly pipelineType?: string; readonly restartExecutionOnUpdate?: boolean; readonly roleArn?: string; readonly stages?: outputs.codepipeline.PipelineStageDeclaration[]; readonly tags?: outputs.codepipeline.PipelineTag[]; + readonly triggers?: outputs.codepipeline.PipelineTriggerDeclaration[]; + readonly variables?: outputs.codepipeline.PipelineVariableDeclaration[]; readonly version?: string; } /** diff --git a/sdk/nodejs/codepipeline/pipeline.ts b/sdk/nodejs/codepipeline/pipeline.ts index 67039fe0e0..e9390f9302 100644 --- a/sdk/nodejs/codepipeline/pipeline.ts +++ b/sdk/nodejs/codepipeline/pipeline.ts @@ -44,10 +44,13 @@ export class Pipeline extends pulumi.CustomResource { public readonly artifactStores!: pulumi.Output; public readonly disableInboundStageTransitions!: pulumi.Output; public readonly name!: pulumi.Output; + public readonly pipelineType!: pulumi.Output; public readonly restartExecutionOnUpdate!: pulumi.Output; public readonly roleArn!: pulumi.Output; public readonly stages!: pulumi.Output; public readonly tags!: pulumi.Output; + public readonly triggers!: pulumi.Output; + public readonly variables!: pulumi.Output; public /*out*/ readonly version!: pulumi.Output; /** @@ -73,20 +76,26 @@ export class Pipeline extends pulumi.CustomResource { resourceInputs["artifactStores"] = args ? args.artifactStores : undefined; resourceInputs["disableInboundStageTransitions"] = args ? args.disableInboundStageTransitions : undefined; resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["pipelineType"] = args ? args.pipelineType : undefined; resourceInputs["restartExecutionOnUpdate"] = args ? args.restartExecutionOnUpdate : undefined; resourceInputs["roleArn"] = args ? args.roleArn : undefined; resourceInputs["stages"] = args ? args.stages : undefined; resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["triggers"] = args ? args.triggers : undefined; + resourceInputs["variables"] = args ? args.variables : undefined; resourceInputs["version"] = undefined /*out*/; } else { resourceInputs["artifactStore"] = undefined /*out*/; resourceInputs["artifactStores"] = undefined /*out*/; resourceInputs["disableInboundStageTransitions"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; + resourceInputs["pipelineType"] = undefined /*out*/; resourceInputs["restartExecutionOnUpdate"] = undefined /*out*/; resourceInputs["roleArn"] = undefined /*out*/; resourceInputs["stages"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; + resourceInputs["triggers"] = undefined /*out*/; + resourceInputs["variables"] = undefined /*out*/; resourceInputs["version"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -104,8 +113,11 @@ export interface PipelineArgs { artifactStores?: pulumi.Input[]>; disableInboundStageTransitions?: pulumi.Input[]>; name?: pulumi.Input; + pipelineType?: pulumi.Input; restartExecutionOnUpdate?: pulumi.Input; roleArn: pulumi.Input; stages: pulumi.Input[]>; tags?: pulumi.Input[]>; + triggers?: pulumi.Input[]>; + variables?: pulumi.Input[]>; } diff --git a/sdk/nodejs/configuration/configurationRecorder.ts b/sdk/nodejs/configuration/configurationRecorder.ts index 7788e5aa6f..cf967bc149 100644 --- a/sdk/nodejs/configuration/configurationRecorder.ts +++ b/sdk/nodejs/configuration/configurationRecorder.ts @@ -42,6 +42,7 @@ export class ConfigurationRecorder extends pulumi.CustomResource { public readonly name!: pulumi.Output; public readonly recordingGroup!: pulumi.Output; + public readonly recordingMode!: pulumi.Output; public readonly roleArn!: pulumi.Output; /** @@ -62,10 +63,12 @@ export class ConfigurationRecorder extends pulumi.CustomResource { } resourceInputs["name"] = args ? args.name : undefined; resourceInputs["recordingGroup"] = args ? args.recordingGroup : undefined; + resourceInputs["recordingMode"] = args ? args.recordingMode : undefined; resourceInputs["roleArn"] = args ? args.roleArn : undefined; } else { resourceInputs["name"] = undefined /*out*/; resourceInputs["recordingGroup"] = undefined /*out*/; + resourceInputs["recordingMode"] = undefined /*out*/; resourceInputs["roleArn"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -81,5 +84,6 @@ export class ConfigurationRecorder extends pulumi.CustomResource { export interface ConfigurationRecorderArgs { name?: pulumi.Input; recordingGroup?: pulumi.Input; + recordingMode?: pulumi.Input; roleArn: pulumi.Input; } diff --git a/sdk/nodejs/configuration/getConfigurationRecorder.ts b/sdk/nodejs/configuration/getConfigurationRecorder.ts index e79cfc8a2f..72c9528fa3 100644 --- a/sdk/nodejs/configuration/getConfigurationRecorder.ts +++ b/sdk/nodejs/configuration/getConfigurationRecorder.ts @@ -25,6 +25,7 @@ export interface GetConfigurationRecorderArgs { export interface GetConfigurationRecorderResult { readonly id?: string; readonly recordingGroup?: outputs.configuration.ConfigurationRecorderRecordingGroup; + readonly recordingMode?: outputs.configuration.ConfigurationRecorderRecordingMode; readonly roleArn?: string; } /** diff --git a/sdk/nodejs/connect/getInstance.ts b/sdk/nodejs/connect/getInstance.ts index 237f97de72..324f20befd 100644 --- a/sdk/nodejs/connect/getInstance.ts +++ b/sdk/nodejs/connect/getInstance.ts @@ -50,6 +50,10 @@ export interface GetInstanceResult { * Service linked role created as part of instance creation. */ readonly serviceRole?: string; + /** + * An array of key-value pairs to apply to this resource. + */ + readonly tags?: outputs.connect.InstanceTag[]; } /** * Resource Type definition for AWS::Connect::Instance diff --git a/sdk/nodejs/connect/instance.ts b/sdk/nodejs/connect/instance.ts index fdafa97b46..a0f461fe77 100644 --- a/sdk/nodejs/connect/instance.ts +++ b/sdk/nodejs/connect/instance.ts @@ -69,6 +69,10 @@ export class Instance extends pulumi.CustomResource { * Service linked role created as part of instance creation. */ public /*out*/ readonly serviceRole!: pulumi.Output; + /** + * An array of key-value pairs to apply to this resource. + */ + public readonly tags!: pulumi.Output; /** * Create a Instance resource with the given unique name, arguments, and options. @@ -91,6 +95,7 @@ export class Instance extends pulumi.CustomResource { resourceInputs["directoryId"] = args ? args.directoryId : undefined; resourceInputs["identityManagementType"] = args ? args.identityManagementType : undefined; resourceInputs["instanceAlias"] = args ? args.instanceAlias : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["arn"] = undefined /*out*/; resourceInputs["createdTime"] = undefined /*out*/; resourceInputs["instanceStatus"] = undefined /*out*/; @@ -104,6 +109,7 @@ export class Instance extends pulumi.CustomResource { resourceInputs["instanceAlias"] = undefined /*out*/; resourceInputs["instanceStatus"] = undefined /*out*/; resourceInputs["serviceRole"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); const replaceOnChanges = { replaceOnChanges: ["directoryId", "identityManagementType", "instanceAlias"] }; @@ -132,4 +138,8 @@ export interface InstanceArgs { * Alias of the new directory created as part of new instance creation. */ instanceAlias?: pulumi.Input; + /** + * An array of key-value pairs to apply to this resource. + */ + tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/dms/dataProvider.ts b/sdk/nodejs/dms/dataProvider.ts new file mode 100644 index 0000000000..aaa07c1f19 --- /dev/null +++ b/sdk/nodejs/dms/dataProvider.ts @@ -0,0 +1,148 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::DMS::DataProvider + */ +export class DataProvider extends pulumi.CustomResource { + /** + * Get an existing DataProvider 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): DataProvider { + return new DataProvider(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:dms:DataProvider'; + + /** + * Returns true if the given object is an instance of DataProvider. 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 DataProvider { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === DataProvider.__pulumiType; + } + + /** + * The data provider ARN. + */ + public /*out*/ readonly dataProviderArn!: pulumi.Output; + /** + * The data provider creation time. + */ + public /*out*/ readonly dataProviderCreationTime!: pulumi.Output; + /** + * The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + */ + public readonly dataProviderIdentifier!: pulumi.Output; + /** + * The property describes a name to identify the data provider. + */ + public readonly dataProviderName!: pulumi.Output; + /** + * The optional description of the data provider. + */ + public readonly description!: pulumi.Output; + /** + * The property describes a data engine for the data provider. + */ + public readonly engine!: pulumi.Output; + /** + * The property describes the exact settings which can be modified + */ + public readonly exactSettings!: pulumi.Output; + /** + * The property identifies the exact type of settings for the data provider. + */ + public readonly settings!: pulumi.Output; + /** + * An array of key-value pairs to apply to this resource. + */ + public readonly tags!: pulumi.Output; + + /** + * Create a DataProvider 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: DataProviderArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.engine === undefined) && !opts.urn) { + throw new Error("Missing required property 'engine'"); + } + resourceInputs["dataProviderIdentifier"] = args ? args.dataProviderIdentifier : undefined; + resourceInputs["dataProviderName"] = args ? args.dataProviderName : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["engine"] = args ? args.engine : undefined; + resourceInputs["exactSettings"] = args ? args.exactSettings : undefined; + resourceInputs["settings"] = args ? args.settings : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["dataProviderArn"] = undefined /*out*/; + resourceInputs["dataProviderCreationTime"] = undefined /*out*/; + } else { + resourceInputs["dataProviderArn"] = undefined /*out*/; + resourceInputs["dataProviderCreationTime"] = undefined /*out*/; + resourceInputs["dataProviderIdentifier"] = undefined /*out*/; + resourceInputs["dataProviderName"] = undefined /*out*/; + resourceInputs["description"] = undefined /*out*/; + resourceInputs["engine"] = undefined /*out*/; + resourceInputs["exactSettings"] = undefined /*out*/; + resourceInputs["settings"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(DataProvider.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a DataProvider resource. + */ +export interface DataProviderArgs { + /** + * The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + */ + dataProviderIdentifier?: pulumi.Input; + /** + * The property describes a name to identify the data provider. + */ + dataProviderName?: pulumi.Input; + /** + * The optional description of the data provider. + */ + description?: pulumi.Input; + /** + * The property describes a data engine for the data provider. + */ + engine: pulumi.Input; + /** + * The property describes the exact settings which can be modified + */ + exactSettings?: pulumi.Input; + /** + * The property identifies the exact type of settings for the data provider. + */ + settings?: pulumi.Input; + /** + * An array of key-value pairs to apply to this resource. + */ + tags?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/dms/getDataProvider.ts b/sdk/nodejs/dms/getDataProvider.ts new file mode 100644 index 0000000000..a4536507ce --- /dev/null +++ b/sdk/nodejs/dms/getDataProvider.ts @@ -0,0 +1,70 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::DMS::DataProvider + */ +export function getDataProvider(args: GetDataProviderArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:dms:getDataProvider", { + "dataProviderArn": args.dataProviderArn, + }, opts); +} + +export interface GetDataProviderArgs { + /** + * The data provider ARN. + */ + dataProviderArn: string; +} + +export interface GetDataProviderResult { + /** + * The data provider ARN. + */ + readonly dataProviderArn?: string; + /** + * The data provider creation time. + */ + readonly dataProviderCreationTime?: string; + /** + * The property describes a name to identify the data provider. + */ + readonly dataProviderName?: string; + /** + * The optional description of the data provider. + */ + readonly description?: string; + /** + * The property describes a data engine for the data provider. + */ + readonly engine?: enums.dms.DataProviderEngine; + /** + * The property identifies the exact type of settings for the data provider. + */ + readonly settings?: outputs.dms.Settings0Properties | outputs.dms.Settings1Properties | outputs.dms.Settings2Properties | outputs.dms.Settings3Properties; + /** + * An array of key-value pairs to apply to this resource. + */ + readonly tags?: outputs.dms.DataProviderTag[]; +} +/** + * Resource schema for AWS::DMS::DataProvider + */ +export function getDataProviderOutput(args: GetDataProviderOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getDataProvider(a, opts)) +} + +export interface GetDataProviderOutputArgs { + /** + * The data provider ARN. + */ + dataProviderArn: pulumi.Input; +} diff --git a/sdk/nodejs/dms/getInstanceProfile.ts b/sdk/nodejs/dms/getInstanceProfile.ts new file mode 100644 index 0000000000..851ed8848c --- /dev/null +++ b/sdk/nodejs/dms/getInstanceProfile.ts @@ -0,0 +1,86 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::DMS::InstanceProfile. + */ +export function getInstanceProfile(args: GetInstanceProfileArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:dms:getInstanceProfile", { + "instanceProfileArn": args.instanceProfileArn, + }, opts); +} + +export interface GetInstanceProfileArgs { + /** + * The property describes an ARN of the instance profile. + */ + instanceProfileArn: string; +} + +export interface GetInstanceProfileResult { + /** + * The property describes an availability zone of the instance profile. + */ + readonly availabilityZone?: string; + /** + * The optional description of the instance profile. + */ + readonly description?: string; + /** + * The property describes an ARN of the instance profile. + */ + readonly instanceProfileArn?: string; + /** + * The property describes a creating time of the instance profile. + */ + readonly instanceProfileCreationTime?: string; + /** + * The property describes a name for the instance profile. + */ + readonly instanceProfileName?: string; + /** + * The property describes kms key arn for the instance profile. + */ + readonly kmsKeyArn?: string; + /** + * The property describes a network type for the instance profile. + */ + readonly networkType?: enums.dms.InstanceProfileNetworkType; + /** + * The property describes the publicly accessible of the instance profile + */ + readonly publiclyAccessible?: boolean; + /** + * The property describes a subnet group identifier for the instance profile. + */ + readonly subnetGroupIdentifier?: string; + /** + * An array of key-value pairs to apply to this resource. + */ + readonly tags?: outputs.dms.InstanceProfileTag[]; + /** + * The property describes vps security groups for the instance profile. + */ + readonly vpcSecurityGroups?: string[]; +} +/** + * Resource schema for AWS::DMS::InstanceProfile. + */ +export function getInstanceProfileOutput(args: GetInstanceProfileOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getInstanceProfile(a, opts)) +} + +export interface GetInstanceProfileOutputArgs { + /** + * The property describes an ARN of the instance profile. + */ + instanceProfileArn: pulumi.Input; +} diff --git a/sdk/nodejs/dms/getMigrationProject.ts b/sdk/nodejs/dms/getMigrationProject.ts new file mode 100644 index 0000000000..bfb0f690f7 --- /dev/null +++ b/sdk/nodejs/dms/getMigrationProject.ts @@ -0,0 +1,86 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::DMS::MigrationProject + */ +export function getMigrationProject(args: GetMigrationProjectArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:dms:getMigrationProject", { + "migrationProjectArn": args.migrationProjectArn, + }, opts); +} + +export interface GetMigrationProjectArgs { + /** + * The property describes an ARN of the migration project. + */ + migrationProjectArn: string; +} + +export interface GetMigrationProjectResult { + /** + * The optional description of the migration project. + */ + readonly description?: string; + /** + * The property describes an instance profile arn for the migration project. For read + */ + readonly instanceProfileArn?: string; + /** + * The property describes an instance profile name for the migration project. For read + */ + readonly instanceProfileName?: string; + /** + * The property describes an ARN of the migration project. + */ + readonly migrationProjectArn?: string; + /** + * The property describes a creating time of the migration project. + */ + readonly migrationProjectCreationTime?: string; + /** + * The property describes a name to identify the migration project. + */ + readonly migrationProjectName?: string; + /** + * The property describes schema conversion application attributes for the migration project. + */ + readonly schemaConversionApplicationAttributes?: outputs.dms.SchemaConversionApplicationAttributesProperties; + /** + * The property describes source data provider descriptors for the migration project. + */ + readonly sourceDataProviderDescriptors?: outputs.dms.MigrationProjectDataProviderDescriptor[]; + /** + * An array of key-value pairs to apply to this resource. + */ + readonly tags?: outputs.dms.MigrationProjectTag[]; + /** + * The property describes target data provider descriptors for the migration project. + */ + readonly targetDataProviderDescriptors?: outputs.dms.MigrationProjectDataProviderDescriptor[]; + /** + * The property describes transformation rules for the migration project. + */ + readonly transformationRules?: string; +} +/** + * Resource schema for AWS::DMS::MigrationProject + */ +export function getMigrationProjectOutput(args: GetMigrationProjectOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getMigrationProject(a, opts)) +} + +export interface GetMigrationProjectOutputArgs { + /** + * The property describes an ARN of the migration project. + */ + migrationProjectArn: pulumi.Input; +} diff --git a/sdk/nodejs/dms/getReplicationConfig.ts b/sdk/nodejs/dms/getReplicationConfig.ts index a0a01d680f..3118aad8ac 100644 --- a/sdk/nodejs/dms/getReplicationConfig.ts +++ b/sdk/nodejs/dms/getReplicationConfig.ts @@ -43,10 +43,6 @@ export interface GetReplicationConfigResult { * The type of AWS DMS Serverless replication to provision using this replication configuration */ readonly replicationType?: enums.dms.ReplicationConfigReplicationType; - /** - * A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource - */ - readonly resourceIdentifier?: string; /** * The Amazon Resource Name (ARN) of the source endpoint for this AWS DMS Serverless replication configuration */ diff --git a/sdk/nodejs/dms/index.ts b/sdk/nodejs/dms/index.ts index 1d25584227..8944ee68d0 100644 --- a/sdk/nodejs/dms/index.ts +++ b/sdk/nodejs/dms/index.ts @@ -10,6 +10,11 @@ export type Certificate = import("./certificate").Certificate; export const Certificate: typeof import("./certificate").Certificate = null as any; utilities.lazyLoad(exports, ["Certificate"], () => require("./certificate")); +export { DataProviderArgs } from "./dataProvider"; +export type DataProvider = import("./dataProvider").DataProvider; +export const DataProvider: typeof import("./dataProvider").DataProvider = null as any; +utilities.lazyLoad(exports, ["DataProvider"], () => require("./dataProvider")); + export { EndpointArgs } from "./endpoint"; export type Endpoint = import("./endpoint").Endpoint; export const Endpoint: typeof import("./endpoint").Endpoint = null as any; @@ -25,6 +30,11 @@ export const getCertificate: typeof import("./getCertificate").getCertificate = export const getCertificateOutput: typeof import("./getCertificate").getCertificateOutput = null as any; utilities.lazyLoad(exports, ["getCertificate","getCertificateOutput"], () => require("./getCertificate")); +export { GetDataProviderArgs, GetDataProviderResult, GetDataProviderOutputArgs } from "./getDataProvider"; +export const getDataProvider: typeof import("./getDataProvider").getDataProvider = null as any; +export const getDataProviderOutput: typeof import("./getDataProvider").getDataProviderOutput = null as any; +utilities.lazyLoad(exports, ["getDataProvider","getDataProviderOutput"], () => require("./getDataProvider")); + export { GetEndpointArgs, GetEndpointResult, GetEndpointOutputArgs } from "./getEndpoint"; export const getEndpoint: typeof import("./getEndpoint").getEndpoint = null as any; export const getEndpointOutput: typeof import("./getEndpoint").getEndpointOutput = null as any; @@ -35,6 +45,16 @@ export const getEventSubscription: typeof import("./getEventSubscription").getEv export const getEventSubscriptionOutput: typeof import("./getEventSubscription").getEventSubscriptionOutput = null as any; utilities.lazyLoad(exports, ["getEventSubscription","getEventSubscriptionOutput"], () => require("./getEventSubscription")); +export { GetInstanceProfileArgs, GetInstanceProfileResult, GetInstanceProfileOutputArgs } from "./getInstanceProfile"; +export const getInstanceProfile: typeof import("./getInstanceProfile").getInstanceProfile = null as any; +export const getInstanceProfileOutput: typeof import("./getInstanceProfile").getInstanceProfileOutput = null as any; +utilities.lazyLoad(exports, ["getInstanceProfile","getInstanceProfileOutput"], () => require("./getInstanceProfile")); + +export { GetMigrationProjectArgs, GetMigrationProjectResult, GetMigrationProjectOutputArgs } from "./getMigrationProject"; +export const getMigrationProject: typeof import("./getMigrationProject").getMigrationProject = null as any; +export const getMigrationProjectOutput: typeof import("./getMigrationProject").getMigrationProjectOutput = null as any; +utilities.lazyLoad(exports, ["getMigrationProject","getMigrationProjectOutput"], () => require("./getMigrationProject")); + export { GetReplicationConfigArgs, GetReplicationConfigResult, GetReplicationConfigOutputArgs } from "./getReplicationConfig"; export const getReplicationConfig: typeof import("./getReplicationConfig").getReplicationConfig = null as any; export const getReplicationConfigOutput: typeof import("./getReplicationConfig").getReplicationConfigOutput = null as any; @@ -55,6 +75,16 @@ export const getReplicationTask: typeof import("./getReplicationTask").getReplic export const getReplicationTaskOutput: typeof import("./getReplicationTask").getReplicationTaskOutput = null as any; utilities.lazyLoad(exports, ["getReplicationTask","getReplicationTaskOutput"], () => require("./getReplicationTask")); +export { InstanceProfileArgs } from "./instanceProfile"; +export type InstanceProfile = import("./instanceProfile").InstanceProfile; +export const InstanceProfile: typeof import("./instanceProfile").InstanceProfile = null as any; +utilities.lazyLoad(exports, ["InstanceProfile"], () => require("./instanceProfile")); + +export { MigrationProjectArgs } from "./migrationProject"; +export type MigrationProject = import("./migrationProject").MigrationProject; +export const MigrationProject: typeof import("./migrationProject").MigrationProject = null as any; +utilities.lazyLoad(exports, ["MigrationProject"], () => require("./migrationProject")); + export { ReplicationConfigArgs } from "./replicationConfig"; export type ReplicationConfig = import("./replicationConfig").ReplicationConfig; export const ReplicationConfig: typeof import("./replicationConfig").ReplicationConfig = null as any; @@ -85,10 +115,16 @@ const _module = { switch (type) { case "aws-native:dms:Certificate": return new Certificate(name, undefined, { urn }) + case "aws-native:dms:DataProvider": + return new DataProvider(name, undefined, { urn }) case "aws-native:dms:Endpoint": return new Endpoint(name, undefined, { urn }) case "aws-native:dms:EventSubscription": return new EventSubscription(name, undefined, { urn }) + case "aws-native:dms:InstanceProfile": + return new InstanceProfile(name, undefined, { urn }) + case "aws-native:dms:MigrationProject": + return new MigrationProject(name, undefined, { urn }) case "aws-native:dms:ReplicationConfig": return new ReplicationConfig(name, undefined, { urn }) case "aws-native:dms:ReplicationInstance": diff --git a/sdk/nodejs/dms/instanceProfile.ts b/sdk/nodejs/dms/instanceProfile.ts new file mode 100644 index 0000000000..692a7b69ac --- /dev/null +++ b/sdk/nodejs/dms/instanceProfile.ts @@ -0,0 +1,175 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::DMS::InstanceProfile. + */ +export class InstanceProfile extends pulumi.CustomResource { + /** + * Get an existing InstanceProfile 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): InstanceProfile { + return new InstanceProfile(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:dms:InstanceProfile'; + + /** + * Returns true if the given object is an instance of InstanceProfile. 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 InstanceProfile { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === InstanceProfile.__pulumiType; + } + + /** + * The property describes an availability zone of the instance profile. + */ + public readonly availabilityZone!: pulumi.Output; + /** + * The optional description of the instance profile. + */ + public readonly description!: pulumi.Output; + /** + * The property describes an ARN of the instance profile. + */ + public /*out*/ readonly instanceProfileArn!: pulumi.Output; + /** + * The property describes a creating time of the instance profile. + */ + public /*out*/ readonly instanceProfileCreationTime!: pulumi.Output; + /** + * The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + */ + public readonly instanceProfileIdentifier!: pulumi.Output; + /** + * The property describes a name for the instance profile. + */ + public readonly instanceProfileName!: pulumi.Output; + /** + * The property describes kms key arn for the instance profile. + */ + public readonly kmsKeyArn!: pulumi.Output; + /** + * The property describes a network type for the instance profile. + */ + public readonly networkType!: pulumi.Output; + /** + * The property describes the publicly accessible of the instance profile + */ + public readonly publiclyAccessible!: pulumi.Output; + /** + * The property describes a subnet group identifier for the instance profile. + */ + public readonly subnetGroupIdentifier!: pulumi.Output; + /** + * An array of key-value pairs to apply to this resource. + */ + public readonly tags!: pulumi.Output; + /** + * The property describes vps security groups for the instance profile. + */ + public readonly vpcSecurityGroups!: pulumi.Output; + + /** + * Create a InstanceProfile 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?: InstanceProfileArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + resourceInputs["availabilityZone"] = args ? args.availabilityZone : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["instanceProfileIdentifier"] = args ? args.instanceProfileIdentifier : undefined; + resourceInputs["instanceProfileName"] = args ? args.instanceProfileName : undefined; + resourceInputs["kmsKeyArn"] = args ? args.kmsKeyArn : undefined; + resourceInputs["networkType"] = args ? args.networkType : undefined; + resourceInputs["publiclyAccessible"] = args ? args.publiclyAccessible : undefined; + resourceInputs["subnetGroupIdentifier"] = args ? args.subnetGroupIdentifier : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["vpcSecurityGroups"] = args ? args.vpcSecurityGroups : undefined; + resourceInputs["instanceProfileArn"] = undefined /*out*/; + resourceInputs["instanceProfileCreationTime"] = undefined /*out*/; + } else { + resourceInputs["availabilityZone"] = undefined /*out*/; + resourceInputs["description"] = undefined /*out*/; + resourceInputs["instanceProfileArn"] = undefined /*out*/; + resourceInputs["instanceProfileCreationTime"] = undefined /*out*/; + resourceInputs["instanceProfileIdentifier"] = undefined /*out*/; + resourceInputs["instanceProfileName"] = undefined /*out*/; + resourceInputs["kmsKeyArn"] = undefined /*out*/; + resourceInputs["networkType"] = undefined /*out*/; + resourceInputs["publiclyAccessible"] = undefined /*out*/; + resourceInputs["subnetGroupIdentifier"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + resourceInputs["vpcSecurityGroups"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(InstanceProfile.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a InstanceProfile resource. + */ +export interface InstanceProfileArgs { + /** + * The property describes an availability zone of the instance profile. + */ + availabilityZone?: pulumi.Input; + /** + * The optional description of the instance profile. + */ + description?: pulumi.Input; + /** + * The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + */ + instanceProfileIdentifier?: pulumi.Input; + /** + * The property describes a name for the instance profile. + */ + instanceProfileName?: pulumi.Input; + /** + * The property describes kms key arn for the instance profile. + */ + kmsKeyArn?: pulumi.Input; + /** + * The property describes a network type for the instance profile. + */ + networkType?: pulumi.Input; + /** + * The property describes the publicly accessible of the instance profile + */ + publiclyAccessible?: pulumi.Input; + /** + * The property describes a subnet group identifier for the instance profile. + */ + subnetGroupIdentifier?: pulumi.Input; + /** + * An array of key-value pairs to apply to this resource. + */ + tags?: pulumi.Input[]>; + /** + * The property describes vps security groups for the instance profile. + */ + vpcSecurityGroups?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/dms/migrationProject.ts b/sdk/nodejs/dms/migrationProject.ts new file mode 100644 index 0000000000..483d4ce764 --- /dev/null +++ b/sdk/nodejs/dms/migrationProject.ts @@ -0,0 +1,189 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::DMS::MigrationProject + */ +export class MigrationProject extends pulumi.CustomResource { + /** + * Get an existing MigrationProject 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): MigrationProject { + return new MigrationProject(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:dms:MigrationProject'; + + /** + * Returns true if the given object is an instance of MigrationProject. 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 MigrationProject { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === MigrationProject.__pulumiType; + } + + /** + * The optional description of the migration project. + */ + public readonly description!: pulumi.Output; + /** + * The property describes an instance profile arn for the migration project. For read + */ + public readonly instanceProfileArn!: pulumi.Output; + /** + * The property describes an instance profile identifier for the migration project. For create + */ + public readonly instanceProfileIdentifier!: pulumi.Output; + /** + * The property describes an instance profile name for the migration project. For read + */ + public readonly instanceProfileName!: pulumi.Output; + /** + * The property describes an ARN of the migration project. + */ + public /*out*/ readonly migrationProjectArn!: pulumi.Output; + /** + * The property describes a creating time of the migration project. + */ + public readonly migrationProjectCreationTime!: pulumi.Output; + /** + * The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + */ + public readonly migrationProjectIdentifier!: pulumi.Output; + /** + * The property describes a name to identify the migration project. + */ + public readonly migrationProjectName!: pulumi.Output; + /** + * The property describes schema conversion application attributes for the migration project. + */ + public readonly schemaConversionApplicationAttributes!: pulumi.Output; + /** + * The property describes source data provider descriptors for the migration project. + */ + public readonly sourceDataProviderDescriptors!: pulumi.Output; + /** + * An array of key-value pairs to apply to this resource. + */ + public readonly tags!: pulumi.Output; + /** + * The property describes target data provider descriptors for the migration project. + */ + public readonly targetDataProviderDescriptors!: pulumi.Output; + /** + * The property describes transformation rules for the migration project. + */ + public readonly transformationRules!: pulumi.Output; + + /** + * Create a MigrationProject 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?: MigrationProjectArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["instanceProfileArn"] = args ? args.instanceProfileArn : undefined; + resourceInputs["instanceProfileIdentifier"] = args ? args.instanceProfileIdentifier : undefined; + resourceInputs["instanceProfileName"] = args ? args.instanceProfileName : undefined; + resourceInputs["migrationProjectCreationTime"] = args ? args.migrationProjectCreationTime : undefined; + resourceInputs["migrationProjectIdentifier"] = args ? args.migrationProjectIdentifier : undefined; + resourceInputs["migrationProjectName"] = args ? args.migrationProjectName : undefined; + resourceInputs["schemaConversionApplicationAttributes"] = args ? args.schemaConversionApplicationAttributes : undefined; + resourceInputs["sourceDataProviderDescriptors"] = args ? args.sourceDataProviderDescriptors : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["targetDataProviderDescriptors"] = args ? args.targetDataProviderDescriptors : undefined; + resourceInputs["transformationRules"] = args ? args.transformationRules : undefined; + resourceInputs["migrationProjectArn"] = undefined /*out*/; + } else { + resourceInputs["description"] = undefined /*out*/; + resourceInputs["instanceProfileArn"] = undefined /*out*/; + resourceInputs["instanceProfileIdentifier"] = undefined /*out*/; + resourceInputs["instanceProfileName"] = undefined /*out*/; + resourceInputs["migrationProjectArn"] = undefined /*out*/; + resourceInputs["migrationProjectCreationTime"] = undefined /*out*/; + resourceInputs["migrationProjectIdentifier"] = undefined /*out*/; + resourceInputs["migrationProjectName"] = undefined /*out*/; + resourceInputs["schemaConversionApplicationAttributes"] = undefined /*out*/; + resourceInputs["sourceDataProviderDescriptors"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + resourceInputs["targetDataProviderDescriptors"] = undefined /*out*/; + resourceInputs["transformationRules"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(MigrationProject.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a MigrationProject resource. + */ +export interface MigrationProjectArgs { + /** + * The optional description of the migration project. + */ + description?: pulumi.Input; + /** + * The property describes an instance profile arn for the migration project. For read + */ + instanceProfileArn?: pulumi.Input; + /** + * The property describes an instance profile identifier for the migration project. For create + */ + instanceProfileIdentifier?: pulumi.Input; + /** + * The property describes an instance profile name for the migration project. For read + */ + instanceProfileName?: pulumi.Input; + /** + * The property describes a creating time of the migration project. + */ + migrationProjectCreationTime?: pulumi.Input; + /** + * The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + */ + migrationProjectIdentifier?: pulumi.Input; + /** + * The property describes a name to identify the migration project. + */ + migrationProjectName?: pulumi.Input; + /** + * The property describes schema conversion application attributes for the migration project. + */ + schemaConversionApplicationAttributes?: pulumi.Input; + /** + * The property describes source data provider descriptors for the migration project. + */ + sourceDataProviderDescriptors?: pulumi.Input[]>; + /** + * An array of key-value pairs to apply to this resource. + */ + tags?: pulumi.Input[]>; + /** + * The property describes target data provider descriptors for the migration project. + */ + targetDataProviderDescriptors?: pulumi.Input[]>; + /** + * The property describes transformation rules for the migration project. + */ + transformationRules?: pulumi.Input; +} diff --git a/sdk/nodejs/dms/replicationConfig.ts b/sdk/nodejs/dms/replicationConfig.ts index 4c056f5700..63c415aaf0 100644 --- a/sdk/nodejs/dms/replicationConfig.ts +++ b/sdk/nodejs/dms/replicationConfig.ts @@ -115,6 +115,8 @@ export class ReplicationConfig extends pulumi.CustomResource { resourceInputs["targetEndpointArn"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["resourceIdentifier"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); super(ReplicationConfig.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/ec2/getInstance.ts b/sdk/nodejs/ec2/getInstance.ts index a07202d455..6f5b3bd3e3 100644 --- a/sdk/nodejs/ec2/getInstance.ts +++ b/sdk/nodejs/ec2/getInstance.ts @@ -14,12 +14,12 @@ export function getInstance(args: GetInstanceArgs, opts?: pulumi.InvokeOptions): opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:ec2:getInstance", { - "id": args.id, + "instanceId": args.instanceId, }, opts); } export interface GetInstanceArgs { - id: string; + instanceId: string; } export interface GetInstanceResult { @@ -31,7 +31,7 @@ export interface GetInstanceResult { readonly ebsOptimized?: boolean; readonly hostId?: string; readonly iamInstanceProfile?: string; - readonly id?: string; + readonly instanceId?: string; readonly instanceInitiatedShutdownBehavior?: string; readonly instanceType?: string; readonly kernelId?: string; @@ -59,5 +59,5 @@ export function getInstanceOutput(args: GetInstanceOutputArgs, opts?: pulumi.Inv } export interface GetInstanceOutputArgs { - id: pulumi.Input; + instanceId: pulumi.Input; } diff --git a/sdk/nodejs/ec2/getRoute.ts b/sdk/nodejs/ec2/getRoute.ts index 02302b0ac6..18435b4a79 100644 --- a/sdk/nodejs/ec2/getRoute.ts +++ b/sdk/nodejs/ec2/getRoute.ts @@ -36,6 +36,10 @@ export interface GetRouteResult { * The primary identifier of the resource generated by the service. */ readonly cidrBlock?: string; + /** + * The Amazon Resource Name (ARN) of the core network. + */ + readonly coreNetworkArn?: string; /** * The ID of the egress-only internet gateway. */ diff --git a/sdk/nodejs/ec2/getSecurityGroupEgress.ts b/sdk/nodejs/ec2/getSecurityGroupEgress.ts index 7a116c2b0e..ce35b6c665 100644 --- a/sdk/nodejs/ec2/getSecurityGroupEgress.ts +++ b/sdk/nodejs/ec2/getSecurityGroupEgress.ts @@ -16,11 +16,20 @@ export function getSecurityGroupEgress(args: GetSecurityGroupEgressArgs, opts?: } export interface GetSecurityGroupEgressArgs { + /** + * The Security Group Rule Id + */ id: string; } export interface GetSecurityGroupEgressResult { + /** + * Resource Type definition for an egress (outbound) security group rule. + */ readonly description?: string; + /** + * The Security Group Rule Id + */ readonly id?: string; } /** @@ -31,5 +40,8 @@ export function getSecurityGroupEgressOutput(args: GetSecurityGroupEgressOutputA } export interface GetSecurityGroupEgressOutputArgs { + /** + * The Security Group Rule Id + */ id: pulumi.Input; } diff --git a/sdk/nodejs/ec2/getSnapshotBlockPublicAccess.ts b/sdk/nodejs/ec2/getSnapshotBlockPublicAccess.ts new file mode 100644 index 0000000000..37f5b94329 --- /dev/null +++ b/sdk/nodejs/ec2/getSnapshotBlockPublicAccess.ts @@ -0,0 +1,50 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 Type definition for AWS::EC2::SnapshotBlockPublicAccess + */ +export function getSnapshotBlockPublicAccess(args: GetSnapshotBlockPublicAccessArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:ec2:getSnapshotBlockPublicAccess", { + "accountId": args.accountId, + }, opts); +} + +export interface GetSnapshotBlockPublicAccessArgs { + /** + * The identifier for the specified AWS account. + */ + accountId: string; +} + +export interface GetSnapshotBlockPublicAccessResult { + /** + * The identifier for the specified AWS account. + */ + readonly accountId?: string; + /** + * The state of EBS Snapshot Block Public Access. + */ + readonly state?: enums.ec2.SnapshotBlockPublicAccessState; +} +/** + * Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess + */ +export function getSnapshotBlockPublicAccessOutput(args: GetSnapshotBlockPublicAccessOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getSnapshotBlockPublicAccess(a, opts)) +} + +export interface GetSnapshotBlockPublicAccessOutputArgs { + /** + * The identifier for the specified AWS account. + */ + accountId: pulumi.Input; +} diff --git a/sdk/nodejs/ec2/index.ts b/sdk/nodejs/ec2/index.ts index f83935271f..f7c1b2e0f9 100644 --- a/sdk/nodejs/ec2/index.ts +++ b/sdk/nodejs/ec2/index.ts @@ -335,6 +335,11 @@ export const getSecurityGroupIngress: typeof import("./getSecurityGroupIngress") export const getSecurityGroupIngressOutput: typeof import("./getSecurityGroupIngress").getSecurityGroupIngressOutput = null as any; utilities.lazyLoad(exports, ["getSecurityGroupIngress","getSecurityGroupIngressOutput"], () => require("./getSecurityGroupIngress")); +export { GetSnapshotBlockPublicAccessArgs, GetSnapshotBlockPublicAccessResult, GetSnapshotBlockPublicAccessOutputArgs } from "./getSnapshotBlockPublicAccess"; +export const getSnapshotBlockPublicAccess: typeof import("./getSnapshotBlockPublicAccess").getSnapshotBlockPublicAccess = null as any; +export const getSnapshotBlockPublicAccessOutput: typeof import("./getSnapshotBlockPublicAccess").getSnapshotBlockPublicAccessOutput = null as any; +utilities.lazyLoad(exports, ["getSnapshotBlockPublicAccess","getSnapshotBlockPublicAccessOutput"], () => require("./getSnapshotBlockPublicAccess")); + export { GetSpotFleetArgs, GetSpotFleetResult, GetSpotFleetOutputArgs } from "./getSpotFleet"; export const getSpotFleet: typeof import("./getSpotFleet").getSpotFleet = null as any; export const getSpotFleetOutput: typeof import("./getSpotFleet").getSpotFleetOutput = null as any; @@ -700,6 +705,11 @@ export type SecurityGroupIngress = import("./securityGroupIngress").SecurityGrou export const SecurityGroupIngress: typeof import("./securityGroupIngress").SecurityGroupIngress = null as any; utilities.lazyLoad(exports, ["SecurityGroupIngress"], () => require("./securityGroupIngress")); +export { SnapshotBlockPublicAccessArgs } from "./snapshotBlockPublicAccess"; +export type SnapshotBlockPublicAccess = import("./snapshotBlockPublicAccess").SnapshotBlockPublicAccess; +export const SnapshotBlockPublicAccess: typeof import("./snapshotBlockPublicAccess").SnapshotBlockPublicAccess = null as any; +utilities.lazyLoad(exports, ["SnapshotBlockPublicAccess"], () => require("./snapshotBlockPublicAccess")); + export { SpotFleetArgs } from "./spotFleet"; export type SpotFleet = import("./spotFleet").SpotFleet; export const SpotFleet: typeof import("./spotFleet").SpotFleet = null as any; @@ -1015,6 +1025,8 @@ const _module = { return new SecurityGroupEgress(name, undefined, { urn }) case "aws-native:ec2:SecurityGroupIngress": return new SecurityGroupIngress(name, undefined, { urn }) + case "aws-native:ec2:SnapshotBlockPublicAccess": + return new SnapshotBlockPublicAccess(name, undefined, { urn }) case "aws-native:ec2:SpotFleet": return new SpotFleet(name, undefined, { urn }) case "aws-native:ec2:Subnet": diff --git a/sdk/nodejs/ec2/instance.ts b/sdk/nodejs/ec2/instance.ts index 3a1b1e0ab6..6a5ddcca77 100644 --- a/sdk/nodejs/ec2/instance.ts +++ b/sdk/nodejs/ec2/instance.ts @@ -56,6 +56,7 @@ export class Instance extends pulumi.CustomResource { public readonly hostResourceGroupArn!: pulumi.Output; public readonly iamInstanceProfile!: pulumi.Output; public readonly imageId!: pulumi.Output; + public /*out*/ readonly instanceId!: pulumi.Output; public readonly instanceInitiatedShutdownBehavior!: pulumi.Output; public readonly instanceType!: pulumi.Output; public readonly ipv6AddressCount!: pulumi.Output; @@ -138,6 +139,7 @@ export class Instance extends pulumi.CustomResource { resourceInputs["tenancy"] = args ? args.tenancy : undefined; resourceInputs["userData"] = args ? args.userData : undefined; resourceInputs["volumes"] = args ? args.volumes : undefined; + resourceInputs["instanceId"] = undefined /*out*/; resourceInputs["privateDnsName"] = undefined /*out*/; resourceInputs["privateIp"] = undefined /*out*/; resourceInputs["publicDnsName"] = undefined /*out*/; @@ -159,6 +161,7 @@ export class Instance extends pulumi.CustomResource { resourceInputs["hostResourceGroupArn"] = undefined /*out*/; resourceInputs["iamInstanceProfile"] = undefined /*out*/; resourceInputs["imageId"] = undefined /*out*/; + resourceInputs["instanceId"] = undefined /*out*/; resourceInputs["instanceInitiatedShutdownBehavior"] = undefined /*out*/; resourceInputs["instanceType"] = undefined /*out*/; resourceInputs["ipv6AddressCount"] = undefined /*out*/; diff --git a/sdk/nodejs/ec2/route.ts b/sdk/nodejs/ec2/route.ts index d55f3a0343..db61a40c4f 100644 --- a/sdk/nodejs/ec2/route.ts +++ b/sdk/nodejs/ec2/route.ts @@ -42,6 +42,10 @@ export class Route extends pulumi.CustomResource { * The primary identifier of the resource generated by the service. */ public /*out*/ readonly cidrBlock!: pulumi.Output; + /** + * The Amazon Resource Name (ARN) of the core network. + */ + public readonly coreNetworkArn!: pulumi.Output; /** * The IPv4 CIDR block used for the destination match. */ @@ -110,6 +114,7 @@ export class Route extends pulumi.CustomResource { throw new Error("Missing required property 'routeTableId'"); } resourceInputs["carrierGatewayId"] = args ? args.carrierGatewayId : undefined; + resourceInputs["coreNetworkArn"] = args ? args.coreNetworkArn : undefined; resourceInputs["destinationCidrBlock"] = args ? args.destinationCidrBlock : undefined; resourceInputs["destinationIpv6CidrBlock"] = args ? args.destinationIpv6CidrBlock : undefined; resourceInputs["destinationPrefixListId"] = args ? args.destinationPrefixListId : undefined; @@ -127,6 +132,7 @@ export class Route extends pulumi.CustomResource { } else { resourceInputs["carrierGatewayId"] = undefined /*out*/; resourceInputs["cidrBlock"] = undefined /*out*/; + resourceInputs["coreNetworkArn"] = undefined /*out*/; resourceInputs["destinationCidrBlock"] = undefined /*out*/; resourceInputs["destinationIpv6CidrBlock"] = undefined /*out*/; resourceInputs["destinationPrefixListId"] = undefined /*out*/; @@ -156,6 +162,10 @@ export interface RouteArgs { * The ID of the carrier gateway. */ carrierGatewayId?: pulumi.Input; + /** + * The Amazon Resource Name (ARN) of the core network. + */ + coreNetworkArn?: pulumi.Input; /** * The IPv4 CIDR block used for the destination match. */ diff --git a/sdk/nodejs/ec2/securityGroupEgress.ts b/sdk/nodejs/ec2/securityGroupEgress.ts index 53e96754ad..07c2c2e34a 100644 --- a/sdk/nodejs/ec2/securityGroupEgress.ts +++ b/sdk/nodejs/ec2/securityGroupEgress.ts @@ -6,8 +6,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::EC2::SecurityGroupEgress - * - * @deprecated SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class SecurityGroupEgress extends pulumi.CustomResource { /** @@ -19,7 +17,6 @@ export class SecurityGroupEgress extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): SecurityGroupEgress { - pulumi.log.warn("SecurityGroupEgress is deprecated: SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new SecurityGroupEgress(name, undefined as any, { ...opts, id: id }); } @@ -37,14 +34,41 @@ export class SecurityGroupEgress extends pulumi.CustomResource { return obj['__pulumiType'] === SecurityGroupEgress.__pulumiType; } + /** + * The IPv4 ranges + */ public readonly cidrIp!: pulumi.Output; + /** + * [VPC only] The IPv6 ranges + */ public readonly cidrIpv6!: pulumi.Output; + /** + * Resource Type definition for an egress (outbound) security group rule. + */ public readonly description!: pulumi.Output; + /** + * [EC2-VPC only] The ID of a prefix list. + */ public readonly destinationPrefixListId!: pulumi.Output; + /** + * You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). + */ public readonly destinationSecurityGroupId!: pulumi.Output; + /** + * The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + */ public readonly fromPort!: pulumi.Output; + /** + * The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + */ public readonly groupId!: pulumi.Output; + /** + * [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + */ public readonly ipProtocol!: pulumi.Output; + /** + * The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + */ public readonly toPort!: pulumi.Output; /** @@ -54,9 +78,7 @@ export class SecurityGroupEgress extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args: SecurityGroupEgressArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("SecurityGroupEgress is deprecated: SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -97,13 +119,40 @@ export class SecurityGroupEgress extends pulumi.CustomResource { * The set of arguments for constructing a SecurityGroupEgress resource. */ export interface SecurityGroupEgressArgs { + /** + * The IPv4 ranges + */ cidrIp?: pulumi.Input; + /** + * [VPC only] The IPv6 ranges + */ cidrIpv6?: pulumi.Input; + /** + * Resource Type definition for an egress (outbound) security group rule. + */ description?: pulumi.Input; + /** + * [EC2-VPC only] The ID of a prefix list. + */ destinationPrefixListId?: pulumi.Input; + /** + * You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). + */ destinationSecurityGroupId?: pulumi.Input; + /** + * The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + */ fromPort?: pulumi.Input; + /** + * The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + */ groupId: pulumi.Input; + /** + * [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + */ ipProtocol: pulumi.Input; + /** + * The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + */ toPort?: pulumi.Input; } diff --git a/sdk/nodejs/ec2/snapshotBlockPublicAccess.ts b/sdk/nodejs/ec2/snapshotBlockPublicAccess.ts new file mode 100644 index 0000000000..9509d2e6e0 --- /dev/null +++ b/sdk/nodejs/ec2/snapshotBlockPublicAccess.ts @@ -0,0 +1,82 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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 Type definition for AWS::EC2::SnapshotBlockPublicAccess + */ +export class SnapshotBlockPublicAccess extends pulumi.CustomResource { + /** + * Get an existing SnapshotBlockPublicAccess 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): SnapshotBlockPublicAccess { + return new SnapshotBlockPublicAccess(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:ec2:SnapshotBlockPublicAccess'; + + /** + * Returns true if the given object is an instance of SnapshotBlockPublicAccess. 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 SnapshotBlockPublicAccess { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === SnapshotBlockPublicAccess.__pulumiType; + } + + /** + * The identifier for the specified AWS account. + */ + public /*out*/ readonly accountId!: pulumi.Output; + /** + * The state of EBS Snapshot Block Public Access. + */ + public readonly state!: pulumi.Output; + + /** + * Create a SnapshotBlockPublicAccess 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: SnapshotBlockPublicAccessArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.state === undefined) && !opts.urn) { + throw new Error("Missing required property 'state'"); + } + resourceInputs["state"] = args ? args.state : undefined; + resourceInputs["accountId"] = undefined /*out*/; + } else { + resourceInputs["accountId"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + super(SnapshotBlockPublicAccess.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a SnapshotBlockPublicAccess resource. + */ +export interface SnapshotBlockPublicAccessArgs { + /** + * The state of EBS Snapshot Block Public Access. + */ + state: pulumi.Input; +} diff --git a/sdk/nodejs/eks/cluster.ts b/sdk/nodejs/eks/cluster.ts index 592c4d988c..483d17da95 100644 --- a/sdk/nodejs/eks/cluster.ts +++ b/sdk/nodejs/eks/cluster.ts @@ -37,6 +37,7 @@ export class Cluster extends pulumi.CustomResource { return obj['__pulumiType'] === Cluster.__pulumiType; } + public readonly accessConfig!: pulumi.Output; /** * The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod. */ @@ -100,6 +101,7 @@ export class Cluster extends pulumi.CustomResource { if ((!args || args.roleArn === undefined) && !opts.urn) { throw new Error("Missing required property 'roleArn'"); } + resourceInputs["accessConfig"] = args ? args.accessConfig : undefined; resourceInputs["encryptionConfig"] = args ? args.encryptionConfig : undefined; resourceInputs["kubernetesNetworkConfig"] = args ? args.kubernetesNetworkConfig : undefined; resourceInputs["logging"] = args ? args.logging : undefined; @@ -116,6 +118,7 @@ export class Cluster extends pulumi.CustomResource { resourceInputs["endpoint"] = undefined /*out*/; resourceInputs["openIdConnectIssuerUrl"] = undefined /*out*/; } else { + resourceInputs["accessConfig"] = undefined /*out*/; resourceInputs["arn"] = undefined /*out*/; resourceInputs["certificateAuthorityData"] = undefined /*out*/; resourceInputs["clusterSecurityGroupId"] = undefined /*out*/; @@ -133,7 +136,7 @@ export class Cluster extends pulumi.CustomResource { resourceInputs["version"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["encryptionConfig[*]", "kubernetesNetworkConfig", "name", "outpostConfig", "roleArn"] }; + const replaceOnChanges = { replaceOnChanges: ["accessConfig.bootstrapClusterCreatorAdminPermissions", "encryptionConfig[*]", "kubernetesNetworkConfig", "name", "outpostConfig", "roleArn"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Cluster.__pulumiType, name, resourceInputs, opts); } @@ -143,6 +146,7 @@ export class Cluster extends pulumi.CustomResource { * The set of arguments for constructing a Cluster resource. */ export interface ClusterArgs { + accessConfig?: pulumi.Input; encryptionConfig?: pulumi.Input[]>; kubernetesNetworkConfig?: pulumi.Input; logging?: pulumi.Input; diff --git a/sdk/nodejs/eks/getCluster.ts b/sdk/nodejs/eks/getCluster.ts index eeb927b1a7..2e8ea2d42e 100644 --- a/sdk/nodejs/eks/getCluster.ts +++ b/sdk/nodejs/eks/getCluster.ts @@ -26,6 +26,7 @@ export interface GetClusterArgs { } export interface GetClusterResult { + readonly accessConfig?: outputs.eks.ClusterAccessConfig; /** * The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod. */ diff --git a/sdk/nodejs/elasticache/serverlessCache.ts b/sdk/nodejs/elasticache/serverlessCache.ts index a7c8c69584..5f6d0173b7 100644 --- a/sdk/nodejs/elasticache/serverlessCache.ts +++ b/sdk/nodejs/elasticache/serverlessCache.ts @@ -54,7 +54,7 @@ export class ServerlessCache extends pulumi.CustomResource { * The description of the Serverless Cache. */ public readonly description!: pulumi.Output; - public /*out*/ readonly endpoint!: pulumi.Output; + public readonly endpoint!: pulumi.Output; /** * The engine name of the Serverless Cache. */ @@ -75,7 +75,7 @@ export class ServerlessCache extends pulumi.CustomResource { * The major engine version of the Serverless Cache. */ public readonly majorEngineVersion!: pulumi.Output; - public /*out*/ readonly readerEndpoint!: pulumi.Output; + public readonly readerEndpoint!: pulumi.Output; /** * One or more Amazon VPC security groups associated with this Serverless Cache. */ @@ -126,10 +126,12 @@ export class ServerlessCache extends pulumi.CustomResource { resourceInputs["cacheUsageLimits"] = args ? args.cacheUsageLimits : undefined; resourceInputs["dailySnapshotTime"] = args ? args.dailySnapshotTime : undefined; resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["endpoint"] = args ? args.endpoint : undefined; resourceInputs["engine"] = args ? args.engine : undefined; resourceInputs["finalSnapshotName"] = args ? args.finalSnapshotName : undefined; resourceInputs["kmsKeyId"] = args ? args.kmsKeyId : undefined; resourceInputs["majorEngineVersion"] = args ? args.majorEngineVersion : undefined; + resourceInputs["readerEndpoint"] = args ? args.readerEndpoint : undefined; resourceInputs["securityGroupIds"] = args ? args.securityGroupIds : undefined; resourceInputs["serverlessCacheName"] = args ? args.serverlessCacheName : undefined; resourceInputs["snapshotArnsToRestore"] = args ? args.snapshotArnsToRestore : undefined; @@ -139,9 +141,7 @@ export class ServerlessCache extends pulumi.CustomResource { resourceInputs["userGroupId"] = args ? args.userGroupId : undefined; resourceInputs["arn"] = undefined /*out*/; resourceInputs["createTime"] = undefined /*out*/; - resourceInputs["endpoint"] = undefined /*out*/; resourceInputs["fullEngineVersion"] = undefined /*out*/; - resourceInputs["readerEndpoint"] = undefined /*out*/; resourceInputs["status"] = undefined /*out*/; } else { resourceInputs["arn"] = undefined /*out*/; @@ -185,6 +185,7 @@ export interface ServerlessCacheArgs { * The description of the Serverless Cache. */ description?: pulumi.Input; + endpoint?: pulumi.Input; /** * The engine name of the Serverless Cache. */ @@ -201,6 +202,7 @@ export interface ServerlessCacheArgs { * The major engine version of the Serverless Cache. */ majorEngineVersion?: pulumi.Input; + readerEndpoint?: pulumi.Input; /** * One or more Amazon VPC security groups associated with this Serverless Cache. */ diff --git a/sdk/nodejs/emr/cluster.ts b/sdk/nodejs/emr/cluster.ts index f8fbc820e4..ba6df590af 100644 --- a/sdk/nodejs/emr/cluster.ts +++ b/sdk/nodejs/emr/cluster.ts @@ -47,7 +47,9 @@ export class Cluster extends pulumi.CustomResource { public readonly bootstrapActions!: pulumi.Output; public readonly configurations!: pulumi.Output; public readonly customAmiId!: pulumi.Output; + public readonly ebsRootVolumeIops!: pulumi.Output; public readonly ebsRootVolumeSize!: pulumi.Output; + public readonly ebsRootVolumeThroughput!: pulumi.Output; public readonly instances!: pulumi.Output; public readonly jobFlowRole!: pulumi.Output; public readonly kerberosAttributes!: pulumi.Output; @@ -57,6 +59,7 @@ export class Cluster extends pulumi.CustomResource { public /*out*/ readonly masterPublicDns!: pulumi.Output; public readonly name!: pulumi.Output; public readonly osReleaseLabel!: pulumi.Output; + public readonly placementGroupConfigs!: pulumi.Output; public readonly releaseLabel!: pulumi.Output; public readonly scaleDownBehavior!: pulumi.Output; public readonly securityConfiguration!: pulumi.Output; @@ -95,7 +98,9 @@ export class Cluster extends pulumi.CustomResource { resourceInputs["bootstrapActions"] = args ? args.bootstrapActions : undefined; resourceInputs["configurations"] = args ? args.configurations : undefined; resourceInputs["customAmiId"] = args ? args.customAmiId : undefined; + resourceInputs["ebsRootVolumeIops"] = args ? args.ebsRootVolumeIops : undefined; resourceInputs["ebsRootVolumeSize"] = args ? args.ebsRootVolumeSize : undefined; + resourceInputs["ebsRootVolumeThroughput"] = args ? args.ebsRootVolumeThroughput : undefined; resourceInputs["instances"] = args ? args.instances : undefined; resourceInputs["jobFlowRole"] = args ? args.jobFlowRole : undefined; resourceInputs["kerberosAttributes"] = args ? args.kerberosAttributes : undefined; @@ -104,6 +109,7 @@ export class Cluster extends pulumi.CustomResource { resourceInputs["managedScalingPolicy"] = args ? args.managedScalingPolicy : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["osReleaseLabel"] = args ? args.osReleaseLabel : undefined; + resourceInputs["placementGroupConfigs"] = args ? args.placementGroupConfigs : undefined; resourceInputs["releaseLabel"] = args ? args.releaseLabel : undefined; resourceInputs["scaleDownBehavior"] = args ? args.scaleDownBehavior : undefined; resourceInputs["securityConfiguration"] = args ? args.securityConfiguration : undefined; @@ -121,7 +127,9 @@ export class Cluster extends pulumi.CustomResource { resourceInputs["bootstrapActions"] = undefined /*out*/; resourceInputs["configurations"] = undefined /*out*/; resourceInputs["customAmiId"] = undefined /*out*/; + resourceInputs["ebsRootVolumeIops"] = undefined /*out*/; resourceInputs["ebsRootVolumeSize"] = undefined /*out*/; + resourceInputs["ebsRootVolumeThroughput"] = undefined /*out*/; resourceInputs["instances"] = undefined /*out*/; resourceInputs["jobFlowRole"] = undefined /*out*/; resourceInputs["kerberosAttributes"] = undefined /*out*/; @@ -131,6 +139,7 @@ export class Cluster extends pulumi.CustomResource { resourceInputs["masterPublicDns"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["osReleaseLabel"] = undefined /*out*/; + resourceInputs["placementGroupConfigs"] = undefined /*out*/; resourceInputs["releaseLabel"] = undefined /*out*/; resourceInputs["scaleDownBehavior"] = undefined /*out*/; resourceInputs["securityConfiguration"] = undefined /*out*/; @@ -141,7 +150,7 @@ export class Cluster extends pulumi.CustomResource { resourceInputs["visibleToAllUsers"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["additionalInfo", "applications[*]", "autoScalingRole", "bootstrapActions[*]", "configurations[*]", "customAmiId", "ebsRootVolumeSize", "jobFlowRole", "kerberosAttributes", "logEncryptionKmsKeyId", "logUri", "name", "osReleaseLabel", "releaseLabel", "scaleDownBehavior", "securityConfiguration", "serviceRole", "steps[*]"] }; + const replaceOnChanges = { replaceOnChanges: ["additionalInfo", "applications[*]", "autoScalingRole", "bootstrapActions[*]", "configurations[*]", "customAmiId", "ebsRootVolumeIops", "ebsRootVolumeSize", "ebsRootVolumeThroughput", "jobFlowRole", "kerberosAttributes", "logEncryptionKmsKeyId", "logUri", "name", "osReleaseLabel", "placementGroupConfigs[*]", "releaseLabel", "scaleDownBehavior", "securityConfiguration", "serviceRole", "steps[*]"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Cluster.__pulumiType, name, resourceInputs, opts); } @@ -158,7 +167,9 @@ export interface ClusterArgs { bootstrapActions?: pulumi.Input[]>; configurations?: pulumi.Input[]>; customAmiId?: pulumi.Input; + ebsRootVolumeIops?: pulumi.Input; ebsRootVolumeSize?: pulumi.Input; + ebsRootVolumeThroughput?: pulumi.Input; instances: pulumi.Input; jobFlowRole: pulumi.Input; kerberosAttributes?: pulumi.Input; @@ -167,6 +178,7 @@ export interface ClusterArgs { managedScalingPolicy?: pulumi.Input; name?: pulumi.Input; osReleaseLabel?: pulumi.Input; + placementGroupConfigs?: pulumi.Input[]>; releaseLabel?: pulumi.Input; scaleDownBehavior?: pulumi.Input; securityConfiguration?: pulumi.Input; diff --git a/sdk/nodejs/emr/studio.ts b/sdk/nodejs/emr/studio.ts index de49123b5c..86c0ad991b 100644 --- a/sdk/nodejs/emr/studio.ts +++ b/sdk/nodejs/emr/studio.ts @@ -53,10 +53,22 @@ export class Studio extends pulumi.CustomResource { * A detailed description of the Studio. */ public readonly description!: pulumi.Output; + /** + * The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + */ + public readonly encryptionKeyArn!: pulumi.Output; /** * The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. */ public readonly engineSecurityGroupId!: pulumi.Output; + /** + * The ARN of the IAM Identity Center instance to create the Studio application. + */ + public readonly idcInstanceArn!: pulumi.Output; + /** + * Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + */ + public readonly idcUserAssignment!: pulumi.Output; /** * Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. */ @@ -85,6 +97,10 @@ export class Studio extends pulumi.CustomResource { * A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters. */ public readonly tags!: pulumi.Output; + /** + * A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + */ + public readonly trustedIdentityPropagationEnabled!: pulumi.Output; /** * The unique Studio access URL. */ @@ -137,13 +153,17 @@ export class Studio extends pulumi.CustomResource { resourceInputs["authMode"] = args ? args.authMode : undefined; resourceInputs["defaultS3Location"] = args ? args.defaultS3Location : undefined; resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["encryptionKeyArn"] = args ? args.encryptionKeyArn : undefined; resourceInputs["engineSecurityGroupId"] = args ? args.engineSecurityGroupId : undefined; + resourceInputs["idcInstanceArn"] = args ? args.idcInstanceArn : undefined; + resourceInputs["idcUserAssignment"] = args ? args.idcUserAssignment : undefined; resourceInputs["idpAuthUrl"] = args ? args.idpAuthUrl : undefined; resourceInputs["idpRelayStateParameterName"] = args ? args.idpRelayStateParameterName : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["serviceRole"] = args ? args.serviceRole : undefined; resourceInputs["subnetIds"] = args ? args.subnetIds : undefined; resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["trustedIdentityPropagationEnabled"] = args ? args.trustedIdentityPropagationEnabled : undefined; resourceInputs["userRole"] = args ? args.userRole : undefined; resourceInputs["vpcId"] = args ? args.vpcId : undefined; resourceInputs["workspaceSecurityGroupId"] = args ? args.workspaceSecurityGroupId : undefined; @@ -155,7 +175,10 @@ export class Studio extends pulumi.CustomResource { resourceInputs["authMode"] = undefined /*out*/; resourceInputs["defaultS3Location"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; + resourceInputs["encryptionKeyArn"] = undefined /*out*/; resourceInputs["engineSecurityGroupId"] = undefined /*out*/; + resourceInputs["idcInstanceArn"] = undefined /*out*/; + resourceInputs["idcUserAssignment"] = undefined /*out*/; resourceInputs["idpAuthUrl"] = undefined /*out*/; resourceInputs["idpRelayStateParameterName"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; @@ -163,13 +186,14 @@ export class Studio extends pulumi.CustomResource { resourceInputs["studioId"] = undefined /*out*/; resourceInputs["subnetIds"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; + resourceInputs["trustedIdentityPropagationEnabled"] = undefined /*out*/; resourceInputs["url"] = undefined /*out*/; resourceInputs["userRole"] = undefined /*out*/; resourceInputs["vpcId"] = undefined /*out*/; resourceInputs["workspaceSecurityGroupId"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["authMode", "engineSecurityGroupId", "serviceRole", "userRole", "vpcId", "workspaceSecurityGroupId"] }; + const replaceOnChanges = { replaceOnChanges: ["authMode", "encryptionKeyArn", "engineSecurityGroupId", "idcInstanceArn", "idcUserAssignment", "serviceRole", "trustedIdentityPropagationEnabled", "userRole", "vpcId", "workspaceSecurityGroupId"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Studio.__pulumiType, name, resourceInputs, opts); } @@ -191,10 +215,22 @@ export interface StudioArgs { * A detailed description of the Studio. */ description?: pulumi.Input; + /** + * The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + */ + encryptionKeyArn?: pulumi.Input; /** * The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. */ engineSecurityGroupId: pulumi.Input; + /** + * The ARN of the IAM Identity Center instance to create the Studio application. + */ + idcInstanceArn?: pulumi.Input; + /** + * Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + */ + idcUserAssignment?: pulumi.Input; /** * Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. */ @@ -219,6 +255,10 @@ export interface StudioArgs { * A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters. */ tags?: pulumi.Input[]>; + /** + * A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + */ + trustedIdentityPropagationEnabled?: pulumi.Input; /** * The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies. */ diff --git a/sdk/nodejs/eventschemas/discoverer.ts b/sdk/nodejs/eventschemas/discoverer.ts index fe33ba936a..094d2cc169 100644 --- a/sdk/nodejs/eventschemas/discoverer.ts +++ b/sdk/nodejs/eventschemas/discoverer.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::EventSchemas::Discoverer - * - * @deprecated Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class Discoverer extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class Discoverer extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Discoverer { - pulumi.log.warn("Discoverer is deprecated: Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new Discoverer(name, undefined as any, { ...opts, id: id }); } @@ -40,11 +37,33 @@ export class Discoverer extends pulumi.CustomResource { return obj['__pulumiType'] === Discoverer.__pulumiType; } + /** + * Defines whether event schemas from other accounts are discovered. Default is True. + */ public readonly crossAccount!: pulumi.Output; + /** + * A description for the discoverer. + */ public readonly description!: pulumi.Output; + /** + * The ARN of the discoverer. + */ public /*out*/ readonly discovererArn!: pulumi.Output; + /** + * The Id of the discoverer. + */ public /*out*/ readonly discovererId!: pulumi.Output; + /** + * The ARN of the event bus. + */ public readonly sourceArn!: pulumi.Output; + /** + * Defines the current state of the discoverer. + */ + public /*out*/ readonly state!: pulumi.Output; + /** + * Tags associated with the resource. + */ public readonly tags!: pulumi.Output; /** @@ -54,9 +73,7 @@ export class Discoverer extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args: DiscovererArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("Discoverer is deprecated: Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -69,12 +86,14 @@ export class Discoverer extends pulumi.CustomResource { resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["discovererArn"] = undefined /*out*/; resourceInputs["discovererId"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; } else { resourceInputs["crossAccount"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; resourceInputs["discovererArn"] = undefined /*out*/; resourceInputs["discovererId"] = undefined /*out*/; resourceInputs["sourceArn"] = undefined /*out*/; + resourceInputs["state"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -88,8 +107,20 @@ export class Discoverer extends pulumi.CustomResource { * The set of arguments for constructing a Discoverer resource. */ export interface DiscovererArgs { + /** + * Defines whether event schemas from other accounts are discovered. Default is True. + */ crossAccount?: pulumi.Input; + /** + * A description for the discoverer. + */ description?: pulumi.Input; + /** + * The ARN of the event bus. + */ sourceArn: pulumi.Input; + /** + * Tags associated with the resource. + */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/eventschemas/getDiscoverer.ts b/sdk/nodejs/eventschemas/getDiscoverer.ts index dd900a9bdd..17240534df 100644 --- a/sdk/nodejs/eventschemas/getDiscoverer.ts +++ b/sdk/nodejs/eventschemas/getDiscoverer.ts @@ -14,19 +14,41 @@ export function getDiscoverer(args: GetDiscovererArgs, opts?: pulumi.InvokeOptio opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:eventschemas:getDiscoverer", { - "discovererId": args.discovererId, + "discovererArn": args.discovererArn, }, opts); } export interface GetDiscovererArgs { - discovererId: string; + /** + * The ARN of the discoverer. + */ + discovererArn: string; } export interface GetDiscovererResult { + /** + * Defines whether event schemas from other accounts are discovered. Default is True. + */ readonly crossAccount?: boolean; + /** + * A description for the discoverer. + */ readonly description?: string; + /** + * The ARN of the discoverer. + */ readonly discovererArn?: string; + /** + * The Id of the discoverer. + */ readonly discovererId?: string; + /** + * Defines the current state of the discoverer. + */ + readonly state?: string; + /** + * Tags associated with the resource. + */ readonly tags?: outputs.eventschemas.DiscovererTagsEntry[]; } /** @@ -37,5 +59,8 @@ export function getDiscovererOutput(args: GetDiscovererOutputArgs, opts?: pulumi } export interface GetDiscovererOutputArgs { - discovererId: pulumi.Input; + /** + * The ARN of the discoverer. + */ + discovererArn: pulumi.Input; } diff --git a/sdk/nodejs/eventschemas/getRegistry.ts b/sdk/nodejs/eventschemas/getRegistry.ts index 0e4fff959f..718c1f2181 100644 --- a/sdk/nodejs/eventschemas/getRegistry.ts +++ b/sdk/nodejs/eventschemas/getRegistry.ts @@ -14,18 +14,29 @@ export function getRegistry(args: GetRegistryArgs, opts?: pulumi.InvokeOptions): opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:eventschemas:getRegistry", { - "id": args.id, + "registryArn": args.registryArn, }, opts); } export interface GetRegistryArgs { - id: string; + /** + * The ARN of the registry. + */ + registryArn: string; } export interface GetRegistryResult { + /** + * A description of the registry to be created. + */ readonly description?: string; - readonly id?: string; + /** + * The ARN of the registry. + */ readonly registryArn?: string; + /** + * Tags associated with the resource. + */ readonly tags?: outputs.eventschemas.RegistryTagsEntry[]; } /** @@ -36,5 +47,8 @@ export function getRegistryOutput(args: GetRegistryOutputArgs, opts?: pulumi.Inv } export interface GetRegistryOutputArgs { - id: pulumi.Input; + /** + * The ARN of the registry. + */ + registryArn: pulumi.Input; } diff --git a/sdk/nodejs/eventschemas/getSchema.ts b/sdk/nodejs/eventschemas/getSchema.ts index 086428e754..9320f0598b 100644 --- a/sdk/nodejs/eventschemas/getSchema.ts +++ b/sdk/nodejs/eventschemas/getSchema.ts @@ -14,22 +14,50 @@ export function getSchema(args: GetSchemaArgs, opts?: pulumi.InvokeOptions): Pro opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:eventschemas:getSchema", { - "id": args.id, + "schemaArn": args.schemaArn, }, opts); } export interface GetSchemaArgs { - id: string; + /** + * The ARN of the schema. + */ + schemaArn: string; } export interface GetSchemaResult { + /** + * The source of the schema definition. + */ readonly content?: string; + /** + * A description of the schema. + */ readonly description?: string; - readonly id?: string; + /** + * The last modified time of the schema. + */ + readonly lastModified?: string; + /** + * The ARN of the schema. + */ readonly schemaArn?: string; + /** + * The version number of the schema. + */ readonly schemaVersion?: string; + /** + * Tags associated with the resource. + */ readonly tags?: outputs.eventschemas.SchemaTagsEntry[]; + /** + * The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + */ readonly type?: string; + /** + * The date the schema version was created. + */ + readonly versionCreatedDate?: string; } /** * Resource Type definition for AWS::EventSchemas::Schema @@ -39,5 +67,8 @@ export function getSchemaOutput(args: GetSchemaOutputArgs, opts?: pulumi.InvokeO } export interface GetSchemaOutputArgs { - id: pulumi.Input; + /** + * The ARN of the schema. + */ + schemaArn: pulumi.Input; } diff --git a/sdk/nodejs/eventschemas/registry.ts b/sdk/nodejs/eventschemas/registry.ts index e218b62235..4b289d4624 100644 --- a/sdk/nodejs/eventschemas/registry.ts +++ b/sdk/nodejs/eventschemas/registry.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::EventSchemas::Registry - * - * @deprecated Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class Registry extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class Registry extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Registry { - pulumi.log.warn("Registry is deprecated: Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new Registry(name, undefined as any, { ...opts, id: id }); } @@ -40,9 +37,21 @@ export class Registry extends pulumi.CustomResource { return obj['__pulumiType'] === Registry.__pulumiType; } + /** + * A description of the registry to be created. + */ public readonly description!: pulumi.Output; + /** + * The ARN of the registry. + */ public /*out*/ readonly registryArn!: pulumi.Output; + /** + * The name of the schema registry. + */ public readonly registryName!: pulumi.Output; + /** + * Tags associated with the resource. + */ public readonly tags!: pulumi.Output; /** @@ -52,9 +61,7 @@ export class Registry extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args?: RegistryArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("Registry is deprecated: Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -79,7 +86,16 @@ export class Registry extends pulumi.CustomResource { * The set of arguments for constructing a Registry resource. */ export interface RegistryArgs { + /** + * A description of the registry to be created. + */ description?: pulumi.Input; + /** + * The name of the schema registry. + */ registryName?: pulumi.Input; + /** + * Tags associated with the resource. + */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/eventschemas/schema.ts b/sdk/nodejs/eventschemas/schema.ts index a727662604..2a9199277d 100644 --- a/sdk/nodejs/eventschemas/schema.ts +++ b/sdk/nodejs/eventschemas/schema.ts @@ -9,8 +9,6 @@ import * as utilities from "../utilities"; /** * Resource Type definition for AWS::EventSchemas::Schema - * - * @deprecated Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ export class Schema extends pulumi.CustomResource { /** @@ -22,7 +20,6 @@ export class Schema extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Schema { - pulumi.log.warn("Schema is deprecated: Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new Schema(name, undefined as any, { ...opts, id: id }); } @@ -40,14 +37,46 @@ export class Schema extends pulumi.CustomResource { return obj['__pulumiType'] === Schema.__pulumiType; } + /** + * The source of the schema definition. + */ public readonly content!: pulumi.Output; + /** + * A description of the schema. + */ public readonly description!: pulumi.Output; + /** + * The last modified time of the schema. + */ + public /*out*/ readonly lastModified!: pulumi.Output; + /** + * The name of the schema registry. + */ public readonly registryName!: pulumi.Output; + /** + * The ARN of the schema. + */ public /*out*/ readonly schemaArn!: pulumi.Output; + /** + * The name of the schema. + */ public readonly schemaName!: pulumi.Output; + /** + * The version number of the schema. + */ public /*out*/ readonly schemaVersion!: pulumi.Output; + /** + * Tags associated with the resource. + */ public readonly tags!: pulumi.Output; + /** + * The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + */ public readonly type!: pulumi.Output; + /** + * The date the schema version was created. + */ + public /*out*/ readonly versionCreatedDate!: pulumi.Output; /** * Create a Schema resource with the given unique name, arguments, and options. @@ -56,9 +85,7 @@ export class Schema extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args: SchemaArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("Schema is deprecated: Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -77,17 +104,21 @@ export class Schema extends pulumi.CustomResource { resourceInputs["schemaName"] = args ? args.schemaName : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["type"] = args ? args.type : undefined; + resourceInputs["lastModified"] = undefined /*out*/; resourceInputs["schemaArn"] = undefined /*out*/; resourceInputs["schemaVersion"] = undefined /*out*/; + resourceInputs["versionCreatedDate"] = undefined /*out*/; } else { resourceInputs["content"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; + resourceInputs["lastModified"] = undefined /*out*/; resourceInputs["registryName"] = undefined /*out*/; resourceInputs["schemaArn"] = undefined /*out*/; resourceInputs["schemaName"] = undefined /*out*/; resourceInputs["schemaVersion"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; resourceInputs["type"] = undefined /*out*/; + resourceInputs["versionCreatedDate"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); const replaceOnChanges = { replaceOnChanges: ["registryName", "schemaName"] }; @@ -100,10 +131,28 @@ export class Schema extends pulumi.CustomResource { * The set of arguments for constructing a Schema resource. */ export interface SchemaArgs { + /** + * The source of the schema definition. + */ content: pulumi.Input; + /** + * A description of the schema. + */ description?: pulumi.Input; + /** + * The name of the schema registry. + */ registryName: pulumi.Input; + /** + * The name of the schema. + */ schemaName?: pulumi.Input; + /** + * Tags associated with the resource. + */ tags?: pulumi.Input[]>; + /** + * The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + */ type: pulumi.Input; } diff --git a/sdk/nodejs/fis/experimentTemplate.ts b/sdk/nodejs/fis/experimentTemplate.ts index 2845022d4f..99bc6a1ee9 100644 --- a/sdk/nodejs/fis/experimentTemplate.ts +++ b/sdk/nodejs/fis/experimentTemplate.ts @@ -39,6 +39,7 @@ export class ExperimentTemplate extends pulumi.CustomResource { public readonly actions!: pulumi.Output; public readonly description!: pulumi.Output; + public readonly experimentOptions!: pulumi.Output; public readonly logConfiguration!: pulumi.Output; public readonly roleArn!: pulumi.Output; public readonly stopConditions!: pulumi.Output; @@ -73,6 +74,7 @@ export class ExperimentTemplate extends pulumi.CustomResource { } resourceInputs["actions"] = args ? args.actions : undefined; resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["experimentOptions"] = args ? args.experimentOptions : undefined; resourceInputs["logConfiguration"] = args ? args.logConfiguration : undefined; resourceInputs["roleArn"] = args ? args.roleArn : undefined; resourceInputs["stopConditions"] = args ? args.stopConditions : undefined; @@ -81,6 +83,7 @@ export class ExperimentTemplate extends pulumi.CustomResource { } else { resourceInputs["actions"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; + resourceInputs["experimentOptions"] = undefined /*out*/; resourceInputs["logConfiguration"] = undefined /*out*/; resourceInputs["roleArn"] = undefined /*out*/; resourceInputs["stopConditions"] = undefined /*out*/; @@ -100,6 +103,7 @@ export class ExperimentTemplate extends pulumi.CustomResource { export interface ExperimentTemplateArgs { actions?: pulumi.Input; description: pulumi.Input; + experimentOptions?: pulumi.Input; logConfiguration?: pulumi.Input; roleArn: pulumi.Input; stopConditions: pulumi.Input[]>; diff --git a/sdk/nodejs/fis/getExperimentTemplate.ts b/sdk/nodejs/fis/getExperimentTemplate.ts index 93204d8601..b7d8991fd0 100644 --- a/sdk/nodejs/fis/getExperimentTemplate.ts +++ b/sdk/nodejs/fis/getExperimentTemplate.ts @@ -25,6 +25,7 @@ export interface GetExperimentTemplateArgs { export interface GetExperimentTemplateResult { readonly actions?: outputs.fis.ExperimentTemplateActionMap; readonly description?: string; + readonly experimentOptions?: outputs.fis.ExperimentTemplateExperimentOptions; readonly id?: string; readonly logConfiguration?: outputs.fis.ExperimentTemplateLogConfiguration; readonly roleArn?: string; diff --git a/sdk/nodejs/fis/getTargetAccountConfiguration.ts b/sdk/nodejs/fis/getTargetAccountConfiguration.ts new file mode 100644 index 0000000000..9393887cb1 --- /dev/null +++ b/sdk/nodejs/fis/getTargetAccountConfiguration.ts @@ -0,0 +1,38 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::FIS::TargetAccountConfiguration + */ +export function getTargetAccountConfiguration(args: GetTargetAccountConfigurationArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:fis:getTargetAccountConfiguration", { + "accountId": args.accountId, + "experimentTemplateId": args.experimentTemplateId, + }, opts); +} + +export interface GetTargetAccountConfigurationArgs { + accountId: string; + experimentTemplateId: string; +} + +export interface GetTargetAccountConfigurationResult { + readonly description?: string; + readonly roleArn?: string; +} +/** + * Resource schema for AWS::FIS::TargetAccountConfiguration + */ +export function getTargetAccountConfigurationOutput(args: GetTargetAccountConfigurationOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getTargetAccountConfiguration(a, opts)) +} + +export interface GetTargetAccountConfigurationOutputArgs { + accountId: pulumi.Input; + experimentTemplateId: pulumi.Input; +} diff --git a/sdk/nodejs/fis/index.ts b/sdk/nodejs/fis/index.ts index f5bcdc03ac..e5777689b8 100644 --- a/sdk/nodejs/fis/index.ts +++ b/sdk/nodejs/fis/index.ts @@ -15,6 +15,19 @@ export const getExperimentTemplate: typeof import("./getExperimentTemplate").get export const getExperimentTemplateOutput: typeof import("./getExperimentTemplate").getExperimentTemplateOutput = null as any; utilities.lazyLoad(exports, ["getExperimentTemplate","getExperimentTemplateOutput"], () => require("./getExperimentTemplate")); +export { GetTargetAccountConfigurationArgs, GetTargetAccountConfigurationResult, GetTargetAccountConfigurationOutputArgs } from "./getTargetAccountConfiguration"; +export const getTargetAccountConfiguration: typeof import("./getTargetAccountConfiguration").getTargetAccountConfiguration = null as any; +export const getTargetAccountConfigurationOutput: typeof import("./getTargetAccountConfiguration").getTargetAccountConfigurationOutput = null as any; +utilities.lazyLoad(exports, ["getTargetAccountConfiguration","getTargetAccountConfigurationOutput"], () => require("./getTargetAccountConfiguration")); + +export { TargetAccountConfigurationArgs } from "./targetAccountConfiguration"; +export type TargetAccountConfiguration = import("./targetAccountConfiguration").TargetAccountConfiguration; +export const TargetAccountConfiguration: typeof import("./targetAccountConfiguration").TargetAccountConfiguration = null as any; +utilities.lazyLoad(exports, ["TargetAccountConfiguration"], () => require("./targetAccountConfiguration")); + + +// Export enums: +export * from "../types/enums/fis"; const _module = { version: utilities.getVersion(), @@ -22,6 +35,8 @@ const _module = { switch (type) { case "aws-native:fis:ExperimentTemplate": return new ExperimentTemplate(name, undefined, { urn }) + case "aws-native:fis:TargetAccountConfiguration": + return new TargetAccountConfiguration(name, undefined, { urn }) default: throw new Error(`unknown resource type ${type}`); } diff --git a/sdk/nodejs/fis/targetAccountConfiguration.ts b/sdk/nodejs/fis/targetAccountConfiguration.ts new file mode 100644 index 0000000000..2ffc975147 --- /dev/null +++ b/sdk/nodejs/fis/targetAccountConfiguration.ts @@ -0,0 +1,87 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::FIS::TargetAccountConfiguration + */ +export class TargetAccountConfiguration extends pulumi.CustomResource { + /** + * Get an existing TargetAccountConfiguration 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): TargetAccountConfiguration { + return new TargetAccountConfiguration(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:fis:TargetAccountConfiguration'; + + /** + * Returns true if the given object is an instance of TargetAccountConfiguration. 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 TargetAccountConfiguration { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === TargetAccountConfiguration.__pulumiType; + } + + public readonly accountId!: pulumi.Output; + public readonly description!: pulumi.Output; + public readonly experimentTemplateId!: pulumi.Output; + public readonly roleArn!: pulumi.Output; + + /** + * Create a TargetAccountConfiguration 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: TargetAccountConfigurationArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.accountId === undefined) && !opts.urn) { + throw new Error("Missing required property 'accountId'"); + } + if ((!args || args.experimentTemplateId === undefined) && !opts.urn) { + throw new Error("Missing required property 'experimentTemplateId'"); + } + if ((!args || args.roleArn === undefined) && !opts.urn) { + throw new Error("Missing required property 'roleArn'"); + } + resourceInputs["accountId"] = args ? args.accountId : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["experimentTemplateId"] = args ? args.experimentTemplateId : undefined; + resourceInputs["roleArn"] = args ? args.roleArn : undefined; + } else { + resourceInputs["accountId"] = undefined /*out*/; + resourceInputs["description"] = undefined /*out*/; + resourceInputs["experimentTemplateId"] = undefined /*out*/; + resourceInputs["roleArn"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["accountId", "experimentTemplateId"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(TargetAccountConfiguration.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a TargetAccountConfiguration resource. + */ +export interface TargetAccountConfigurationArgs { + accountId: pulumi.Input; + description?: pulumi.Input; + experimentTemplateId: pulumi.Input; + roleArn: pulumi.Input; +} diff --git a/sdk/nodejs/gamelift/fleet.ts b/sdk/nodejs/gamelift/fleet.ts index c952e1ad1b..14133048a1 100644 --- a/sdk/nodejs/gamelift/fleet.ts +++ b/sdk/nodejs/gamelift/fleet.ts @@ -41,6 +41,10 @@ export class Fleet extends pulumi.CustomResource { * Configuration for Anywhere fleet. */ public readonly anywhereConfiguration!: pulumi.Output; + /** + * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + */ + public readonly applyCapacity!: pulumi.Output; /** * A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. */ @@ -159,6 +163,7 @@ export class Fleet extends pulumi.CustomResource { opts = opts || {}; if (!opts.id) { resourceInputs["anywhereConfiguration"] = args ? args.anywhereConfiguration : undefined; + resourceInputs["applyCapacity"] = args ? args.applyCapacity : undefined; resourceInputs["buildId"] = args ? args.buildId : undefined; resourceInputs["certificateConfiguration"] = args ? args.certificateConfiguration : undefined; resourceInputs["computeType"] = args ? args.computeType : undefined; @@ -187,6 +192,7 @@ export class Fleet extends pulumi.CustomResource { resourceInputs["fleetId"] = undefined /*out*/; } else { resourceInputs["anywhereConfiguration"] = undefined /*out*/; + resourceInputs["applyCapacity"] = undefined /*out*/; resourceInputs["buildId"] = undefined /*out*/; resourceInputs["certificateConfiguration"] = undefined /*out*/; resourceInputs["computeType"] = undefined /*out*/; @@ -215,7 +221,7 @@ export class Fleet extends pulumi.CustomResource { resourceInputs["serverLaunchPath"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["buildId", "certificateConfiguration", "computeType", "ec2InstanceType", "fleetType", "instanceRoleArn", "instanceRoleCredentialsProvider", "logPaths[*]", "peerVpcAwsAccountId", "peerVpcId", "scriptId", "serverLaunchParameters", "serverLaunchPath"] }; + const replaceOnChanges = { replaceOnChanges: ["applyCapacity", "buildId", "certificateConfiguration", "computeType", "ec2InstanceType", "fleetType", "instanceRoleArn", "instanceRoleCredentialsProvider", "logPaths[*]", "peerVpcAwsAccountId", "peerVpcId", "scriptId", "serverLaunchParameters", "serverLaunchPath"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Fleet.__pulumiType, name, resourceInputs, opts); } @@ -229,6 +235,10 @@ export interface FleetArgs { * Configuration for Anywhere fleet. */ anywhereConfiguration?: pulumi.Input; + /** + * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + */ + applyCapacity?: pulumi.Input; /** * A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. */ diff --git a/sdk/nodejs/identitystore/getGroupMembership.ts b/sdk/nodejs/identitystore/getGroupMembership.ts index 2ee8bc2cfa..d594ab0898 100644 --- a/sdk/nodejs/identitystore/getGroupMembership.ts +++ b/sdk/nodejs/identitystore/getGroupMembership.ts @@ -2,9 +2,6 @@ // *** 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"; /** @@ -31,14 +28,6 @@ export interface GetGroupMembershipArgs { } export interface GetGroupMembershipResult { - /** - * The unique identifier for a group in the identity store. - */ - readonly groupId?: string; - /** - * An object containing the identifier of a group member. - */ - readonly memberId?: outputs.identitystore.GroupMembershipMemberId; /** * The identifier for a GroupMembership in the identity store. */ diff --git a/sdk/nodejs/identitystore/groupMembership.ts b/sdk/nodejs/identitystore/groupMembership.ts index a29248abca..43092e9b33 100644 --- a/sdk/nodejs/identitystore/groupMembership.ts +++ b/sdk/nodejs/identitystore/groupMembership.ts @@ -85,7 +85,7 @@ export class GroupMembership extends pulumi.CustomResource { resourceInputs["membershipId"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["identityStoreId"] }; + const replaceOnChanges = { replaceOnChanges: ["groupId", "identityStoreId", "memberId"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(GroupMembership.__pulumiType, name, resourceInputs, opts); } diff --git a/sdk/nodejs/imagebuilder/getImage.ts b/sdk/nodejs/imagebuilder/getImage.ts index 5d0bca9ced..6501c3ad52 100644 --- a/sdk/nodejs/imagebuilder/getImage.ts +++ b/sdk/nodejs/imagebuilder/getImage.ts @@ -27,6 +27,10 @@ export interface GetImageResult { * The Amazon Resource Name (ARN) of the image. */ readonly arn?: string; + /** + * The execution role name/ARN for the image build, if provided + */ + readonly executionRole?: string; /** * The AMI ID of the EC2 AMI in current region. */ diff --git a/sdk/nodejs/imagebuilder/getImagePipeline.ts b/sdk/nodejs/imagebuilder/getImagePipeline.ts index e5c2694eed..db31dd47f7 100644 --- a/sdk/nodejs/imagebuilder/getImagePipeline.ts +++ b/sdk/nodejs/imagebuilder/getImagePipeline.ts @@ -46,6 +46,10 @@ export interface GetImagePipelineResult { * Collects additional information about the image being created, including the operating system (OS) version and package list. */ readonly enhancedImageMetadataEnabled?: boolean; + /** + * The execution role name/ARN for the image build, if provided + */ + readonly executionRole?: string; /** * The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. */ @@ -74,6 +78,10 @@ export interface GetImagePipelineResult { * The tags of this image pipeline. */ readonly tags?: any; + /** + * Workflows to define the image build process + */ + readonly workflows?: outputs.imagebuilder.ImagePipelineWorkflowConfiguration[]; } /** * Resource schema for AWS::ImageBuilder::ImagePipeline diff --git a/sdk/nodejs/imagebuilder/getWorkflow.ts b/sdk/nodejs/imagebuilder/getWorkflow.ts new file mode 100644 index 0000000000..2c49844aee --- /dev/null +++ b/sdk/nodejs/imagebuilder/getWorkflow.ts @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::ImageBuilder::Workflow + */ +export function getWorkflow(args: GetWorkflowArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:imagebuilder:getWorkflow", { + "arn": args.arn, + }, opts); +} + +export interface GetWorkflowArgs { + /** + * The Amazon Resource Name (ARN) of the workflow. + */ + arn: string; +} + +export interface GetWorkflowResult { + /** + * The Amazon Resource Name (ARN) of the workflow. + */ + readonly arn?: string; +} +/** + * Resource schema for AWS::ImageBuilder::Workflow + */ +export function getWorkflowOutput(args: GetWorkflowOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getWorkflow(a, opts)) +} + +export interface GetWorkflowOutputArgs { + /** + * The Amazon Resource Name (ARN) of the workflow. + */ + arn: pulumi.Input; +} diff --git a/sdk/nodejs/imagebuilder/image.ts b/sdk/nodejs/imagebuilder/image.ts index 05d9b1c007..35f9d18443 100644 --- a/sdk/nodejs/imagebuilder/image.ts +++ b/sdk/nodejs/imagebuilder/image.ts @@ -53,6 +53,10 @@ export class Image extends pulumi.CustomResource { * Collects additional information about the image being created, including the operating system (OS) version and package list. */ public readonly enhancedImageMetadataEnabled!: pulumi.Output; + /** + * The execution role name/ARN for the image build, if provided + */ + public readonly executionRole!: pulumi.Output; /** * The AMI ID of the EC2 AMI in current region. */ @@ -85,6 +89,10 @@ export class Image extends pulumi.CustomResource { * The tags associated with the image. */ public readonly tags!: pulumi.Output; + /** + * Workflows to define the image build process + */ + public readonly workflows!: pulumi.Output; /** * Create a Image resource with the given unique name, arguments, and options. @@ -100,11 +108,13 @@ export class Image extends pulumi.CustomResource { resourceInputs["containerRecipeArn"] = args ? args.containerRecipeArn : undefined; resourceInputs["distributionConfigurationArn"] = args ? args.distributionConfigurationArn : undefined; resourceInputs["enhancedImageMetadataEnabled"] = args ? args.enhancedImageMetadataEnabled : undefined; + resourceInputs["executionRole"] = args ? args.executionRole : undefined; resourceInputs["imageRecipeArn"] = args ? args.imageRecipeArn : undefined; resourceInputs["imageScanningConfiguration"] = args ? args.imageScanningConfiguration : undefined; resourceInputs["imageTestsConfiguration"] = args ? args.imageTestsConfiguration : undefined; resourceInputs["infrastructureConfigurationArn"] = args ? args.infrastructureConfigurationArn : undefined; resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["workflows"] = args ? args.workflows : undefined; resourceInputs["arn"] = undefined /*out*/; resourceInputs["imageId"] = undefined /*out*/; resourceInputs["imageUri"] = undefined /*out*/; @@ -114,6 +124,7 @@ export class Image extends pulumi.CustomResource { resourceInputs["containerRecipeArn"] = undefined /*out*/; resourceInputs["distributionConfigurationArn"] = undefined /*out*/; resourceInputs["enhancedImageMetadataEnabled"] = undefined /*out*/; + resourceInputs["executionRole"] = undefined /*out*/; resourceInputs["imageId"] = undefined /*out*/; resourceInputs["imageRecipeArn"] = undefined /*out*/; resourceInputs["imageScanningConfiguration"] = undefined /*out*/; @@ -122,9 +133,10 @@ export class Image extends pulumi.CustomResource { resourceInputs["infrastructureConfigurationArn"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; + resourceInputs["workflows"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["containerRecipeArn", "distributionConfigurationArn", "enhancedImageMetadataEnabled", "imageRecipeArn", "imageScanningConfiguration", "imageTestsConfiguration", "infrastructureConfigurationArn", "tags"] }; + const replaceOnChanges = { replaceOnChanges: ["containerRecipeArn", "distributionConfigurationArn", "enhancedImageMetadataEnabled", "imageRecipeArn", "imageScanningConfiguration", "imageTestsConfiguration", "infrastructureConfigurationArn", "tags", "workflows[*]"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Image.__pulumiType, name, resourceInputs, opts); } @@ -146,6 +158,10 @@ export interface ImageArgs { * Collects additional information about the image being created, including the operating system (OS) version and package list. */ enhancedImageMetadataEnabled?: pulumi.Input; + /** + * The execution role name/ARN for the image build, if provided + */ + executionRole?: pulumi.Input; /** * The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. */ @@ -166,4 +182,8 @@ export interface ImageArgs { * The tags associated with the image. */ tags?: any; + /** + * Workflows to define the image build process + */ + workflows?: pulumi.Input[]>; } diff --git a/sdk/nodejs/imagebuilder/imagePipeline.ts b/sdk/nodejs/imagebuilder/imagePipeline.ts index e10fb69c3b..890062069d 100644 --- a/sdk/nodejs/imagebuilder/imagePipeline.ts +++ b/sdk/nodejs/imagebuilder/imagePipeline.ts @@ -57,6 +57,10 @@ export class ImagePipeline extends pulumi.CustomResource { * Collects additional information about the image being created, including the operating system (OS) version and package list. */ public readonly enhancedImageMetadataEnabled!: pulumi.Output; + /** + * The execution role name/ARN for the image build, if provided + */ + public readonly executionRole!: pulumi.Output; /** * The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. */ @@ -89,6 +93,10 @@ export class ImagePipeline extends pulumi.CustomResource { * The tags of this image pipeline. */ public readonly tags!: pulumi.Output; + /** + * Workflows to define the image build process + */ + public readonly workflows!: pulumi.Output; /** * Create a ImagePipeline resource with the given unique name, arguments, and options. @@ -105,6 +113,7 @@ export class ImagePipeline extends pulumi.CustomResource { resourceInputs["description"] = args ? args.description : undefined; resourceInputs["distributionConfigurationArn"] = args ? args.distributionConfigurationArn : undefined; resourceInputs["enhancedImageMetadataEnabled"] = args ? args.enhancedImageMetadataEnabled : undefined; + resourceInputs["executionRole"] = args ? args.executionRole : undefined; resourceInputs["imageRecipeArn"] = args ? args.imageRecipeArn : undefined; resourceInputs["imageScanningConfiguration"] = args ? args.imageScanningConfiguration : undefined; resourceInputs["imageTestsConfiguration"] = args ? args.imageTestsConfiguration : undefined; @@ -113,6 +122,7 @@ export class ImagePipeline extends pulumi.CustomResource { resourceInputs["schedule"] = args ? args.schedule : undefined; resourceInputs["status"] = args ? args.status : undefined; resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["workflows"] = args ? args.workflows : undefined; resourceInputs["arn"] = undefined /*out*/; } else { resourceInputs["arn"] = undefined /*out*/; @@ -120,6 +130,7 @@ export class ImagePipeline extends pulumi.CustomResource { resourceInputs["description"] = undefined /*out*/; resourceInputs["distributionConfigurationArn"] = undefined /*out*/; resourceInputs["enhancedImageMetadataEnabled"] = undefined /*out*/; + resourceInputs["executionRole"] = undefined /*out*/; resourceInputs["imageRecipeArn"] = undefined /*out*/; resourceInputs["imageScanningConfiguration"] = undefined /*out*/; resourceInputs["imageTestsConfiguration"] = undefined /*out*/; @@ -128,6 +139,7 @@ export class ImagePipeline extends pulumi.CustomResource { resourceInputs["schedule"] = undefined /*out*/; resourceInputs["status"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; + resourceInputs["workflows"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); const replaceOnChanges = { replaceOnChanges: ["name"] }; @@ -156,6 +168,10 @@ export interface ImagePipelineArgs { * Collects additional information about the image being created, including the operating system (OS) version and package list. */ enhancedImageMetadataEnabled?: pulumi.Input; + /** + * The execution role name/ARN for the image build, if provided + */ + executionRole?: pulumi.Input; /** * The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. */ @@ -188,4 +204,8 @@ export interface ImagePipelineArgs { * The tags of this image pipeline. */ tags?: any; + /** + * Workflows to define the image build process + */ + workflows?: pulumi.Input[]>; } diff --git a/sdk/nodejs/imagebuilder/index.ts b/sdk/nodejs/imagebuilder/index.ts index f759b6adf0..61c98a1187 100644 --- a/sdk/nodejs/imagebuilder/index.ts +++ b/sdk/nodejs/imagebuilder/index.ts @@ -60,6 +60,11 @@ export const getLifecyclePolicy: typeof import("./getLifecyclePolicy").getLifecy export const getLifecyclePolicyOutput: typeof import("./getLifecyclePolicy").getLifecyclePolicyOutput = null as any; utilities.lazyLoad(exports, ["getLifecyclePolicy","getLifecyclePolicyOutput"], () => require("./getLifecyclePolicy")); +export { GetWorkflowArgs, GetWorkflowResult, GetWorkflowOutputArgs } from "./getWorkflow"; +export const getWorkflow: typeof import("./getWorkflow").getWorkflow = null as any; +export const getWorkflowOutput: typeof import("./getWorkflow").getWorkflowOutput = null as any; +utilities.lazyLoad(exports, ["getWorkflow","getWorkflowOutput"], () => require("./getWorkflow")); + export { ImageArgs } from "./image"; export type Image = import("./image").Image; export const Image: typeof import("./image").Image = null as any; @@ -85,6 +90,11 @@ export type LifecyclePolicy = import("./lifecyclePolicy").LifecyclePolicy; export const LifecyclePolicy: typeof import("./lifecyclePolicy").LifecyclePolicy = null as any; utilities.lazyLoad(exports, ["LifecyclePolicy"], () => require("./lifecyclePolicy")); +export { WorkflowArgs } from "./workflow"; +export type Workflow = import("./workflow").Workflow; +export const Workflow: typeof import("./workflow").Workflow = null as any; +utilities.lazyLoad(exports, ["Workflow"], () => require("./workflow")); + // Export enums: export * from "../types/enums/imagebuilder"; @@ -109,6 +119,8 @@ const _module = { return new InfrastructureConfiguration(name, undefined, { urn }) case "aws-native:imagebuilder:LifecyclePolicy": return new LifecyclePolicy(name, undefined, { urn }) + case "aws-native:imagebuilder:Workflow": + return new Workflow(name, undefined, { urn }) default: throw new Error(`unknown resource type ${type}`); } diff --git a/sdk/nodejs/imagebuilder/workflow.ts b/sdk/nodejs/imagebuilder/workflow.ts new file mode 100644 index 0000000000..2e2ee6ce69 --- /dev/null +++ b/sdk/nodejs/imagebuilder/workflow.ts @@ -0,0 +1,167 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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::ImageBuilder::Workflow + */ +export class Workflow extends pulumi.CustomResource { + /** + * Get an existing Workflow 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): Workflow { + return new Workflow(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:imagebuilder:Workflow'; + + /** + * Returns true if the given object is an instance of Workflow. 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 Workflow { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === Workflow.__pulumiType; + } + + /** + * The Amazon Resource Name (ARN) of the workflow. + */ + public /*out*/ readonly arn!: pulumi.Output; + /** + * The change description of the workflow. + */ + public readonly changeDescription!: pulumi.Output; + /** + * The data of the workflow. + */ + public readonly data!: pulumi.Output; + /** + * The description of the workflow. + */ + public readonly description!: pulumi.Output; + /** + * The KMS key identifier used to encrypt the workflow. + */ + public readonly kmsKeyId!: pulumi.Output; + /** + * The name of the workflow. + */ + public readonly name!: pulumi.Output; + /** + * The tags associated with the workflow. + */ + public readonly tags!: pulumi.Output; + /** + * The type of the workflow denotes whether the workflow is used to build, test, or distribute. + */ + public readonly type!: pulumi.Output; + /** + * The uri of the workflow. + */ + public readonly uri!: pulumi.Output; + /** + * The version of the workflow. + */ + public readonly version!: pulumi.Output; + + /** + * Create a Workflow 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: WorkflowArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.type === undefined) && !opts.urn) { + throw new Error("Missing required property 'type'"); + } + if ((!args || args.version === undefined) && !opts.urn) { + throw new Error("Missing required property 'version'"); + } + resourceInputs["changeDescription"] = args ? args.changeDescription : undefined; + resourceInputs["data"] = args ? args.data : undefined; + resourceInputs["description"] = args ? args.description : undefined; + resourceInputs["kmsKeyId"] = args ? args.kmsKeyId : undefined; + resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["type"] = args ? args.type : undefined; + resourceInputs["uri"] = args ? args.uri : undefined; + resourceInputs["version"] = args ? args.version : undefined; + resourceInputs["arn"] = undefined /*out*/; + } else { + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["changeDescription"] = undefined /*out*/; + resourceInputs["data"] = undefined /*out*/; + resourceInputs["description"] = undefined /*out*/; + resourceInputs["kmsKeyId"] = undefined /*out*/; + resourceInputs["name"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + resourceInputs["type"] = undefined /*out*/; + resourceInputs["uri"] = undefined /*out*/; + resourceInputs["version"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["changeDescription", "data", "description", "kmsKeyId", "name", "tags", "type", "uri", "version"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(Workflow.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a Workflow resource. + */ +export interface WorkflowArgs { + /** + * The change description of the workflow. + */ + changeDescription?: pulumi.Input; + /** + * The data of the workflow. + */ + data?: pulumi.Input; + /** + * The description of the workflow. + */ + description?: pulumi.Input; + /** + * The KMS key identifier used to encrypt the workflow. + */ + kmsKeyId?: pulumi.Input; + /** + * The name of the workflow. + */ + name?: pulumi.Input; + /** + * The tags associated with the workflow. + */ + tags?: any; + /** + * The type of the workflow denotes whether the workflow is used to build, test, or distribute. + */ + type: pulumi.Input; + /** + * The uri of the workflow. + */ + uri?: pulumi.Input; + /** + * The version of the workflow. + */ + version: pulumi.Input; +} diff --git a/sdk/nodejs/index.ts b/sdk/nodejs/index.ts index 6031cb9e59..a5d9b5244f 100644 --- a/sdk/nodejs/index.ts +++ b/sdk/nodejs/index.ts @@ -88,6 +88,7 @@ import * as athena from "./athena"; import * as auditmanager from "./auditmanager"; import * as autoscaling from "./autoscaling"; import * as autoscalingplans from "./autoscalingplans"; +import * as b2bi from "./b2bi"; import * as backup from "./backup"; import * as backupgateway from "./backupgateway"; import * as batch from "./batch"; @@ -321,6 +322,7 @@ export { auditmanager, autoscaling, autoscalingplans, + b2bi, backup, backupgateway, batch, diff --git a/sdk/nodejs/iot/certificateProvider.ts b/sdk/nodejs/iot/certificateProvider.ts new file mode 100644 index 0000000000..99139f68c7 --- /dev/null +++ b/sdk/nodejs/iot/certificateProvider.ts @@ -0,0 +1,96 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + */ +export class CertificateProvider extends pulumi.CustomResource { + /** + * Get an existing CertificateProvider 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): CertificateProvider { + return new CertificateProvider(name, undefined as any, { ...opts, id: id }); + } + + /** @internal */ + public static readonly __pulumiType = 'aws-native:iot:CertificateProvider'; + + /** + * Returns true if the given object is an instance of CertificateProvider. 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 CertificateProvider { + if (obj === undefined || obj === null) { + return false; + } + return obj['__pulumiType'] === CertificateProvider.__pulumiType; + } + + public readonly accountDefaultForOperations!: pulumi.Output; + public /*out*/ readonly arn!: pulumi.Output; + public readonly certificateProviderName!: pulumi.Output; + public readonly lambdaFunctionArn!: pulumi.Output; + /** + * An array of key-value pairs to apply to this resource. + */ + public readonly tags!: pulumi.Output; + + /** + * Create a CertificateProvider 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: CertificateProviderArgs, opts?: pulumi.CustomResourceOptions) { + let resourceInputs: pulumi.Inputs = {}; + opts = opts || {}; + if (!opts.id) { + if ((!args || args.accountDefaultForOperations === undefined) && !opts.urn) { + throw new Error("Missing required property 'accountDefaultForOperations'"); + } + if ((!args || args.lambdaFunctionArn === undefined) && !opts.urn) { + throw new Error("Missing required property 'lambdaFunctionArn'"); + } + resourceInputs["accountDefaultForOperations"] = args ? args.accountDefaultForOperations : undefined; + resourceInputs["certificateProviderName"] = args ? args.certificateProviderName : undefined; + resourceInputs["lambdaFunctionArn"] = args ? args.lambdaFunctionArn : undefined; + resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["arn"] = undefined /*out*/; + } else { + resourceInputs["accountDefaultForOperations"] = undefined /*out*/; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["certificateProviderName"] = undefined /*out*/; + resourceInputs["lambdaFunctionArn"] = undefined /*out*/; + resourceInputs["tags"] = undefined /*out*/; + } + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["certificateProviderName"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); + super(CertificateProvider.__pulumiType, name, resourceInputs, opts); + } +} + +/** + * The set of arguments for constructing a CertificateProvider resource. + */ +export interface CertificateProviderArgs { + accountDefaultForOperations: pulumi.Input[]>; + certificateProviderName?: pulumi.Input; + lambdaFunctionArn: pulumi.Input; + /** + * An array of key-value pairs to apply to this resource. + */ + tags?: pulumi.Input[]>; +} diff --git a/sdk/nodejs/iot/getCertificateProvider.ts b/sdk/nodejs/iot/getCertificateProvider.ts new file mode 100644 index 0000000000..2e5ddaef1b --- /dev/null +++ b/sdk/nodejs/iot/getCertificateProvider.ts @@ -0,0 +1,43 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** 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"; + +/** + * Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + */ +export function getCertificateProvider(args: GetCertificateProviderArgs, opts?: pulumi.InvokeOptions): Promise { + + opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); + return pulumi.runtime.invoke("aws-native:iot:getCertificateProvider", { + "certificateProviderName": args.certificateProviderName, + }, opts); +} + +export interface GetCertificateProviderArgs { + certificateProviderName: string; +} + +export interface GetCertificateProviderResult { + readonly accountDefaultForOperations?: enums.iot.CertificateProviderOperation[]; + readonly arn?: string; + readonly lambdaFunctionArn?: string; + /** + * An array of key-value pairs to apply to this resource. + */ + readonly tags?: outputs.iot.CertificateProviderTag[]; +} +/** + * Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + */ +export function getCertificateProviderOutput(args: GetCertificateProviderOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { + return pulumi.output(args).apply((a: any) => getCertificateProvider(a, opts)) +} + +export interface GetCertificateProviderOutputArgs { + certificateProviderName: pulumi.Input; +} diff --git a/sdk/nodejs/iot/index.ts b/sdk/nodejs/iot/index.ts index da8dcc8d84..af8a93098c 100644 --- a/sdk/nodejs/iot/index.ts +++ b/sdk/nodejs/iot/index.ts @@ -30,6 +30,11 @@ export type Certificate = import("./certificate").Certificate; export const Certificate: typeof import("./certificate").Certificate = null as any; utilities.lazyLoad(exports, ["Certificate"], () => require("./certificate")); +export { CertificateProviderArgs } from "./certificateProvider"; +export type CertificateProvider = import("./certificateProvider").CertificateProvider; +export const CertificateProvider: typeof import("./certificateProvider").CertificateProvider = null as any; +utilities.lazyLoad(exports, ["CertificateProvider"], () => require("./certificateProvider")); + export { CustomMetricArgs } from "./customMetric"; export type CustomMetric = import("./customMetric").CustomMetric; export const CustomMetric: typeof import("./customMetric").CustomMetric = null as any; @@ -75,6 +80,11 @@ export const getCertificate: typeof import("./getCertificate").getCertificate = export const getCertificateOutput: typeof import("./getCertificate").getCertificateOutput = null as any; utilities.lazyLoad(exports, ["getCertificate","getCertificateOutput"], () => require("./getCertificate")); +export { GetCertificateProviderArgs, GetCertificateProviderResult, GetCertificateProviderOutputArgs } from "./getCertificateProvider"; +export const getCertificateProvider: typeof import("./getCertificateProvider").getCertificateProvider = null as any; +export const getCertificateProviderOutput: typeof import("./getCertificateProvider").getCertificateProviderOutput = null as any; +utilities.lazyLoad(exports, ["getCertificateProvider","getCertificateProviderOutput"], () => require("./getCertificateProvider")); + export { GetCustomMetricArgs, GetCustomMetricResult, GetCustomMetricOutputArgs } from "./getCustomMetric"; export const getCustomMetric: typeof import("./getCustomMetric").getCustomMetric = null as any; export const getCustomMetricOutput: typeof import("./getCustomMetric").getCustomMetricOutput = null as any; @@ -293,6 +303,8 @@ const _module = { return new CaCertificate(name, undefined, { urn }) case "aws-native:iot:Certificate": return new Certificate(name, undefined, { urn }) + case "aws-native:iot:CertificateProvider": + return new CertificateProvider(name, undefined, { urn }) case "aws-native:iot:CustomMetric": return new CustomMetric(name, undefined, { urn }) case "aws-native:iot:Dimension": diff --git a/sdk/nodejs/lambda/eventInvokeConfig.ts b/sdk/nodejs/lambda/eventInvokeConfig.ts index 31f46249a0..2ed7ba354a 100644 --- a/sdk/nodejs/lambda/eventInvokeConfig.ts +++ b/sdk/nodejs/lambda/eventInvokeConfig.ts @@ -8,7 +8,7 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::Lambda::EventInvokeConfig + * The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. */ export class EventInvokeConfig extends pulumi.CustomResource { /** @@ -38,9 +38,21 @@ export class EventInvokeConfig extends pulumi.CustomResource { } public readonly destinationConfig!: pulumi.Output; + /** + * The name of the Lambda function. + */ public readonly functionName!: pulumi.Output; + /** + * The maximum age of a request that Lambda sends to a function for processing. + */ public readonly maximumEventAgeInSeconds!: pulumi.Output; + /** + * The maximum number of times to retry when the function returns an error. + */ public readonly maximumRetryAttempts!: pulumi.Output; + /** + * The identifier of a version or alias. + */ public readonly qualifier!: pulumi.Output; /** @@ -84,8 +96,20 @@ export class EventInvokeConfig extends pulumi.CustomResource { */ export interface EventInvokeConfigArgs { destinationConfig?: pulumi.Input; + /** + * The name of the Lambda function. + */ functionName: pulumi.Input; + /** + * The maximum age of a request that Lambda sends to a function for processing. + */ maximumEventAgeInSeconds?: pulumi.Input; + /** + * The maximum number of times to retry when the function returns an error. + */ maximumRetryAttempts?: pulumi.Input; + /** + * The identifier of a version or alias. + */ qualifier: pulumi.Input; } diff --git a/sdk/nodejs/lambda/function.ts b/sdk/nodejs/lambda/function.ts index cd2a35e062..fb1c0aa440 100644 --- a/sdk/nodejs/lambda/function.ts +++ b/sdk/nodejs/lambda/function.ts @@ -102,10 +102,6 @@ export class Function extends pulumi.CustomResource { * PackageType. */ public readonly packageType!: pulumi.Output; - /** - * The resource policy of your function - */ - public readonly policy!: pulumi.Output; /** * The number of simultaneous executions to reserve for the function. */ @@ -180,7 +176,6 @@ export class Function extends pulumi.CustomResource { resourceInputs["loggingConfig"] = args ? args.loggingConfig : undefined; resourceInputs["memorySize"] = args ? args.memorySize : undefined; resourceInputs["packageType"] = args ? args.packageType : undefined; - resourceInputs["policy"] = args ? args.policy : undefined; resourceInputs["reservedConcurrentExecutions"] = args ? args.reservedConcurrentExecutions : undefined; resourceInputs["role"] = args ? args.role : undefined; resourceInputs["runtime"] = args ? args.runtime : undefined; @@ -210,7 +205,6 @@ export class Function extends pulumi.CustomResource { resourceInputs["loggingConfig"] = undefined /*out*/; resourceInputs["memorySize"] = undefined /*out*/; resourceInputs["packageType"] = undefined /*out*/; - resourceInputs["policy"] = undefined /*out*/; resourceInputs["reservedConcurrentExecutions"] = undefined /*out*/; resourceInputs["role"] = undefined /*out*/; resourceInputs["runtime"] = undefined /*out*/; @@ -294,10 +288,6 @@ export interface FunctionArgs { * PackageType. */ packageType?: pulumi.Input; - /** - * The resource policy of your function - */ - policy?: any; /** * The number of simultaneous executions to reserve for the function. */ diff --git a/sdk/nodejs/lambda/getEventInvokeConfig.ts b/sdk/nodejs/lambda/getEventInvokeConfig.ts index 248a80cdac..ac0fd02660 100644 --- a/sdk/nodejs/lambda/getEventInvokeConfig.ts +++ b/sdk/nodejs/lambda/getEventInvokeConfig.ts @@ -8,33 +8,53 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::Lambda::EventInvokeConfig + * The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. */ export function getEventInvokeConfig(args: GetEventInvokeConfigArgs, opts?: pulumi.InvokeOptions): Promise { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:lambda:getEventInvokeConfig", { - "id": args.id, + "functionName": args.functionName, + "qualifier": args.qualifier, }, opts); } export interface GetEventInvokeConfigArgs { - id: string; + /** + * The name of the Lambda function. + */ + functionName: string; + /** + * The identifier of a version or alias. + */ + qualifier: string; } export interface GetEventInvokeConfigResult { readonly destinationConfig?: outputs.lambda.EventInvokeConfigDestinationConfig; - readonly id?: string; + /** + * The maximum age of a request that Lambda sends to a function for processing. + */ readonly maximumEventAgeInSeconds?: number; + /** + * The maximum number of times to retry when the function returns an error. + */ readonly maximumRetryAttempts?: number; } /** - * Resource Type definition for AWS::Lambda::EventInvokeConfig + * The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. */ export function getEventInvokeConfigOutput(args: GetEventInvokeConfigOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getEventInvokeConfig(a, opts)) } export interface GetEventInvokeConfigOutputArgs { - id: pulumi.Input; + /** + * The name of the Lambda function. + */ + functionName: pulumi.Input; + /** + * The identifier of a version or alias. + */ + qualifier: pulumi.Input; } diff --git a/sdk/nodejs/logs/delivery.ts b/sdk/nodejs/logs/delivery.ts index 84c871f91e..aa2257546e 100644 --- a/sdk/nodejs/logs/delivery.ts +++ b/sdk/nodejs/logs/delivery.ts @@ -8,7 +8,11 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::Logs::Delivery. + * This structure contains information about one delivery in your account. + * + * A delivery is a connection between a logical delivery source and a logical delivery destination. + * + * For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). */ export class Delivery extends pulumi.CustomResource { /** @@ -38,27 +42,27 @@ export class Delivery extends pulumi.CustomResource { } /** - * The value of the Arn property for this object. + * The Amazon Resource Name (ARN) that uniquely identifies this delivery. */ public /*out*/ readonly arn!: pulumi.Output; /** - * The value of the DeliveryDestinationArn property for this object. + * The ARN of the delivery destination that is associated with this delivery. */ public readonly deliveryDestinationArn!: pulumi.Output; /** - * The value of the DeliveryDestinationType property for this object. + * Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. */ public /*out*/ readonly deliveryDestinationType!: pulumi.Output; /** - * The value of the Id property for this object. + * The unique ID that identifies this delivery in your account. */ public /*out*/ readonly deliveryId!: pulumi.Output; /** - * The value of the DeliverySourceName property for this object. + * The name of the delivery source that is associated with this delivery. */ public readonly deliverySourceName!: pulumi.Output; /** - * The value of the Tags property for this object. + * The tags that have been assigned to this delivery. */ public readonly tags!: pulumi.Output; @@ -105,15 +109,15 @@ export class Delivery extends pulumi.CustomResource { */ export interface DeliveryArgs { /** - * The value of the DeliveryDestinationArn property for this object. + * The ARN of the delivery destination that is associated with this delivery. */ deliveryDestinationArn: pulumi.Input; /** - * The value of the DeliverySourceName property for this object. + * The name of the delivery source that is associated with this delivery. */ deliverySourceName: pulumi.Input; /** - * The value of the Tags property for this object. + * The tags that have been assigned to this delivery. */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/logs/deliveryDestination.ts b/sdk/nodejs/logs/deliveryDestination.ts index 5afc66ebbb..b263d1d6cd 100644 --- a/sdk/nodejs/logs/deliveryDestination.ts +++ b/sdk/nodejs/logs/deliveryDestination.ts @@ -8,7 +8,9 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::Logs::DeliveryDestination + * This structure contains information about one delivery destination in your account. + * + * A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. */ export class DeliveryDestination extends pulumi.CustomResource { /** @@ -38,7 +40,7 @@ export class DeliveryDestination extends pulumi.CustomResource { } /** - * The value of the Arn property for this object. + * The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. */ public /*out*/ readonly arn!: pulumi.Output; /** @@ -50,19 +52,19 @@ export class DeliveryDestination extends pulumi.CustomResource { */ public readonly deliveryDestinationPolicy!: pulumi.Output; /** - * The value of the DeliveryDestinationType property for this object. + * Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. */ public /*out*/ readonly deliveryDestinationType!: pulumi.Output; /** - * The ARN of the Destination Resource. + * The ARN of the AWS resource that will receive the logs. */ public readonly destinationResourceArn!: pulumi.Output; /** - * The unique name of the Delivery Destination. + * The name of this delivery destination. */ public readonly name!: pulumi.Output; /** - * An array of key-value pairs to apply to this resource. + * The tags that have been assigned to this delivery destination. */ public readonly tags!: pulumi.Output; @@ -111,15 +113,15 @@ export interface DeliveryDestinationArgs { */ deliveryDestinationPolicy?: any; /** - * The ARN of the Destination Resource. + * The ARN of the AWS resource that will receive the logs. */ destinationResourceArn?: pulumi.Input; /** - * The unique name of the Delivery Destination. + * The name of this delivery destination. */ name?: pulumi.Input; /** - * An array of key-value pairs to apply to this resource. + * The tags that have been assigned to this delivery destination. */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/logs/deliverySource.ts b/sdk/nodejs/logs/deliverySource.ts index 2f6feb7db6..dfc16e90b6 100644 --- a/sdk/nodejs/logs/deliverySource.ts +++ b/sdk/nodejs/logs/deliverySource.ts @@ -8,7 +8,9 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::Logs::DeliverySource. + * A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + * + * Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). */ export class DeliverySource extends pulumi.CustomResource { /** @@ -38,7 +40,7 @@ export class DeliverySource extends pulumi.CustomResource { } /** - * The ARN of the Aqueduct Source. + * The Amazon Resource Name (ARN) that uniquely identifies this delivery source. */ public /*out*/ readonly arn!: pulumi.Output; /** @@ -54,15 +56,15 @@ export class DeliverySource extends pulumi.CustomResource { */ public readonly resourceArn!: pulumi.Output; /** - * List of ARN of the resource that will be sending the logs + * This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. */ public /*out*/ readonly resourceArns!: pulumi.Output; /** - * The service generating the log + * The AWS service that is sending logs. */ public /*out*/ readonly service!: pulumi.Output; /** - * An array of key-value pairs to apply to this resource. + * The tags that have been assigned to this delivery source. */ public readonly tags!: pulumi.Output; @@ -117,7 +119,7 @@ export interface DeliverySourceArgs { */ resourceArn?: pulumi.Input; /** - * An array of key-value pairs to apply to this resource. + * The tags that have been assigned to this delivery source. */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/logs/getDelivery.ts b/sdk/nodejs/logs/getDelivery.ts index a0bd835d01..d26e639fdb 100644 --- a/sdk/nodejs/logs/getDelivery.ts +++ b/sdk/nodejs/logs/getDelivery.ts @@ -8,7 +8,11 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::Logs::Delivery. + * This structure contains information about one delivery in your account. + * + * A delivery is a connection between a logical delivery source and a logical delivery destination. + * + * For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). */ export function getDelivery(args: GetDeliveryArgs, opts?: pulumi.InvokeOptions): Promise { @@ -20,31 +24,35 @@ export function getDelivery(args: GetDeliveryArgs, opts?: pulumi.InvokeOptions): export interface GetDeliveryArgs { /** - * The value of the Id property for this object. + * The unique ID that identifies this delivery in your account. */ deliveryId: string; } export interface GetDeliveryResult { /** - * The value of the Arn property for this object. + * The Amazon Resource Name (ARN) that uniquely identifies this delivery. */ readonly arn?: string; /** - * The value of the DeliveryDestinationType property for this object. + * Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. */ readonly deliveryDestinationType?: string; /** - * The value of the Id property for this object. + * The unique ID that identifies this delivery in your account. */ readonly deliveryId?: string; /** - * The value of the Tags property for this object. + * The tags that have been assigned to this delivery. */ readonly tags?: outputs.logs.DeliveryTag[]; } /** - * Resource Type definition for AWS::Logs::Delivery. + * This structure contains information about one delivery in your account. + * + * A delivery is a connection between a logical delivery source and a logical delivery destination. + * + * For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). */ export function getDeliveryOutput(args: GetDeliveryOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getDelivery(a, opts)) @@ -52,7 +60,7 @@ export function getDeliveryOutput(args: GetDeliveryOutputArgs, opts?: pulumi.Inv export interface GetDeliveryOutputArgs { /** - * The value of the Id property for this object. + * The unique ID that identifies this delivery in your account. */ deliveryId: pulumi.Input; } diff --git a/sdk/nodejs/logs/getDeliveryDestination.ts b/sdk/nodejs/logs/getDeliveryDestination.ts index 9d76d800f5..bfe6456352 100644 --- a/sdk/nodejs/logs/getDeliveryDestination.ts +++ b/sdk/nodejs/logs/getDeliveryDestination.ts @@ -8,7 +8,9 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::Logs::DeliveryDestination + * This structure contains information about one delivery destination in your account. + * + * A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. */ export function getDeliveryDestination(args: GetDeliveryDestinationArgs, opts?: pulumi.InvokeOptions): Promise { @@ -20,14 +22,14 @@ export function getDeliveryDestination(args: GetDeliveryDestinationArgs, opts?: export interface GetDeliveryDestinationArgs { /** - * The unique name of the Delivery Destination. + * The name of this delivery destination. */ name: string; } export interface GetDeliveryDestinationResult { /** - * The value of the Arn property for this object. + * The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. */ readonly arn?: string; /** @@ -39,16 +41,18 @@ export interface GetDeliveryDestinationResult { */ readonly deliveryDestinationPolicy?: any; /** - * The value of the DeliveryDestinationType property for this object. + * Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. */ readonly deliveryDestinationType?: string; /** - * An array of key-value pairs to apply to this resource. + * The tags that have been assigned to this delivery destination. */ readonly tags?: outputs.logs.DeliveryDestinationTag[]; } /** - * Resource Type definition for AWS::Logs::DeliveryDestination + * This structure contains information about one delivery destination in your account. + * + * A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. */ export function getDeliveryDestinationOutput(args: GetDeliveryDestinationOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getDeliveryDestination(a, opts)) @@ -56,7 +60,7 @@ export function getDeliveryDestinationOutput(args: GetDeliveryDestinationOutputA export interface GetDeliveryDestinationOutputArgs { /** - * The unique name of the Delivery Destination. + * The name of this delivery destination. */ name: pulumi.Input; } diff --git a/sdk/nodejs/logs/getDeliverySource.ts b/sdk/nodejs/logs/getDeliverySource.ts index f01bc286f7..1585d215f0 100644 --- a/sdk/nodejs/logs/getDeliverySource.ts +++ b/sdk/nodejs/logs/getDeliverySource.ts @@ -8,7 +8,9 @@ import * as enums from "../types/enums"; import * as utilities from "../utilities"; /** - * Resource Type definition for AWS::Logs::DeliverySource. + * A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + * + * Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). */ export function getDeliverySource(args: GetDeliverySourceArgs, opts?: pulumi.InvokeOptions): Promise { @@ -27,7 +29,7 @@ export interface GetDeliverySourceArgs { export interface GetDeliverySourceResult { /** - * The ARN of the Aqueduct Source. + * The Amazon Resource Name (ARN) that uniquely identifies this delivery source. */ readonly arn?: string; /** @@ -35,20 +37,22 @@ export interface GetDeliverySourceResult { */ readonly logType?: string; /** - * List of ARN of the resource that will be sending the logs + * This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. */ readonly resourceArns?: string[]; /** - * The service generating the log + * The AWS service that is sending logs. */ readonly service?: string; /** - * An array of key-value pairs to apply to this resource. + * The tags that have been assigned to this delivery source. */ readonly tags?: outputs.logs.DeliverySourceTag[]; } /** - * Resource Type definition for AWS::Logs::DeliverySource. + * A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + * + * Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). */ export function getDeliverySourceOutput(args: GetDeliverySourceOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getDeliverySource(a, opts)) diff --git a/sdk/nodejs/opensearchservice/domain.ts b/sdk/nodejs/opensearchservice/domain.ts index 573ab43934..1444a64f2d 100644 --- a/sdk/nodejs/opensearchservice/domain.ts +++ b/sdk/nodejs/opensearchservice/domain.ts @@ -46,11 +46,13 @@ export class Domain extends pulumi.CustomResource { public /*out*/ readonly domainArn!: pulumi.Output; public /*out*/ readonly domainEndpoint!: pulumi.Output; public readonly domainEndpointOptions!: pulumi.Output; + public /*out*/ readonly domainEndpointV2!: pulumi.Output; public /*out*/ readonly domainEndpoints!: pulumi.Output; public readonly domainName!: pulumi.Output; public readonly ebsOptions!: pulumi.Output; public readonly encryptionAtRestOptions!: pulumi.Output; public readonly engineVersion!: pulumi.Output; + public readonly ipAddressType!: pulumi.Output; public readonly logPublishingOptions!: pulumi.Output; public readonly nodeToNodeEncryptionOptions!: pulumi.Output; public readonly offPeakWindowOptions!: pulumi.Output; @@ -84,6 +86,7 @@ export class Domain extends pulumi.CustomResource { resourceInputs["ebsOptions"] = args ? args.ebsOptions : undefined; resourceInputs["encryptionAtRestOptions"] = args ? args.encryptionAtRestOptions : undefined; resourceInputs["engineVersion"] = args ? args.engineVersion : undefined; + resourceInputs["ipAddressType"] = args ? args.ipAddressType : undefined; resourceInputs["logPublishingOptions"] = args ? args.logPublishingOptions : undefined; resourceInputs["nodeToNodeEncryptionOptions"] = args ? args.nodeToNodeEncryptionOptions : undefined; resourceInputs["offPeakWindowOptions"] = args ? args.offPeakWindowOptions : undefined; @@ -94,6 +97,7 @@ export class Domain extends pulumi.CustomResource { resourceInputs["arn"] = undefined /*out*/; resourceInputs["domainArn"] = undefined /*out*/; resourceInputs["domainEndpoint"] = undefined /*out*/; + resourceInputs["domainEndpointV2"] = undefined /*out*/; resourceInputs["domainEndpoints"] = undefined /*out*/; resourceInputs["serviceSoftwareOptions"] = undefined /*out*/; } else { @@ -106,11 +110,13 @@ export class Domain extends pulumi.CustomResource { resourceInputs["domainArn"] = undefined /*out*/; resourceInputs["domainEndpoint"] = undefined /*out*/; resourceInputs["domainEndpointOptions"] = undefined /*out*/; + resourceInputs["domainEndpointV2"] = undefined /*out*/; resourceInputs["domainEndpoints"] = undefined /*out*/; resourceInputs["domainName"] = undefined /*out*/; resourceInputs["ebsOptions"] = undefined /*out*/; resourceInputs["encryptionAtRestOptions"] = undefined /*out*/; resourceInputs["engineVersion"] = undefined /*out*/; + resourceInputs["ipAddressType"] = undefined /*out*/; resourceInputs["logPublishingOptions"] = undefined /*out*/; resourceInputs["nodeToNodeEncryptionOptions"] = undefined /*out*/; resourceInputs["offPeakWindowOptions"] = undefined /*out*/; @@ -141,6 +147,7 @@ export interface DomainArgs { ebsOptions?: pulumi.Input; encryptionAtRestOptions?: pulumi.Input; engineVersion?: pulumi.Input; + ipAddressType?: pulumi.Input; logPublishingOptions?: any; nodeToNodeEncryptionOptions?: pulumi.Input; offPeakWindowOptions?: pulumi.Input; diff --git a/sdk/nodejs/opensearchservice/getDomain.ts b/sdk/nodejs/opensearchservice/getDomain.ts index 02a18f0d6f..77b3fe4702 100644 --- a/sdk/nodejs/opensearchservice/getDomain.ts +++ b/sdk/nodejs/opensearchservice/getDomain.ts @@ -32,11 +32,13 @@ export interface GetDomainResult { readonly domainArn?: string; readonly domainEndpoint?: string; readonly domainEndpointOptions?: outputs.opensearchservice.DomainEndpointOptions; + readonly domainEndpointV2?: string; readonly domainEndpoints?: any; readonly ebsOptions?: outputs.opensearchservice.DomainEbsOptions; readonly encryptionAtRestOptions?: outputs.opensearchservice.DomainEncryptionAtRestOptions; readonly engineVersion?: string; readonly id?: string; + readonly ipAddressType?: string; readonly logPublishingOptions?: any; readonly nodeToNodeEncryptionOptions?: outputs.opensearchservice.DomainNodeToNodeEncryptionOptions; readonly offPeakWindowOptions?: outputs.opensearchservice.DomainOffPeakWindowOptions; diff --git a/sdk/nodejs/osis/getPipeline.ts b/sdk/nodejs/osis/getPipeline.ts index a57d66621e..1396bd64d0 100644 --- a/sdk/nodejs/osis/getPipeline.ts +++ b/sdk/nodejs/osis/getPipeline.ts @@ -26,6 +26,8 @@ export interface GetPipelineArgs { } export interface GetPipelineResult { + readonly bufferOptions?: outputs.osis.PipelineBufferOptions; + readonly encryptionAtRestOptions?: outputs.osis.PipelineEncryptionAtRestOptions; /** * A list of endpoints that can be used for ingesting data into a pipeline */ diff --git a/sdk/nodejs/osis/pipeline.ts b/sdk/nodejs/osis/pipeline.ts index 1a771ebc60..607ffc005b 100644 --- a/sdk/nodejs/osis/pipeline.ts +++ b/sdk/nodejs/osis/pipeline.ts @@ -37,6 +37,8 @@ export class Pipeline extends pulumi.CustomResource { return obj['__pulumiType'] === Pipeline.__pulumiType; } + public readonly bufferOptions!: pulumi.Output; + public readonly encryptionAtRestOptions!: pulumi.Output; /** * A list of endpoints that can be used for ingesting data into a pipeline */ @@ -92,6 +94,8 @@ export class Pipeline extends pulumi.CustomResource { if ((!args || args.pipelineConfigurationBody === undefined) && !opts.urn) { throw new Error("Missing required property 'pipelineConfigurationBody'"); } + resourceInputs["bufferOptions"] = args ? args.bufferOptions : undefined; + resourceInputs["encryptionAtRestOptions"] = args ? args.encryptionAtRestOptions : undefined; resourceInputs["logPublishingOptions"] = args ? args.logPublishingOptions : undefined; resourceInputs["maxUnits"] = args ? args.maxUnits : undefined; resourceInputs["minUnits"] = args ? args.minUnits : undefined; @@ -103,6 +107,8 @@ export class Pipeline extends pulumi.CustomResource { resourceInputs["pipelineArn"] = undefined /*out*/; resourceInputs["vpcEndpoints"] = undefined /*out*/; } else { + resourceInputs["bufferOptions"] = undefined /*out*/; + resourceInputs["encryptionAtRestOptions"] = undefined /*out*/; resourceInputs["ingestEndpointUrls"] = undefined /*out*/; resourceInputs["logPublishingOptions"] = undefined /*out*/; resourceInputs["maxUnits"] = undefined /*out*/; @@ -125,6 +131,8 @@ export class Pipeline extends pulumi.CustomResource { * The set of arguments for constructing a Pipeline resource. */ export interface PipelineArgs { + bufferOptions?: pulumi.Input; + encryptionAtRestOptions?: pulumi.Input; logPublishingOptions?: pulumi.Input; /** * The maximum pipeline capacity, in Ingestion Compute Units (ICUs). diff --git a/sdk/nodejs/route53resolver/getResolverConfig.ts b/sdk/nodejs/route53resolver/getResolverConfig.ts index c8f945c715..088bc21bac 100644 --- a/sdk/nodejs/route53resolver/getResolverConfig.ts +++ b/sdk/nodejs/route53resolver/getResolverConfig.ts @@ -14,15 +14,15 @@ export function getResolverConfig(args: GetResolverConfigArgs, opts?: pulumi.Inv opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:route53resolver:getResolverConfig", { - "id": args.id, + "resourceId": args.resourceId, }, opts); } export interface GetResolverConfigArgs { /** - * Id + * ResourceId */ - id: string; + resourceId: string; } export interface GetResolverConfigResult { @@ -48,7 +48,7 @@ export function getResolverConfigOutput(args: GetResolverConfigOutputArgs, opts? export interface GetResolverConfigOutputArgs { /** - * Id + * ResourceId */ - id: pulumi.Input; + resourceId: pulumi.Input; } diff --git a/sdk/nodejs/s3express/directoryBucket.ts b/sdk/nodejs/s3express/directoryBucket.ts index 5e106475ed..9d0149610b 100644 --- a/sdk/nodejs/s3express/directoryBucket.ts +++ b/sdk/nodejs/s3express/directoryBucket.ts @@ -42,11 +42,11 @@ export class DirectoryBucket extends pulumi.CustomResource { */ public /*out*/ readonly arn!: pulumi.Output; /** - * Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + * Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. */ public readonly bucketName!: pulumi.Output; /** - * Specifies the number of Avilability Zone that's used for redundancy for the bucket. + * Specifies the number of Availability Zone that's used for redundancy for the bucket. */ public readonly dataRedundancy!: pulumi.Output; /** @@ -93,11 +93,11 @@ export class DirectoryBucket extends pulumi.CustomResource { */ export interface DirectoryBucketArgs { /** - * Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + * Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. */ bucketName?: pulumi.Input; /** - * Specifies the number of Avilability Zone that's used for redundancy for the bucket. + * Specifies the number of Availability Zone that's used for redundancy for the bucket. */ dataRedundancy: pulumi.Input; /** diff --git a/sdk/nodejs/s3express/getDirectoryBucket.ts b/sdk/nodejs/s3express/getDirectoryBucket.ts index d50e800716..a317844f50 100644 --- a/sdk/nodejs/s3express/getDirectoryBucket.ts +++ b/sdk/nodejs/s3express/getDirectoryBucket.ts @@ -17,7 +17,7 @@ export function getDirectoryBucket(args: GetDirectoryBucketArgs, opts?: pulumi.I export interface GetDirectoryBucketArgs { /** - * Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + * Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. */ bucketName: string; } @@ -37,7 +37,7 @@ export function getDirectoryBucketOutput(args: GetDirectoryBucketOutputArgs, opt export interface GetDirectoryBucketOutputArgs { /** - * Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + * Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. */ bucketName: pulumi.Input; } diff --git a/sdk/nodejs/sagemaker/domain.ts b/sdk/nodejs/sagemaker/domain.ts index 65675009ef..b98ac89488 100644 --- a/sdk/nodejs/sagemaker/domain.ts +++ b/sdk/nodejs/sagemaker/domain.ts @@ -82,6 +82,10 @@ export class Domain extends pulumi.CustomResource { * The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app. */ public /*out*/ readonly securityGroupIdForDomainBoundary!: pulumi.Output; + /** + * The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. + */ + public /*out*/ readonly singleSignOnApplicationArn!: pulumi.Output; /** * The SSO managed application instance ID. */ @@ -141,6 +145,7 @@ export class Domain extends pulumi.CustomResource { resourceInputs["domainId"] = undefined /*out*/; resourceInputs["homeEfsFileSystemId"] = undefined /*out*/; resourceInputs["securityGroupIdForDomainBoundary"] = undefined /*out*/; + resourceInputs["singleSignOnApplicationArn"] = undefined /*out*/; resourceInputs["singleSignOnManagedApplicationInstanceId"] = undefined /*out*/; resourceInputs["url"] = undefined /*out*/; } else { @@ -156,6 +161,7 @@ export class Domain extends pulumi.CustomResource { resourceInputs["homeEfsFileSystemId"] = undefined /*out*/; resourceInputs["kmsKeyId"] = undefined /*out*/; resourceInputs["securityGroupIdForDomainBoundary"] = undefined /*out*/; + resourceInputs["singleSignOnApplicationArn"] = undefined /*out*/; resourceInputs["singleSignOnManagedApplicationInstanceId"] = undefined /*out*/; resourceInputs["subnetIds"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; @@ -163,7 +169,7 @@ export class Domain extends pulumi.CustomResource { resourceInputs["vpcId"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["appNetworkAccessType", "authMode", "domainName", "domainSettings.rStudioServerProDomainSettings.defaultResourceSpec", "kmsKeyId", "subnetIds[*]", "tags[*]", "vpcId"] }; + const replaceOnChanges = { replaceOnChanges: ["authMode", "domainName", "domainSettings.rStudioServerProDomainSettings.defaultResourceSpec", "kmsKeyId", "tags[*]", "vpcId"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Domain.__pulumiType, name, resourceInputs, opts); } diff --git a/sdk/nodejs/sagemaker/getDomain.ts b/sdk/nodejs/sagemaker/getDomain.ts index eff6ef1113..40658b16f1 100644 --- a/sdk/nodejs/sagemaker/getDomain.ts +++ b/sdk/nodejs/sagemaker/getDomain.ts @@ -26,6 +26,10 @@ export interface GetDomainArgs { } export interface GetDomainResult { + /** + * Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly. + */ + readonly appNetworkAccessType?: enums.sagemaker.DomainAppNetworkAccessType; /** * The entity that creates and manages the required security groups for inter-app communication in VPCOnly mode. Required when CreateDomain.AppNetworkAccessType is VPCOnly and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn is provided. */ @@ -55,10 +59,18 @@ export interface GetDomainResult { * The ID of the security group that authorizes traffic between the RSessionGateway apps and the RStudioServerPro app. */ readonly securityGroupIdForDomainBoundary?: string; + /** + * The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. + */ + readonly singleSignOnApplicationArn?: string; /** * The SSO managed application instance ID. */ readonly singleSignOnManagedApplicationInstanceId?: string; + /** + * The VPC subnets that Studio uses for communication. + */ + readonly subnetIds?: string[]; /** * The URL to the created domain. */ diff --git a/sdk/nodejs/securityhub/getHub.ts b/sdk/nodejs/securityhub/getHub.ts index a32eeee2de..55c0104782 100644 --- a/sdk/nodejs/securityhub/getHub.ts +++ b/sdk/nodejs/securityhub/getHub.ts @@ -2,37 +2,58 @@ // *** 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 Type definition for AWS::SecurityHub::Hub + * The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. */ export function getHub(args: GetHubArgs, opts?: pulumi.InvokeOptions): Promise { opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts || {}); return pulumi.runtime.invoke("aws-native:securityhub:getHub", { - "id": args.id, + "arn": args.arn, }, opts); } export interface GetHubArgs { - id: string; + /** + * An ARN is automatically created for the customer. + */ + arn: string; } export interface GetHubResult { + /** + * An ARN is automatically created for the customer. + */ + readonly arn?: string; + /** + * Whether to automatically enable new controls when they are added to standards that are enabled + */ readonly autoEnableControls?: boolean; + /** + * This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + */ readonly controlFindingGenerator?: string; - readonly enableDefaultStandards?: boolean; - readonly id?: string; - readonly tags?: any; + /** + * The date and time when Security Hub was enabled in the account. + */ + readonly subscribedAt?: string; + readonly tags?: outputs.securityhub.HubTags; } /** - * Resource Type definition for AWS::SecurityHub::Hub + * The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. */ export function getHubOutput(args: GetHubOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output { return pulumi.output(args).apply((a: any) => getHub(a, opts)) } export interface GetHubOutputArgs { - id: pulumi.Input; + /** + * An ARN is automatically created for the customer. + */ + arn: pulumi.Input; } diff --git a/sdk/nodejs/securityhub/hub.ts b/sdk/nodejs/securityhub/hub.ts index 0a1fba26db..48f3ddd6d8 100644 --- a/sdk/nodejs/securityhub/hub.ts +++ b/sdk/nodejs/securityhub/hub.ts @@ -2,12 +2,13 @@ // *** 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 Type definition for AWS::SecurityHub::Hub - * - * @deprecated Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. + * The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. */ export class Hub extends pulumi.CustomResource { /** @@ -19,7 +20,6 @@ export class Hub extends pulumi.CustomResource { * @param opts Optional settings to control the behavior of the CustomResource. */ public static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Hub { - pulumi.log.warn("Hub is deprecated: Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") return new Hub(name, undefined as any, { ...opts, id: id }); } @@ -37,10 +37,27 @@ export class Hub extends pulumi.CustomResource { return obj['__pulumiType'] === Hub.__pulumiType; } + /** + * An ARN is automatically created for the customer. + */ + public /*out*/ readonly arn!: pulumi.Output; + /** + * Whether to automatically enable new controls when they are added to standards that are enabled + */ public readonly autoEnableControls!: pulumi.Output; + /** + * This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + */ public readonly controlFindingGenerator!: pulumi.Output; + /** + * Whether to enable the security standards that Security Hub has designated as automatically enabled. + */ public readonly enableDefaultStandards!: pulumi.Output; - public readonly tags!: pulumi.Output; + /** + * The date and time when Security Hub was enabled in the account. + */ + public /*out*/ readonly subscribedAt!: pulumi.Output; + public readonly tags!: pulumi.Output; /** * Create a Hub resource with the given unique name, arguments, and options. @@ -49,9 +66,7 @@ export class Hub extends pulumi.CustomResource { * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ - /** @deprecated Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible. */ constructor(name: string, args?: HubArgs, opts?: pulumi.CustomResourceOptions) { - pulumi.log.warn("Hub is deprecated: Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.") let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { @@ -59,10 +74,14 @@ export class Hub extends pulumi.CustomResource { resourceInputs["controlFindingGenerator"] = args ? args.controlFindingGenerator : undefined; resourceInputs["enableDefaultStandards"] = args ? args.enableDefaultStandards : undefined; resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["arn"] = undefined /*out*/; + resourceInputs["subscribedAt"] = undefined /*out*/; } else { + resourceInputs["arn"] = undefined /*out*/; resourceInputs["autoEnableControls"] = undefined /*out*/; resourceInputs["controlFindingGenerator"] = undefined /*out*/; resourceInputs["enableDefaultStandards"] = undefined /*out*/; + resourceInputs["subscribedAt"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -74,8 +93,17 @@ export class Hub extends pulumi.CustomResource { * The set of arguments for constructing a Hub resource. */ export interface HubArgs { + /** + * Whether to automatically enable new controls when they are added to standards that are enabled + */ autoEnableControls?: pulumi.Input; + /** + * This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + */ controlFindingGenerator?: pulumi.Input; + /** + * Whether to enable the security standards that Security Hub has designated as automatically enabled. + */ enableDefaultStandards?: pulumi.Input; - tags?: any; + tags?: pulumi.Input; } diff --git a/sdk/nodejs/servicecatalogappregistry/application.ts b/sdk/nodejs/servicecatalogappregistry/application.ts index fb74010924..6034cfcd7e 100644 --- a/sdk/nodejs/servicecatalogappregistry/application.ts +++ b/sdk/nodejs/servicecatalogappregistry/application.ts @@ -37,6 +37,18 @@ export class Application extends pulumi.CustomResource { return obj['__pulumiType'] === Application.__pulumiType; } + /** + * The name of the application. + */ + public /*out*/ readonly applicationName!: pulumi.Output; + /** + * The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + */ + public /*out*/ readonly applicationTagKey!: pulumi.Output; + /** + * The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + */ + public /*out*/ readonly applicationTagValue!: pulumi.Output; public /*out*/ readonly arn!: pulumi.Output; /** * The description of the application. @@ -62,8 +74,14 @@ export class Application extends pulumi.CustomResource { resourceInputs["description"] = args ? args.description : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["tags"] = args ? args.tags : undefined; + resourceInputs["applicationName"] = undefined /*out*/; + resourceInputs["applicationTagKey"] = undefined /*out*/; + resourceInputs["applicationTagValue"] = undefined /*out*/; resourceInputs["arn"] = undefined /*out*/; } else { + resourceInputs["applicationName"] = undefined /*out*/; + resourceInputs["applicationTagKey"] = undefined /*out*/; + resourceInputs["applicationTagValue"] = undefined /*out*/; resourceInputs["arn"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; diff --git a/sdk/nodejs/servicecatalogappregistry/getApplication.ts b/sdk/nodejs/servicecatalogappregistry/getApplication.ts index 3eaebe6df6..e2eed63393 100644 --- a/sdk/nodejs/servicecatalogappregistry/getApplication.ts +++ b/sdk/nodejs/servicecatalogappregistry/getApplication.ts @@ -23,6 +23,18 @@ export interface GetApplicationArgs { } export interface GetApplicationResult { + /** + * The name of the application. + */ + readonly applicationName?: string; + /** + * The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + */ + readonly applicationTagKey?: string; + /** + * The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + */ + readonly applicationTagValue?: string; readonly arn?: string; /** * The description of the application. diff --git a/sdk/nodejs/sns/getSubscription.ts b/sdk/nodejs/sns/getSubscription.ts index 416ba86277..0d51d97a29 100644 --- a/sdk/nodejs/sns/getSubscription.ts +++ b/sdk/nodejs/sns/getSubscription.ts @@ -27,6 +27,7 @@ export interface GetSubscriptionResult { readonly rawMessageDelivery?: boolean; readonly redrivePolicy?: any; readonly region?: string; + readonly replayPolicy?: any; readonly subscriptionRoleArn?: string; } /** diff --git a/sdk/nodejs/sns/subscription.ts b/sdk/nodejs/sns/subscription.ts index 937be5d936..cfb8c9cb1c 100644 --- a/sdk/nodejs/sns/subscription.ts +++ b/sdk/nodejs/sns/subscription.ts @@ -45,6 +45,7 @@ export class Subscription extends pulumi.CustomResource { public readonly rawMessageDelivery!: pulumi.Output; public readonly redrivePolicy!: pulumi.Output; public readonly region!: pulumi.Output; + public readonly replayPolicy!: pulumi.Output; public readonly subscriptionRoleArn!: pulumi.Output; public readonly topicArn!: pulumi.Output; @@ -75,6 +76,7 @@ export class Subscription extends pulumi.CustomResource { resourceInputs["rawMessageDelivery"] = args ? args.rawMessageDelivery : undefined; resourceInputs["redrivePolicy"] = args ? args.redrivePolicy : undefined; resourceInputs["region"] = args ? args.region : undefined; + resourceInputs["replayPolicy"] = args ? args.replayPolicy : undefined; resourceInputs["subscriptionRoleArn"] = args ? args.subscriptionRoleArn : undefined; resourceInputs["topicArn"] = args ? args.topicArn : undefined; } else { @@ -86,6 +88,7 @@ export class Subscription extends pulumi.CustomResource { resourceInputs["rawMessageDelivery"] = undefined /*out*/; resourceInputs["redrivePolicy"] = undefined /*out*/; resourceInputs["region"] = undefined /*out*/; + resourceInputs["replayPolicy"] = undefined /*out*/; resourceInputs["subscriptionRoleArn"] = undefined /*out*/; resourceInputs["topicArn"] = undefined /*out*/; } @@ -108,6 +111,7 @@ export interface SubscriptionArgs { rawMessageDelivery?: pulumi.Input; redrivePolicy?: any; region?: pulumi.Input; + replayPolicy?: any; subscriptionRoleArn?: pulumi.Input; topicArn: pulumi.Input; } diff --git a/sdk/nodejs/ssm/getAssociation.ts b/sdk/nodejs/ssm/getAssociation.ts index fcf3f6c212..3d6c4424b2 100644 --- a/sdk/nodejs/ssm/getAssociation.ts +++ b/sdk/nodejs/ssm/getAssociation.ts @@ -67,7 +67,6 @@ export interface GetAssociationResult { * The targets that the SSM document sends commands to. */ readonly targets?: outputs.ssm.AssociationTarget[]; - readonly waitForSuccessTimeoutSeconds?: number; } /** * The AWS::SSM::Association resource associates an SSM document in AWS Systems Manager with EC2 instances that contain a configuration agent to process the document. diff --git a/sdk/nodejs/tsconfig.json b/sdk/nodejs/tsconfig.json index 19fd606ff7..85d10e17b5 100644 --- a/sdk/nodejs/tsconfig.json +++ b/sdk/nodejs/tsconfig.json @@ -260,6 +260,15 @@ "autoscalingplans/getScalingPlan.ts", "autoscalingplans/index.ts", "autoscalingplans/scalingPlan.ts", + "b2bi/capability.ts", + "b2bi/getCapability.ts", + "b2bi/getPartnership.ts", + "b2bi/getProfile.ts", + "b2bi/getTransformer.ts", + "b2bi/index.ts", + "b2bi/partnership.ts", + "b2bi/profile.ts", + "b2bi/transformer.ts", "backup/backupPlan.ts", "backup/backupSelection.ts", "backup/backupVault.ts", @@ -381,6 +390,7 @@ "cloudfront/getDistribution.ts", "cloudfront/getFunction.ts", "cloudfront/getKeyGroup.ts", + "cloudfront/getKeyValueStore.ts", "cloudfront/getMonitoringSubscription.ts", "cloudfront/getOriginAccessControl.ts", "cloudfront/getOriginRequestPolicy.ts", @@ -390,6 +400,7 @@ "cloudfront/getStreamingDistribution.ts", "cloudfront/index.ts", "cloudfront/keyGroup.ts", + "cloudfront/keyValueStore.ts", "cloudfront/monitoringSubscription.ts", "cloudfront/originAccessControl.ts", "cloudfront/originRequestPolicy.ts", @@ -675,16 +686,22 @@ "dlm/index.ts", "dlm/lifecyclePolicy.ts", "dms/certificate.ts", + "dms/dataProvider.ts", "dms/endpoint.ts", "dms/eventSubscription.ts", "dms/getCertificate.ts", + "dms/getDataProvider.ts", "dms/getEndpoint.ts", "dms/getEventSubscription.ts", + "dms/getInstanceProfile.ts", + "dms/getMigrationProject.ts", "dms/getReplicationConfig.ts", "dms/getReplicationInstance.ts", "dms/getReplicationSubnetGroup.ts", "dms/getReplicationTask.ts", "dms/index.ts", + "dms/instanceProfile.ts", + "dms/migrationProject.ts", "dms/replicationConfig.ts", "dms/replicationInstance.ts", "dms/replicationSubnetGroup.ts", @@ -772,6 +789,7 @@ "ec2/getSecurityGroup.ts", "ec2/getSecurityGroupEgress.ts", "ec2/getSecurityGroupIngress.ts", + "ec2/getSnapshotBlockPublicAccess.ts", "ec2/getSpotFleet.ts", "ec2/getSubnet.ts", "ec2/getSubnetCidrBlock.ts", @@ -846,6 +864,7 @@ "ec2/securityGroup.ts", "ec2/securityGroupEgress.ts", "ec2/securityGroupIngress.ts", + "ec2/snapshotBlockPublicAccess.ts", "ec2/spotFleet.ts", "ec2/subnet.ts", "ec2/subnetCidrBlock.ts", @@ -1053,7 +1072,9 @@ "finspace/index.ts", "fis/experimentTemplate.ts", "fis/getExperimentTemplate.ts", + "fis/getTargetAccountConfiguration.ts", "fis/index.ts", + "fis/targetAccountConfiguration.ts", "fms/getNotificationChannel.ts", "fms/getPolicy.ts", "fms/getResourceSet.ts", @@ -1276,12 +1297,14 @@ "imagebuilder/getImageRecipe.ts", "imagebuilder/getInfrastructureConfiguration.ts", "imagebuilder/getLifecyclePolicy.ts", + "imagebuilder/getWorkflow.ts", "imagebuilder/image.ts", "imagebuilder/imagePipeline.ts", "imagebuilder/imageRecipe.ts", "imagebuilder/index.ts", "imagebuilder/infrastructureConfiguration.ts", "imagebuilder/lifecyclePolicy.ts", + "imagebuilder/workflow.ts", "importValue.ts", "index.ts", "inspector/assessmentTarget.ts", @@ -1302,6 +1325,7 @@ "iot/billingGroup.ts", "iot/caCertificate.ts", "iot/certificate.ts", + "iot/certificateProvider.ts", "iot/customMetric.ts", "iot/dimension.ts", "iot/domainConfiguration.ts", @@ -1311,6 +1335,7 @@ "iot/getBillingGroup.ts", "iot/getCaCertificate.ts", "iot/getCertificate.ts", + "iot/getCertificateProvider.ts", "iot/getCustomMetric.ts", "iot/getDimension.ts", "iot/getDomainConfiguration.ts", @@ -2467,6 +2492,7 @@ "types/enums/arczonalshift/index.ts", "types/enums/athena/index.ts", "types/enums/auditmanager/index.ts", + "types/enums/b2bi/index.ts", "types/enums/backup/index.ts", "types/enums/batch/index.ts", "types/enums/billingconductor/index.ts", @@ -2502,6 +2528,7 @@ "types/enums/events/index.ts", "types/enums/evidently/index.ts", "types/enums/finspace/index.ts", + "types/enums/fis/index.ts", "types/enums/fms/index.ts", "types/enums/forecast/index.ts", "types/enums/frauddetector/index.ts", diff --git a/sdk/nodejs/types/enums/b2bi/index.ts b/sdk/nodejs/types/enums/b2bi/index.ts new file mode 100644 index 0000000000..96f437ae54 --- /dev/null +++ b/sdk/nodejs/types/enums/b2bi/index.ts @@ -0,0 +1,106 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + + +export const CapabilityType = { + Edi: "edi", +} as const; + +export type CapabilityType = (typeof CapabilityType)[keyof typeof CapabilityType]; + +export const CapabilityX12TransactionSet = { + X12110: "X12_110", + X12180: "X12_180", + X12204: "X12_204", + X12210: "X12_210", + X12214: "X12_214", + X12215: "X12_215", + X12310: "X12_310", + X12315: "X12_315", + X12322: "X12_322", + X12404: "X12_404", + X12410: "X12_410", + X12820: "X12_820", + X12824: "X12_824", + X12830: "X12_830", + X12846: "X12_846", + X12850: "X12_850", + X12852: "X12_852", + X12855: "X12_855", + X12856: "X12_856", + X12860: "X12_860", + X12861: "X12_861", + X12864: "X12_864", + X12940: "X12_940", + X12990: "X12_990", + X12997: "X12_997", +} as const; + +export type CapabilityX12TransactionSet = (typeof CapabilityX12TransactionSet)[keyof typeof CapabilityX12TransactionSet]; + +export const CapabilityX12Version = { + Version4010: "VERSION_4010", + Version4030: "VERSION_4030", + Version5010: "VERSION_5010", +} as const; + +export type CapabilityX12Version = (typeof CapabilityX12Version)[keyof typeof CapabilityX12Version]; + +export const ProfileLogging = { + Enabled: "ENABLED", + Disabled: "DISABLED", +} as const; + +export type ProfileLogging = (typeof ProfileLogging)[keyof typeof ProfileLogging]; + +export const TransformerFileFormat = { + Xml: "XML", + Json: "JSON", +} as const; + +export type TransformerFileFormat = (typeof TransformerFileFormat)[keyof typeof TransformerFileFormat]; + +export const TransformerStatus = { + Active: "active", + Inactive: "inactive", +} as const; + +export type TransformerStatus = (typeof TransformerStatus)[keyof typeof TransformerStatus]; + +export const TransformerX12TransactionSet = { + X12110: "X12_110", + X12180: "X12_180", + X12204: "X12_204", + X12210: "X12_210", + X12214: "X12_214", + X12215: "X12_215", + X12310: "X12_310", + X12315: "X12_315", + X12322: "X12_322", + X12404: "X12_404", + X12410: "X12_410", + X12820: "X12_820", + X12824: "X12_824", + X12830: "X12_830", + X12846: "X12_846", + X12850: "X12_850", + X12852: "X12_852", + X12855: "X12_855", + X12856: "X12_856", + X12860: "X12_860", + X12861: "X12_861", + X12864: "X12_864", + X12940: "X12_940", + X12990: "X12_990", + X12997: "X12_997", +} as const; + +export type TransformerX12TransactionSet = (typeof TransformerX12TransactionSet)[keyof typeof TransformerX12TransactionSet]; + +export const TransformerX12Version = { + Version4010: "VERSION_4010", + Version4030: "VERSION_4030", + Version5010: "VERSION_5010", +} as const; + +export type TransformerX12Version = (typeof TransformerX12Version)[keyof typeof TransformerX12Version]; diff --git a/sdk/nodejs/types/enums/connect/index.ts b/sdk/nodejs/types/enums/connect/index.ts index 9ee2f3433e..b54894cf0f 100644 --- a/sdk/nodejs/types/enums/connect/index.ts +++ b/sdk/nodejs/types/enums/connect/index.ts @@ -181,6 +181,7 @@ export type InstanceStorageConfigStorageType = (typeof InstanceStorageConfigStor export const IntegrationAssociationIntegrationType = { LexBot: "LEX_BOT", LambdaFunction: "LAMBDA_FUNCTION", + Application: "APPLICATION", } as const; /** @@ -288,6 +289,8 @@ export const RuleTriggerEventSourceEventSourceName = { OnZendeskTicketStatusUpdate: "OnZendeskTicketStatusUpdate", OnSalesforceCaseCreate: "OnSalesforceCaseCreate", OnMetricDataUpdate: "OnMetricDataUpdate", + OnCaseCreate: "OnCaseCreate", + OnCasesUpdate: "OnCasesUpdate", } as const; /** diff --git a/sdk/nodejs/types/enums/dms/index.ts b/sdk/nodejs/types/enums/dms/index.ts index 1cb705f26f..dcef3dd2a1 100644 --- a/sdk/nodejs/types/enums/dms/index.ts +++ b/sdk/nodejs/types/enums/dms/index.ts @@ -2,6 +2,40 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** +export const DataProviderDmsSslModeValue = { + None: "none", + Require: "require", + VerifyCa: "verify_ca", + VerifyFull: "verify_full", +} as const; + +export type DataProviderDmsSslModeValue = (typeof DataProviderDmsSslModeValue)[keyof typeof DataProviderDmsSslModeValue]; + +export const DataProviderEngine = { + Postgresql: "postgresql", + Mysql: "mysql", + Oracle: "oracle", + Sqlserver: "sqlserver", + Aurora: "aurora", + AuroraPostgresql: "aurora_postgresql", +} as const; + +/** + * The property describes a data engine for the data provider. + */ +export type DataProviderEngine = (typeof DataProviderEngine)[keyof typeof DataProviderEngine]; + +export const InstanceProfileNetworkType = { + Ipv4: "IPV4", + Ipv6: "IPV6", + Dual: "DUAL", +} as const; + +/** + * The property describes a network type for the instance profile. + */ +export type InstanceProfileNetworkType = (typeof InstanceProfileNetworkType)[keyof typeof InstanceProfileNetworkType]; + export const ReplicationConfigReplicationType = { FullLoad: "full-load", FullLoadAndCdc: "full-load-and-cdc", diff --git a/sdk/nodejs/types/enums/ec2/index.ts b/sdk/nodejs/types/enums/ec2/index.ts index d3c9969d5c..5c7e7f5a86 100644 --- a/sdk/nodejs/types/enums/ec2/index.ts +++ b/sdk/nodejs/types/enums/ec2/index.ts @@ -391,6 +391,16 @@ export const PrefixListAddressFamily = { */ export type PrefixListAddressFamily = (typeof PrefixListAddressFamily)[keyof typeof PrefixListAddressFamily]; +export const SnapshotBlockPublicAccessState = { + BlockAllSharing: "block-all-sharing", + BlockNewSharing: "block-new-sharing", +} as const; + +/** + * The state of EBS Snapshot Block Public Access. + */ +export type SnapshotBlockPublicAccessState = (typeof SnapshotBlockPublicAccessState)[keyof typeof SnapshotBlockPublicAccessState]; + export const SpotFleetEbsBlockDeviceVolumeType = { Gp2: "gp2", Gp3: "gp3", diff --git a/sdk/nodejs/types/enums/ecs/index.ts b/sdk/nodejs/types/enums/ecs/index.ts index 1e80fe2184..5d2b8e4b9d 100644 --- a/sdk/nodejs/types/enums/ecs/index.ts +++ b/sdk/nodejs/types/enums/ecs/index.ts @@ -2,6 +2,13 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** +export const CapacityProviderAutoScalingGroupProviderManagedDraining = { + Disabled: "DISABLED", + Enabled: "ENABLED", +} as const; + +export type CapacityProviderAutoScalingGroupProviderManagedDraining = (typeof CapacityProviderAutoScalingGroupProviderManagedDraining)[keyof typeof CapacityProviderAutoScalingGroupProviderManagedDraining]; + export const CapacityProviderAutoScalingGroupProviderManagedTerminationProtection = { Disabled: "DISABLED", Enabled: "ENABLED", diff --git a/sdk/nodejs/types/enums/eks/index.ts b/sdk/nodejs/types/enums/eks/index.ts index 0d92755787..67ad473781 100644 --- a/sdk/nodejs/types/enums/eks/index.ts +++ b/sdk/nodejs/types/enums/eks/index.ts @@ -13,6 +13,17 @@ export const AddonResolveConflicts = { */ export type AddonResolveConflicts = (typeof AddonResolveConflicts)[keyof typeof AddonResolveConflicts]; +export const ClusterAccessConfigAuthenticationMode = { + ConfigMap: "CONFIG_MAP", + ApiAndConfigMap: "API_AND_CONFIG_MAP", + Api: "API", +} as const; + +/** + * Specify the authentication mode that should be used to create your cluster. + */ +export type ClusterAccessConfigAuthenticationMode = (typeof ClusterAccessConfigAuthenticationMode)[keyof typeof ClusterAccessConfigAuthenticationMode]; + export const ClusterKubernetesNetworkConfigIpFamily = { Ipv4: "ipv4", Ipv6: "ipv6", diff --git a/sdk/nodejs/types/enums/emr/index.ts b/sdk/nodejs/types/enums/emr/index.ts index c647766f19..dd44520a67 100644 --- a/sdk/nodejs/types/enums/emr/index.ts +++ b/sdk/nodejs/types/enums/emr/index.ts @@ -12,6 +12,16 @@ export const StudioAuthMode = { */ export type StudioAuthMode = (typeof StudioAuthMode)[keyof typeof StudioAuthMode]; +export const StudioIdcUserAssignment = { + Required: "REQUIRED", + Optional: "OPTIONAL", +} as const; + +/** + * Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + */ +export type StudioIdcUserAssignment = (typeof StudioIdcUserAssignment)[keyof typeof StudioIdcUserAssignment]; + export const StudioSessionMappingIdentityType = { User: "USER", Group: "GROUP", diff --git a/sdk/nodejs/types/enums/fis/index.ts b/sdk/nodejs/types/enums/fis/index.ts new file mode 100644 index 0000000000..c17e04f438 --- /dev/null +++ b/sdk/nodejs/types/enums/fis/index.ts @@ -0,0 +1,23 @@ +// *** WARNING: this file was generated by the Pulumi SDK Generator. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + + +export const ExperimentTemplateExperimentOptionsAccountTargeting = { + MultiAccount: "multi-account", + SingleAccount: "single-account", +} as const; + +/** + * The account targeting setting for the experiment template. + */ +export type ExperimentTemplateExperimentOptionsAccountTargeting = (typeof ExperimentTemplateExperimentOptionsAccountTargeting)[keyof typeof ExperimentTemplateExperimentOptionsAccountTargeting]; + +export const ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode = { + Fail: "fail", + Skip: "skip", +} as const; + +/** + * The target resolution failure mode for the experiment template. + */ +export type ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode = (typeof ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode)[keyof typeof ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode]; diff --git a/sdk/nodejs/types/enums/gamelift/index.ts b/sdk/nodejs/types/enums/gamelift/index.ts index 648afe2108..3af818ed2d 100644 --- a/sdk/nodejs/types/enums/gamelift/index.ts +++ b/sdk/nodejs/types/enums/gamelift/index.ts @@ -25,6 +25,16 @@ export const BuildOperatingSystem = { */ export type BuildOperatingSystem = (typeof BuildOperatingSystem)[keyof typeof BuildOperatingSystem]; +export const FleetApplyCapacity = { + OnUpdate: "ON_UPDATE", + OnCreateAndUpdate: "ON_CREATE_AND_UPDATE", +} as const; + +/** + * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + */ +export type FleetApplyCapacity = (typeof FleetApplyCapacity)[keyof typeof FleetApplyCapacity]; + export const FleetCertificateConfigurationCertificateType = { Disabled: "DISABLED", Generated: "GENERATED", diff --git a/sdk/nodejs/types/enums/imagebuilder/index.ts b/sdk/nodejs/types/enums/imagebuilder/index.ts index 50775f530e..213acb3541 100644 --- a/sdk/nodejs/types/enums/imagebuilder/index.ts +++ b/sdk/nodejs/types/enums/imagebuilder/index.ts @@ -94,6 +94,16 @@ export const ImagePipelineStatus = { */ export type ImagePipelineStatus = (typeof ImagePipelineStatus)[keyof typeof ImagePipelineStatus]; +export const ImagePipelineWorkflowConfigurationOnFailure = { + Continue: "CONTINUE", + Abort: "ABORT", +} as const; + +/** + * Define execution decision in case of workflow failure + */ +export type ImagePipelineWorkflowConfigurationOnFailure = (typeof ImagePipelineWorkflowConfigurationOnFailure)[keyof typeof ImagePipelineWorkflowConfigurationOnFailure]; + export const ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType = { Standard: "standard", Io1: "io1", @@ -109,6 +119,16 @@ export const ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType = { */ export type ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType = (typeof ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType)[keyof typeof ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType]; +export const ImageWorkflowConfigurationOnFailure = { + Continue: "CONTINUE", + Abort: "ABORT", +} as const; + +/** + * Define execution decision in case of workflow failure + */ +export type ImageWorkflowConfigurationOnFailure = (typeof ImageWorkflowConfigurationOnFailure)[keyof typeof ImageWorkflowConfigurationOnFailure]; + export const InfrastructureConfigurationInstanceMetadataOptionsHttpTokens = { Required: "required", Optional: "optional", @@ -171,3 +191,14 @@ export const LifecyclePolicyTimeUnit = { * A time unit. */ export type LifecyclePolicyTimeUnit = (typeof LifecyclePolicyTimeUnit)[keyof typeof LifecyclePolicyTimeUnit]; + +export const WorkflowType = { + Build: "BUILD", + Test: "TEST", + Distribution: "DISTRIBUTION", +} as const; + +/** + * The type of the workflow denotes whether the workflow is used to build, test, or distribute. + */ +export type WorkflowType = (typeof WorkflowType)[keyof typeof WorkflowType]; diff --git a/sdk/nodejs/types/enums/index.ts b/sdk/nodejs/types/enums/index.ts index cac00ec1a0..4610bb85c8 100644 --- a/sdk/nodejs/types/enums/index.ts +++ b/sdk/nodejs/types/enums/index.ts @@ -12,6 +12,7 @@ import * as appsync from "./appsync"; import * as arczonalshift from "./arczonalshift"; import * as athena from "./athena"; import * as auditmanager from "./auditmanager"; +import * as b2bi from "./b2bi"; import * as backup from "./backup"; import * as batch from "./batch"; import * as billingconductor from "./billingconductor"; @@ -47,6 +48,7 @@ import * as entityresolution from "./entityresolution"; import * as events from "./events"; import * as evidently from "./evidently"; import * as finspace from "./finspace"; +import * as fis from "./fis"; import * as fms from "./fms"; import * as forecast from "./forecast"; import * as frauddetector from "./frauddetector"; @@ -163,6 +165,7 @@ export { arczonalshift, athena, auditmanager, + b2bi, backup, batch, billingconductor, @@ -198,6 +201,7 @@ export { events, evidently, finspace, + fis, fms, forecast, frauddetector, diff --git a/sdk/nodejs/types/enums/iot/index.ts b/sdk/nodejs/types/enums/iot/index.ts index f5e9600d8a..b56da01f0d 100644 --- a/sdk/nodejs/types/enums/iot/index.ts +++ b/sdk/nodejs/types/enums/iot/index.ts @@ -37,6 +37,12 @@ export const CertificateMode = { export type CertificateMode = (typeof CertificateMode)[keyof typeof CertificateMode]; +export const CertificateProviderOperation = { + CreateCertificateFromCsr: "CreateCertificateFromCsr", +} as const; + +export type CertificateProviderOperation = (typeof CertificateProviderOperation)[keyof typeof CertificateProviderOperation]; + export const CertificateStatus = { Active: "ACTIVE", Inactive: "INACTIVE", diff --git a/sdk/nodejs/types/enums/kinesisfirehose/index.ts b/sdk/nodejs/types/enums/kinesisfirehose/index.ts index 58922165dd..c56d9c6720 100644 --- a/sdk/nodejs/types/enums/kinesisfirehose/index.ts +++ b/sdk/nodejs/types/enums/kinesisfirehose/index.ts @@ -96,6 +96,7 @@ export type DeliveryStreamHttpEndpointRequestConfigurationContentEncoding = (typ export const DeliveryStreamProcessorType = { RecordDeAggregation: "RecordDeAggregation", + Decompression: "Decompression", Lambda: "Lambda", MetadataExtraction: "MetadataExtraction", AppendDelimiterToRecord: "AppendDelimiterToRecord", diff --git a/sdk/nodejs/types/enums/s3/index.ts b/sdk/nodejs/types/enums/s3/index.ts index 6e5f3bbfba..cd83eb68ce 100644 --- a/sdk/nodejs/types/enums/s3/index.ts +++ b/sdk/nodejs/types/enums/s3/index.ts @@ -137,6 +137,9 @@ export const BucketInventoryConfigurationOptionalFieldsItem = { ObjectLockLegalHoldStatus: "ObjectLockLegalHoldStatus", IntelligentTieringAccessTier: "IntelligentTieringAccessTier", BucketKeyStatus: "BucketKeyStatus", + ChecksumAlgorithm: "ChecksumAlgorithm", + ObjectAccessControlList: "ObjectAccessControlList", + ObjectOwner: "ObjectOwner", } as const; export type BucketInventoryConfigurationOptionalFieldsItem = (typeof BucketInventoryConfigurationOptionalFieldsItem)[keyof typeof BucketInventoryConfigurationOptionalFieldsItem]; diff --git a/sdk/nodejs/types/enums/s3express/index.ts b/sdk/nodejs/types/enums/s3express/index.ts index 72416a8f9f..790adc46d1 100644 --- a/sdk/nodejs/types/enums/s3express/index.ts +++ b/sdk/nodejs/types/enums/s3express/index.ts @@ -7,6 +7,6 @@ export const DirectoryBucketDataRedundancy = { } as const; /** - * Specifies the number of Avilability Zone that's used for redundancy for the bucket. + * Specifies the number of Availability Zone that's used for redundancy for the bucket. */ export type DirectoryBucketDataRedundancy = (typeof DirectoryBucketDataRedundancy)[keyof typeof DirectoryBucketDataRedundancy]; diff --git a/sdk/nodejs/types/enums/sagemaker/index.ts b/sdk/nodejs/types/enums/sagemaker/index.ts index 13672da655..e8f21cb3d7 100644 --- a/sdk/nodejs/types/enums/sagemaker/index.ts +++ b/sdk/nodejs/types/enums/sagemaker/index.ts @@ -63,6 +63,9 @@ export const AppResourceSpecInstanceType = { MlP4d24xlarge: "ml.p4d.24xlarge", MlP4de24xlarge: "ml.p4de.24xlarge", MlGeospatialInteractive: "ml.geospatial.interactive", + MlTrn12xlarge: "ml.trn1.2xlarge", + MlTrn132xlarge: "ml.trn1.32xlarge", + MlTrn1n32xlarge: "ml.trn1n.32xlarge", } as const; /** @@ -244,6 +247,9 @@ export const DomainResourceSpecInstanceType = { MlP4d24xlarge: "ml.p4d.24xlarge", MlP4de24xlarge: "ml.p4de.24xlarge", MlGeospatialInteractive: "ml.geospatial.interactive", + MlTrn12xlarge: "ml.trn1.2xlarge", + MlTrn132xlarge: "ml.trn1.32xlarge", + MlTrn1n32xlarge: "ml.trn1n.32xlarge", } as const; /** @@ -261,6 +267,16 @@ export const DomainSharingSettingsNotebookOutputOption = { */ export type DomainSharingSettingsNotebookOutputOption = (typeof DomainSharingSettingsNotebookOutputOption)[keyof typeof DomainSharingSettingsNotebookOutputOption]; +export const DomainUserSettingsStudioWebPortal = { + Enabled: "ENABLED", + Disabled: "DISABLED", +} as const; + +/** + * Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + */ +export type DomainUserSettingsStudioWebPortal = (typeof DomainUserSettingsStudioWebPortal)[keyof typeof DomainUserSettingsStudioWebPortal]; + export const FeatureGroupFeatureDefinitionFeatureType = { Integral: "Integral", Fractional: "Fractional", @@ -269,6 +285,13 @@ export const FeatureGroupFeatureDefinitionFeatureType = { export type FeatureGroupFeatureDefinitionFeatureType = (typeof FeatureGroupFeatureDefinitionFeatureType)[keyof typeof FeatureGroupFeatureDefinitionFeatureType]; +export const FeatureGroupStorageType = { + Standard: "Standard", + InMemory: "InMemory", +} as const; + +export type FeatureGroupStorageType = (typeof FeatureGroupStorageType)[keyof typeof FeatureGroupStorageType]; + export const FeatureGroupTableFormat = { Iceberg: "Iceberg", Glue: "Glue", @@ -1006,6 +1029,9 @@ export const UserProfileResourceSpecInstanceType = { MlP4d24xlarge: "ml.p4d.24xlarge", MlP4de24xlarge: "ml.p4de.24xlarge", MlGeospatialInteractive: "ml.geospatial.interactive", + MlTrn12xlarge: "ml.trn1.2xlarge", + MlTrn132xlarge: "ml.trn1.32xlarge", + MlTrn1n32xlarge: "ml.trn1n.32xlarge", } as const; /** @@ -1022,3 +1048,13 @@ export const UserProfileSharingSettingsNotebookOutputOption = { * Whether to include the notebook cell output when sharing the notebook. The default is Disabled. */ export type UserProfileSharingSettingsNotebookOutputOption = (typeof UserProfileSharingSettingsNotebookOutputOption)[keyof typeof UserProfileSharingSettingsNotebookOutputOption]; + +export const UserProfileUserSettingsStudioWebPortal = { + Enabled: "ENABLED", + Disabled: "DISABLED", +} as const; + +/** + * Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + */ +export type UserProfileUserSettingsStudioWebPortal = (typeof UserProfileUserSettingsStudioWebPortal)[keyof typeof UserProfileUserSettingsStudioWebPortal]; diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 69c4924f5c..5c4a081aa5 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -755,7 +755,7 @@ export namespace accessanalyzer { */ export interface AnalyzerUnusedAccessConfigurationArgs { /** - * The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + * The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. */ unusedAccessAge?: pulumi.Input; } @@ -5398,14 +5398,14 @@ export namespace autoscaling { localStorage?: pulumi.Input; localStorageTypes?: pulumi.Input[]>; memoryGiBPerVCpu?: pulumi.Input; - memoryMiB?: pulumi.Input; + memoryMiB: pulumi.Input; networkBandwidthGbps?: pulumi.Input; networkInterfaceCount?: pulumi.Input; onDemandMaxPricePercentageOverLowestPrice?: pulumi.Input; requireHibernateSupport?: pulumi.Input; spotMaxPricePercentageOverLowestPrice?: pulumi.Input; totalLocalStorageGb?: pulumi.Input; - vCpuCount?: pulumi.Input; + vCpuCount: pulumi.Input; } export interface AutoScalingGroupInstancesDistributionArgs { @@ -5741,6 +5741,62 @@ export namespace autoscalingplans { } } +export namespace b2bi { + export interface CapabilityConfigurationPropertiesArgs { + edi: pulumi.Input; + } + + export interface CapabilityEdiConfigurationArgs { + inputLocation: pulumi.Input; + outputLocation: pulumi.Input; + transformerId: pulumi.Input; + type: pulumi.Input; + } + + export interface CapabilityEdiTypePropertiesArgs { + x12Details: pulumi.Input; + } + + export interface CapabilityS3LocationArgs { + bucketName?: pulumi.Input; + key?: pulumi.Input; + } + + export interface CapabilityTagArgs { + key: pulumi.Input; + value: pulumi.Input; + } + + export interface CapabilityX12DetailsArgs { + transactionSet?: pulumi.Input; + version?: pulumi.Input; + } + + export interface PartnershipTagArgs { + key: pulumi.Input; + value: pulumi.Input; + } + + export interface ProfileTagArgs { + key: pulumi.Input; + value: pulumi.Input; + } + + export interface TransformerEdiTypePropertiesArgs { + x12Details: pulumi.Input; + } + + export interface TransformerTagArgs { + key: pulumi.Input; + value: pulumi.Input; + } + + export interface TransformerX12DetailsArgs { + transactionSet?: pulumi.Input; + version?: pulumi.Input; + } +} + export namespace backup { export interface BackupPlanAdvancedBackupSettingResourceTypeArgs { backupOptions: any; @@ -6011,34 +6067,61 @@ export namespace batch { terminateJobsOnUpdate?: pulumi.Input; } - export interface JobDefinitionAuthorizationConfigArgs { - accessPointId?: pulumi.Input; - iam?: pulumi.Input; - } - export interface JobDefinitionContainerPropertiesArgs { command?: pulumi.Input[]>; environment?: pulumi.Input[]>; - ephemeralStorage?: pulumi.Input; + ephemeralStorage?: pulumi.Input; executionRoleArn?: pulumi.Input; - fargatePlatformConfiguration?: pulumi.Input; + fargatePlatformConfiguration?: pulumi.Input; image: pulumi.Input; instanceType?: pulumi.Input; jobRoleArn?: pulumi.Input; - linuxParameters?: pulumi.Input; - logConfiguration?: pulumi.Input; + linuxParameters?: pulumi.Input; + logConfiguration?: pulumi.Input; memory?: pulumi.Input; - mountPoints?: pulumi.Input[]>; - networkConfiguration?: pulumi.Input; + mountPoints?: pulumi.Input[]>; + networkConfiguration?: pulumi.Input; privileged?: pulumi.Input; readonlyRootFilesystem?: pulumi.Input; resourceRequirements?: pulumi.Input[]>; - runtimePlatform?: pulumi.Input; + runtimePlatform?: pulumi.Input; secrets?: pulumi.Input[]>; ulimits?: pulumi.Input[]>; user?: pulumi.Input; vcpus?: pulumi.Input; - volumes?: pulumi.Input[]>; + volumes?: pulumi.Input[]>; + } + + export interface JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs { + sizeInGiB: pulumi.Input; + } + + export interface JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs { + platformVersion?: pulumi.Input; + } + + export interface JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs { + devices?: pulumi.Input[]>; + initProcessEnabled?: pulumi.Input; + maxSwap?: pulumi.Input; + sharedMemorySize?: pulumi.Input; + swappiness?: pulumi.Input; + tmpfs?: pulumi.Input[]>; + } + + export interface JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs { + logDriver: pulumi.Input; + options?: any; + secretOptions?: pulumi.Input[]>; + } + + export interface JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs { + assignPublicIp?: pulumi.Input; + } + + export interface JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs { + cpuArchitecture?: pulumi.Input; + operatingSystemFamily?: pulumi.Input; } export interface JobDefinitionDeviceArgs { @@ -6047,8 +6130,13 @@ export namespace batch { permissions?: pulumi.Input[]>; } + export interface JobDefinitionEfsAuthorizationConfigArgs { + accessPointId?: pulumi.Input; + iam?: pulumi.Input; + } + export interface JobDefinitionEfsVolumeConfigurationArgs { - authorizationConfig?: pulumi.Input; + authorizationConfig?: pulumi.Input; fileSystemId: pulumi.Input; rootDirectory?: pulumi.Input; transitEncryption?: pulumi.Input; @@ -6100,8 +6188,21 @@ export namespace batch { path?: pulumi.Input; } + export interface JobDefinitionEksMetadataArgs { + labels?: any; + } + + export interface JobDefinitionEksPodPropertiesArgs { + containers?: pulumi.Input[]>; + dnsPolicy?: pulumi.Input; + hostNetwork?: pulumi.Input; + metadata?: pulumi.Input; + serviceAccountName?: pulumi.Input; + volumes?: pulumi.Input[]>; + } + export interface JobDefinitionEksPropertiesArgs { - podProperties?: pulumi.Input; + podProperties?: pulumi.Input; } export interface JobDefinitionEksSecretArgs { @@ -6121,10 +6222,6 @@ export namespace batch { value?: pulumi.Input; } - export interface JobDefinitionEphemeralStorageArgs { - sizeInGiB: pulumi.Input; - } - export interface JobDefinitionEvaluateOnExitArgs { action: pulumi.Input; onExitCode?: pulumi.Input; @@ -6132,39 +6229,20 @@ export namespace batch { onStatusReason?: pulumi.Input; } - export interface JobDefinitionFargatePlatformConfigurationArgs { - platformVersion?: pulumi.Input; - } - - export interface JobDefinitionLinuxParametersArgs { - devices?: pulumi.Input[]>; - initProcessEnabled?: pulumi.Input; - maxSwap?: pulumi.Input; - sharedMemorySize?: pulumi.Input; - swappiness?: pulumi.Input; - tmpfs?: pulumi.Input[]>; - } - - export interface JobDefinitionLogConfigurationArgs { - logDriver: pulumi.Input; - options?: any; - secretOptions?: pulumi.Input[]>; + export interface JobDefinitionHostArgs { + sourcePath?: pulumi.Input; } - export interface JobDefinitionMetadataArgs { - labels?: any; + export interface JobDefinitionJobTimeoutArgs { + attemptDurationSeconds?: pulumi.Input; } - export interface JobDefinitionMountPointsArgs { + export interface JobDefinitionMountPointArgs { containerPath?: pulumi.Input; readOnly?: pulumi.Input; sourceVolume?: pulumi.Input; } - export interface JobDefinitionNetworkConfigurationArgs { - assignPublicIp?: pulumi.Input; - } - export interface JobDefinitionNodePropertiesArgs { mainNode: pulumi.Input; nodeRangeProperties: pulumi.Input[]>; @@ -6176,15 +6254,6 @@ export namespace batch { targetNodes: pulumi.Input; } - export interface JobDefinitionPodPropertiesArgs { - containers?: pulumi.Input[]>; - dnsPolicy?: pulumi.Input; - hostNetwork?: pulumi.Input; - metadata?: pulumi.Input; - serviceAccountName?: pulumi.Input; - volumes?: pulumi.Input[]>; - } - export interface JobDefinitionResourceRequirementArgs { type?: pulumi.Input; value?: pulumi.Input; @@ -6195,20 +6264,11 @@ export namespace batch { evaluateOnExit?: pulumi.Input[]>; } - export interface JobDefinitionRuntimePlatformArgs { - cpuArchitecture?: pulumi.Input; - operatingSystemFamily?: pulumi.Input; - } - export interface JobDefinitionSecretArgs { name: pulumi.Input; valueFrom: pulumi.Input; } - export interface JobDefinitionTimeoutArgs { - attemptDurationSeconds?: pulumi.Input; - } - export interface JobDefinitionTmpfsArgs { containerPath: pulumi.Input; mountOptions?: pulumi.Input[]>; @@ -6221,16 +6281,12 @@ export namespace batch { softLimit: pulumi.Input; } - export interface JobDefinitionVolumesArgs { + export interface JobDefinitionVolumeArgs { efsVolumeConfiguration?: pulumi.Input; - host?: pulumi.Input; + host?: pulumi.Input; name?: pulumi.Input; } - export interface JobDefinitionVolumesHostArgs { - sourcePath?: pulumi.Input; - } - export interface JobQueueComputeEnvironmentOrderArgs { computeEnvironment: pulumi.Input; order: pulumi.Input; @@ -6558,6 +6614,15 @@ export namespace cleanrooms { accountId: pulumi.Input; displayName: pulumi.Input; memberAbilities: pulumi.Input[]>; + paymentConfiguration?: pulumi.Input; + } + + export interface CollaborationPaymentConfigurationArgs { + queryCompute: pulumi.Input; + } + + export interface CollaborationQueryComputePaymentConfigArgs { + isResponsible: pulumi.Input; } export interface CollaborationTagArgs { @@ -6637,6 +6702,10 @@ export namespace cleanrooms { value: pulumi.Input; } + export interface MembershipPaymentConfigurationArgs { + queryCompute: pulumi.Input; + } + export interface MembershipProtectedQueryOutputConfigurationArgs { s3: pulumi.Input; } @@ -6652,6 +6721,10 @@ export namespace cleanrooms { resultFormat: pulumi.Input; } + export interface MembershipQueryComputePaymentConfigArgs { + isResponsible: pulumi.Input; + } + export interface MembershipTagArgs { key: pulumi.Input; value: pulumi.Input; @@ -7099,6 +7172,11 @@ export namespace cloudfront { name: pulumi.Input; } + export interface KeyValueStoreImportSourceArgs { + sourceArn: pulumi.Input; + sourceType: pulumi.Input; + } + export interface MonitoringSubscriptionArgs { realtimeMetricsSubscriptionConfig?: pulumi.Input; } @@ -7911,6 +7989,11 @@ export namespace codedeploy { value: pulumi.Input; } + export interface DeploymentConfigMinimumHealthyHostsPerZoneArgs { + type: pulumi.Input; + value: pulumi.Input; + } + export interface DeploymentConfigTimeBasedCanaryArgs { canaryInterval: pulumi.Input; canaryPercentage: pulumi.Input; @@ -7927,6 +8010,12 @@ export namespace codedeploy { type: pulumi.Input; } + export interface DeploymentConfigZonalConfigArgs { + firstZoneMonitorDurationInSeconds?: pulumi.Input; + minimumHealthyHostsPerZone?: pulumi.Input; + monitorDurationInSeconds?: pulumi.Input; + } + export interface DeploymentGroupAlarmArgs { name?: pulumi.Input; } @@ -8227,6 +8316,20 @@ export namespace codepipeline { type: pulumi.Input; } + export interface PipelineGitConfigurationArgs { + push?: pulumi.Input[]>; + sourceActionName: pulumi.Input; + } + + export interface PipelineGitPushFilterArgs { + tags?: pulumi.Input; + } + + export interface PipelineGitTagFilterCriteriaArgs { + excludes?: pulumi.Input[]>; + includes?: pulumi.Input[]>; + } + export interface PipelineInputArtifactArgs { name: pulumi.Input; } @@ -8251,6 +8354,17 @@ export namespace codepipeline { value: pulumi.Input; } + export interface PipelineTriggerDeclarationArgs { + gitConfiguration?: pulumi.Input; + providerType: pulumi.Input; + } + + export interface PipelineVariableDeclarationArgs { + defaultValue?: pulumi.Input; + description?: pulumi.Input; + name: pulumi.Input; + } + export interface WebhookAuthConfigurationArgs { allowedIpRange?: pulumi.Input; secretToken?: pulumi.Input; @@ -8770,6 +8884,17 @@ export namespace configuration { resourceTypes?: pulumi.Input[]>; } + export interface ConfigurationRecorderRecordingModeArgs { + recordingFrequency: pulumi.Input; + recordingModeOverrides?: pulumi.Input[]>; + } + + export interface ConfigurationRecorderRecordingModeOverrideArgs { + description?: pulumi.Input; + recordingFrequency: pulumi.Input; + resourceTypes: pulumi.Input[]>; + } + export interface ConfigurationRecorderRecordingStrategyArgs { useOnly: pulumi.Input; } @@ -9243,7 +9368,7 @@ export namespace connect { } export interface InstanceStorageConfigKinesisVideoStreamConfigArgs { - encryptionConfig?: pulumi.Input; + encryptionConfig: pulumi.Input; prefix: pulumi.Input; retentionPeriodHours: pulumi.Input; } @@ -9254,6 +9379,20 @@ export namespace connect { encryptionConfig?: pulumi.Input; } + /** + * A key-value pair to associate with a resource. + */ + export interface InstanceTagArgs { + /** + * 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; + } + /** * A key-value pair to associate with a resource. */ @@ -9398,9 +9537,12 @@ export namespace connect { */ export interface RuleActionsArgs { assignContactCategoryActions?: pulumi.Input[]>; + createCaseActions?: pulumi.Input[]>; + endAssociatedTaskActions?: pulumi.Input[]>; eventBridgeActions?: pulumi.Input[]>; sendNotificationActions?: pulumi.Input[]>; taskActions?: pulumi.Input[]>; + updateCaseActions?: pulumi.Input[]>; } /** @@ -9409,6 +9551,23 @@ 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; + } + + /** + * The definition for ending associated task action. + */ + export interface RuleEndAssociatedTasksActionArgs { + } + /** * The definition for event bridge action. */ @@ -9419,6 +9578,27 @@ export namespace connect { 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. + */ + export interface RuleFieldValueArgs { + booleanValue?: pulumi.Input; + doubleValue?: pulumi.Input; + emptyValue?: any; + stringValue?: pulumi.Input; + } + /** * The type of notification recipient. */ @@ -9506,6 +9686,13 @@ export namespace connect { integrationAssociationArn?: pulumi.Input; } + /** + * The definition for update case action. + */ + export interface RuleUpdateCaseActionArgs { + fields: pulumi.Input[]>; + } + /** * A key-value pair to associate with a resource. */ @@ -11763,6 +11950,20 @@ export namespace dlm { } export namespace dms { + /** + * A key-value pair to associate with a resource. + */ + export interface DataProviderTagArgs { + /** + * 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; + } + export interface EndpointDocDbSettingsArgs { docsToInvestigate?: pulumi.Input; extractDocId?: pulumi.Input; @@ -11800,10 +12001,14 @@ export namespace dms { export interface EndpointIbmDb2SettingsArgs { currentLsn?: pulumi.Input; + keepCsvFiles?: pulumi.Input; + loadTimeout?: pulumi.Input; + maxFileSize?: pulumi.Input; maxKBytesPerRead?: pulumi.Input; secretsManagerAccessRoleArn?: pulumi.Input; secretsManagerSecretId?: pulumi.Input; setDataCaptureChanges?: pulumi.Input; + writeBufferSize?: pulumi.Input; } export interface EndpointKafkaSettingsArgs { @@ -12053,6 +12258,45 @@ export namespace dms { value: pulumi.Input; } + /** + * A key-value pair to associate with a resource. + */ + export interface InstanceProfileTagArgs { + /** + * 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; + } + + /** + * It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject + */ + export interface MigrationProjectDataProviderDescriptorArgs { + dataProviderArn?: pulumi.Input; + dataProviderIdentifier?: pulumi.Input; + dataProviderName?: pulumi.Input; + secretsManagerAccessRoleArn?: pulumi.Input; + secretsManagerSecretId?: pulumi.Input; + } + + /** + * A key-value pair to associate with a resource. + */ + export interface MigrationProjectTagArgs { + /** + * 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; + } + /** * Configuration parameters for provisioning a AWS DMS Serverless replication */ @@ -12097,6 +12341,78 @@ export namespace dms { key: pulumi.Input; value: pulumi.Input; } + + /** + * The property describes schema conversion application attributes for the migration project. + */ + export interface SchemaConversionApplicationAttributesPropertiesArgs { + s3BucketPath?: pulumi.Input; + s3BucketRoleArn?: pulumi.Input; + } + + /** + * PostgreSqlSettings property identifier. + */ + export interface Settings0PropertiesArgs { + postgreSqlSettings?: pulumi.Input; + } + + export interface Settings0PropertiesPostgreSqlSettingsPropertiesArgs { + certificateArn?: pulumi.Input; + databaseName?: pulumi.Input; + port?: pulumi.Input; + serverName?: pulumi.Input; + sslMode?: pulumi.Input; + } + + /** + * MySqlSettings property identifier. + */ + export interface Settings1PropertiesArgs { + mySqlSettings?: pulumi.Input; + } + + export interface Settings1PropertiesMySqlSettingsPropertiesArgs { + certificateArn?: pulumi.Input; + port?: pulumi.Input; + serverName?: pulumi.Input; + sslMode?: pulumi.Input; + } + + /** + * OracleSettings property identifier. + */ + export interface Settings2PropertiesArgs { + oracleSettings?: pulumi.Input; + } + + export interface Settings2PropertiesOracleSettingsPropertiesArgs { + asmServer?: pulumi.Input; + certificateArn?: pulumi.Input; + databaseName?: pulumi.Input; + port?: pulumi.Input; + secretsManagerOracleAsmAccessRoleArn?: pulumi.Input; + secretsManagerOracleAsmSecretId?: pulumi.Input; + secretsManagerSecurityDbEncryptionAccessRoleArn?: pulumi.Input; + secretsManagerSecurityDbEncryptionSecretId?: pulumi.Input; + serverName?: pulumi.Input; + sslMode?: pulumi.Input; + } + + /** + * MicrosoftSqlServerSettings property identifier. + */ + export interface Settings3PropertiesArgs { + microsoftSqlServerSettings?: pulumi.Input; + } + + export interface Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs { + certificateArn?: pulumi.Input; + databaseName?: pulumi.Input; + port?: pulumi.Input; + serverName?: pulumi.Input; + sslMode?: pulumi.Input; + } } export namespace docdb { @@ -12594,7 +12910,7 @@ export namespace ec2 { export interface InstanceBlockDeviceMappingArgs { deviceName: pulumi.Input; ebs?: pulumi.Input; - noDevice?: pulumi.Input; + noDevice?: any; virtualName?: pulumi.Input; } @@ -12672,9 +12988,6 @@ export namespace ec2 { subnetId?: pulumi.Input; } - export interface InstanceNoDeviceArgs { - } - export interface InstancePrivateDnsNameOptionsArgs { enableResourceNameDnsARecord?: pulumi.Input; enableResourceNameDnsAaaaRecord?: pulumi.Input; @@ -14364,6 +14677,10 @@ export namespace ec2 { * The options for device identity based trust providers. */ export interface VerifiedAccessTrustProviderDeviceOptionsArgs { + /** + * URL Verified Access will use to verify authenticity of the device tokens. + */ + publicSigningKeyUrl?: pulumi.Input; /** * The ID of the tenant application with the device-identity provider. */ @@ -14575,6 +14892,7 @@ export namespace ecr { export namespace ecs { export interface CapacityProviderAutoScalingGroupProviderArgs { autoScalingGroupArn: pulumi.Input; + managedDraining?: pulumi.Input; managedScaling?: pulumi.Input; managedTerminationProtection?: pulumi.Input; } @@ -15181,6 +15499,20 @@ export namespace eks { value: pulumi.Input; } + /** + * An object representing the Access Config to use for the cluster. + */ + export interface ClusterAccessConfigArgs { + /** + * Specify the authentication mode that should be used to create your cluster. + */ + authenticationMode?: pulumi.Input; + /** + * Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + */ + bootstrapClusterCreatorAdminPermissions?: pulumi.Input; + } + /** * Specify the placement group of the control plane machines for your cluster. */ @@ -15624,6 +15956,20 @@ export namespace elasticache { maximum: pulumi.Input; } + /** + * The address and the port. + */ + export interface ServerlessCacheEndpointArgs { + /** + * Endpoint address. + */ + address?: pulumi.Input; + /** + * Endpoint port. + */ + port?: pulumi.Input; + } + /** * A key-value pair to associate with Serverless Cache. */ @@ -16370,6 +16716,11 @@ export namespace emr { allocationStrategy: pulumi.Input; } + export interface ClusterPlacementGroupConfigArgs { + instanceRole: pulumi.Input; + placementStrategy?: pulumi.Input; + } + export interface ClusterPlacementTypeArgs { availabilityZone: pulumi.Input; } @@ -17467,6 +17818,17 @@ export namespace fis { export interface ExperimentTemplateActionMapArgs { } + export interface ExperimentTemplateExperimentOptionsArgs { + /** + * The account targeting setting for the experiment template. + */ + accountTargeting?: pulumi.Input; + /** + * The target resolution failure mode for the experiment template. + */ + emptyTargetResolutionMode?: pulumi.Input; + } + export interface ExperimentTemplateLogConfigurationArgs { cloudWatchLogsConfiguration?: pulumi.Input; logSchemaVersion: pulumi.Input; @@ -20464,6 +20826,36 @@ export namespace imagebuilder { scheduleExpression?: pulumi.Input; } + /** + * The workflow configuration of the image + */ + export interface ImagePipelineWorkflowConfigurationArgs { + /** + * Define execution decision in case of workflow failure + */ + onFailure?: pulumi.Input; + /** + * The parallel group name + */ + parallelGroup?: pulumi.Input; + /** + * The parameters associated with the workflow + */ + parameters?: pulumi.Input[]>; + /** + * The Amazon Resource Name (ARN) of the workflow + */ + workflowArn?: pulumi.Input; + } + + /** + * A parameter associated with the workflow + */ + export interface ImagePipelineWorkflowParameterArgs { + name?: pulumi.Input; + value?: pulumi.Input[]>; + } + /** * Specify additional settings and launch scripts for your build instances. */ @@ -20604,6 +20996,36 @@ export namespace imagebuilder { timeoutMinutes?: pulumi.Input; } + /** + * The workflow configuration of the image + */ + export interface ImageWorkflowConfigurationArgs { + /** + * Define execution decision in case of workflow failure + */ + onFailure?: pulumi.Input; + /** + * The parallel group name + */ + parallelGroup?: pulumi.Input; + /** + * The parameters associated with the workflow + */ + parameters?: pulumi.Input[]>; + /** + * The Amazon Resource Name (ARN) of the workflow + */ + workflowArn?: pulumi.Input; + } + + /** + * A parameter associated with the workflow + */ + export interface ImageWorkflowParameterArgs { + name?: pulumi.Input; + value?: pulumi.Input[]>; + } + /** * The instance metadata option settings for the infrastructure configuration. */ @@ -21000,6 +21422,20 @@ export namespace iot { value: pulumi.Input; } + /** + * A key-value pair to associate with a resource. + */ + export interface CertificateProviderTagArgs { + /** + * The key name of the tag. You can specify a value that is 1 to 127 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 1 to 255 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; + } + /** * A key-value pair to associate with a resource. */ @@ -26013,16 +26449,31 @@ export namespace lambda { untrustedArtifactOnDeployment: pulumi.Input; } + /** + * A destination for events after they have been sent to a function for processing. + */ export interface EventInvokeConfigDestinationConfigArgs { onFailure?: pulumi.Input; onSuccess?: pulumi.Input; } + /** + * The destination configuration for failed invocations. + */ export interface EventInvokeConfigOnFailureArgs { + /** + * The Amazon Resource Name (ARN) of the destination resource. + */ destination: pulumi.Input; } + /** + * The destination configuration for successful invocations. + */ export interface EventInvokeConfigOnSuccessArgs { + /** + * The Amazon Resource Name (ARN) of the destination resource. + */ destination: pulumi.Input; } @@ -33562,6 +34013,26 @@ export namespace organizations { } export namespace osis { + /** + * Key-value pairs to configure buffering. + */ + export interface PipelineBufferOptionsArgs { + /** + * Whether persistent buffering should be enabled. + */ + persistentBufferEnabled: pulumi.Input; + } + + /** + * Key-value pairs to configure encryption at rest. + */ + export interface PipelineEncryptionAtRestOptionsArgs { + /** + * The KMS key to use for encrypting data. By default an AWS owned key is used + */ + kmsKeyArn: pulumi.Input; + } + /** * Key-value pairs to configure log publishing. */ @@ -33580,7 +34051,7 @@ export namespace osis { * The destination for OpenSearch Ingestion Service logs sent to Amazon CloudWatch. */ export interface PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs { - logGroup?: pulumi.Input; + logGroup: pulumi.Input; } /** @@ -33608,7 +34079,7 @@ export namespace osis { /** * A list of subnet IDs associated with the VPC endpoint. */ - subnetIds?: pulumi.Input[]>; + subnetIds: pulumi.Input[]>; } } @@ -47134,6 +47605,7 @@ export namespace s3 { */ destinationBucketName?: pulumi.Input; logFilePrefix?: pulumi.Input; + targetObjectKeyFormat?: pulumi.Input; } export interface BucketMetricsArgs { @@ -47506,6 +47978,12 @@ export namespace s3 { value: pulumi.Input; } + /** + * Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. + */ + export interface BucketTargetObjectKeyFormatArgs { + } + export interface BucketTieringArgs { /** * S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. @@ -48407,6 +48885,31 @@ export namespace sagemaker { value: pulumi.Input; } + /** + * The CodeEditor app settings. + */ + export interface DomainCodeEditorAppSettingsArgs { + /** + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + */ + defaultResourceSpec?: pulumi.Input; + /** + * A list of LifecycleConfigArns available for use with CodeEditor apps. + */ + lifecycleConfigArns?: pulumi.Input[]>; + } + + export interface DomainCodeRepositoryArgs { + /** + * A CodeRepository (valid URL) to be used within Jupyter's Git extension. + */ + repositoryUrl: pulumi.Input; + } + + export interface DomainCustomFileSystemConfigArgs { + efsFileSystemConfig?: pulumi.Input; + } + /** * A custom SageMaker image. */ @@ -48425,6 +48928,25 @@ export namespace sagemaker { imageVersionNumber?: pulumi.Input; } + export interface DomainCustomPosixUserConfigArgs { + gid: pulumi.Input; + uid: pulumi.Input; + } + + /** + * Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS + */ + export interface DomainDefaultEbsStorageSettingsArgs { + /** + * Default size of the Amazon EBS volume in Gb + */ + defaultEbsVolumeSizeInGb: pulumi.Input; + /** + * Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + */ + maximumEbsVolumeSizeInGb: pulumi.Input; + } + /** * A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the Create/Update Domain API is called. */ @@ -48447,6 +48969,40 @@ export namespace sagemaker { securityGroups?: pulumi.Input[]>; } + /** + * Default storage settings for a space. + */ + export interface DomainDefaultSpaceStorageSettingsArgs { + defaultEbsStorageSettings?: pulumi.Input; + } + + export interface DomainEfsFileSystemConfigArgs { + fileSystemId: pulumi.Input; + fileSystemPath?: pulumi.Input; + } + + /** + * The JupyterLab app settings. + */ + export interface DomainJupyterLabAppSettingsArgs { + /** + * A list of CodeRepositories available for use with JupyterLab apps. + */ + codeRepositories?: pulumi.Input[]>; + /** + * A list of custom images for use for JupyterLab apps. + */ + customImages?: pulumi.Input[]>; + /** + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + */ + defaultResourceSpec?: pulumi.Input; + /** + * A list of LifecycleConfigArns available for use with JupyterLab apps. + */ + lifecycleConfigArns?: pulumi.Input[]>; + } + /** * The JupyterServer app settings. */ @@ -48569,10 +49125,18 @@ export namespace sagemaker { * A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. */ export interface DomainUserSettingsArgs { + codeEditorAppSettings?: pulumi.Input; + customFileSystemConfigs?: pulumi.Input[]>; + customPosixUserConfig?: pulumi.Input; + /** + * Defines which Amazon SageMaker application users are directed to by default. + */ + defaultLandingUri?: pulumi.Input; /** * The execution role for the user. */ executionRole: pulumi.Input; + jupyterLabAppSettings?: pulumi.Input; /** * The Jupyter server's app settings. */ @@ -48591,6 +49155,11 @@ export namespace sagemaker { * The sharing settings. */ sharingSettings?: pulumi.Input; + spaceStorageSettings?: pulumi.Input; + /** + * Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + */ + studioWebPortal?: pulumi.Input; } export interface EndpointAlarmArgs { @@ -51117,6 +51686,7 @@ export namespace sagemaker { export interface OnlineStoreConfigPropertiesArgs { enableOnlineStore?: pulumi.Input; securityConfig?: pulumi.Input; + storageType?: pulumi.Input; } export interface ParallelismConfigurationPropertiesArgs { @@ -51283,6 +51853,31 @@ export namespace sagemaker { value: pulumi.Input; } + /** + * The CodeEditor app settings. + */ + export interface UserProfileCodeEditorAppSettingsArgs { + /** + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + */ + defaultResourceSpec?: pulumi.Input; + /** + * A list of LifecycleConfigArns available for use with CodeEditor apps. + */ + lifecycleConfigArns?: pulumi.Input[]>; + } + + export interface UserProfileCodeRepositoryArgs { + /** + * A CodeRepository (valid URL) to be used within Jupyter's Git extension. + */ + repositoryUrl: pulumi.Input; + } + + export interface UserProfileCustomFileSystemConfigArgs { + efsFileSystemConfig?: pulumi.Input; + } + /** * A custom SageMaker image. */ @@ -51301,6 +51896,59 @@ export namespace sagemaker { imageVersionNumber?: pulumi.Input; } + export interface UserProfileCustomPosixUserConfigArgs { + gid: pulumi.Input; + uid: pulumi.Input; + } + + /** + * Properties related to the Amazon Elastic Block Store volume. + */ + export interface UserProfileDefaultEbsStorageSettingsArgs { + /** + * Default size of the Amazon EBS volume in Gb + */ + defaultEbsVolumeSizeInGb: pulumi.Input; + /** + * Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + */ + maximumEbsVolumeSizeInGb: pulumi.Input; + } + + /** + * Default storage settings for a space. + */ + export interface UserProfileDefaultSpaceStorageSettingsArgs { + defaultEbsStorageSettings?: pulumi.Input; + } + + export interface UserProfileEfsFileSystemConfigArgs { + fileSystemId: pulumi.Input; + fileSystemPath?: pulumi.Input; + } + + /** + * The JupyterLab app settings. + */ + export interface UserProfileJupyterLabAppSettingsArgs { + /** + * A list of CodeRepositories available for use with JupyterLab apps. + */ + codeRepositories?: pulumi.Input[]>; + /** + * A list of custom images available for use for JupyterLab apps + */ + customImages?: pulumi.Input[]>; + /** + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + */ + defaultResourceSpec?: pulumi.Input; + /** + * A list of LifecycleConfigArns available for use with JupyterLab apps. + */ + lifecycleConfigArns?: pulumi.Input[]>; + } + /** * The JupyterServer app settings. */ @@ -51378,10 +52026,18 @@ export namespace sagemaker { * A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. */ export interface UserProfileUserSettingsArgs { + codeEditorAppSettings?: pulumi.Input; + customFileSystemConfigs?: pulumi.Input[]>; + customPosixUserConfig?: pulumi.Input; + /** + * Defines which Amazon SageMaker application users are directed to by default. + */ + defaultLandingUri?: pulumi.Input; /** * The user profile Amazon Resource Name (ARN). */ executionRole?: pulumi.Input; + jupyterLabAppSettings?: pulumi.Input; /** * The Jupyter server's app settings. */ @@ -51399,6 +52055,11 @@ export namespace sagemaker { * The sharing settings. */ sharingSettings?: pulumi.Input; + spaceStorageSettings?: pulumi.Input; + /** + * Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + */ + studioWebPortal?: pulumi.Input; } export interface WorkteamCognitoMemberDefinitionArgs { @@ -51893,6 +52554,12 @@ export namespace securityhub { workflowStatus?: pulumi.Input[]>; } + /** + * A key-value pair to associate with a resource. + */ + export interface HubTagsArgs { + } + /** * An individual StandardsControl within the Standard. */ diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 78d47efc8d..8932f1a293 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -52,7 +52,7 @@ export namespace accessanalyzer { */ export interface AnalyzerUnusedAccessConfiguration { /** - * The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + * The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. */ unusedAccessAge?: number; } @@ -4716,14 +4716,14 @@ export namespace autoscaling { localStorage?: string; localStorageTypes?: string[]; memoryGiBPerVCpu?: outputs.autoscaling.AutoScalingGroupMemoryGiBPerVCpuRequest; - memoryMiB?: outputs.autoscaling.AutoScalingGroupMemoryMiBRequest; + memoryMiB: outputs.autoscaling.AutoScalingGroupMemoryMiBRequest; networkBandwidthGbps?: outputs.autoscaling.AutoScalingGroupNetworkBandwidthGbpsRequest; networkInterfaceCount?: outputs.autoscaling.AutoScalingGroupNetworkInterfaceCountRequest; onDemandMaxPricePercentageOverLowestPrice?: number; requireHibernateSupport?: boolean; spotMaxPricePercentageOverLowestPrice?: number; totalLocalStorageGb?: outputs.autoscaling.AutoScalingGroupTotalLocalStorageGbRequest; - vCpuCount?: outputs.autoscaling.AutoScalingGroupVCpuCountRequest; + vCpuCount: outputs.autoscaling.AutoScalingGroupVCpuCountRequest; } export interface AutoScalingGroupInstancesDistribution { @@ -5061,6 +5061,63 @@ export namespace autoscalingplans { } +export namespace b2bi { + export interface CapabilityConfigurationProperties { + edi: outputs.b2bi.CapabilityEdiConfiguration; + } + + export interface CapabilityEdiConfiguration { + inputLocation: outputs.b2bi.CapabilityS3Location; + outputLocation: outputs.b2bi.CapabilityS3Location; + transformerId: string; + type: outputs.b2bi.CapabilityEdiTypeProperties; + } + + export interface CapabilityEdiTypeProperties { + x12Details: outputs.b2bi.CapabilityX12Details; + } + + export interface CapabilityS3Location { + bucketName?: string; + key?: string; + } + + export interface CapabilityTag { + key: string; + value: string; + } + + export interface CapabilityX12Details { + transactionSet?: enums.b2bi.CapabilityX12TransactionSet; + version?: enums.b2bi.CapabilityX12Version; + } + + export interface PartnershipTag { + key: string; + value: string; + } + + export interface ProfileTag { + key: string; + value: string; + } + + export interface TransformerEdiTypeProperties { + x12Details: outputs.b2bi.TransformerX12Details; + } + + export interface TransformerTag { + key: string; + value: string; + } + + export interface TransformerX12Details { + transactionSet?: enums.b2bi.TransformerX12TransactionSet; + version?: enums.b2bi.TransformerX12Version; + } + +} + export namespace backup { export interface BackupPlanAdvancedBackupSettingResourceType { backupOptions: any; @@ -5333,34 +5390,61 @@ export namespace batch { terminateJobsOnUpdate?: boolean; } - export interface JobDefinitionAuthorizationConfig { - accessPointId?: string; - iam?: string; - } - export interface JobDefinitionContainerProperties { command?: string[]; environment?: outputs.batch.JobDefinitionEnvironment[]; - ephemeralStorage?: outputs.batch.JobDefinitionEphemeralStorage; + ephemeralStorage?: outputs.batch.JobDefinitionContainerPropertiesEphemeralStorageProperties; executionRoleArn?: string; - fargatePlatformConfiguration?: outputs.batch.JobDefinitionFargatePlatformConfiguration; + fargatePlatformConfiguration?: outputs.batch.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties; image: string; instanceType?: string; jobRoleArn?: string; - linuxParameters?: outputs.batch.JobDefinitionLinuxParameters; - logConfiguration?: outputs.batch.JobDefinitionLogConfiguration; + linuxParameters?: outputs.batch.JobDefinitionContainerPropertiesLinuxParametersProperties; + logConfiguration?: outputs.batch.JobDefinitionContainerPropertiesLogConfigurationProperties; memory?: number; - mountPoints?: outputs.batch.JobDefinitionMountPoints[]; - networkConfiguration?: outputs.batch.JobDefinitionNetworkConfiguration; + mountPoints?: outputs.batch.JobDefinitionMountPoint[]; + networkConfiguration?: outputs.batch.JobDefinitionContainerPropertiesNetworkConfigurationProperties; privileged?: boolean; readonlyRootFilesystem?: boolean; resourceRequirements?: outputs.batch.JobDefinitionResourceRequirement[]; - runtimePlatform?: outputs.batch.JobDefinitionRuntimePlatform; + runtimePlatform?: outputs.batch.JobDefinitionContainerPropertiesRuntimePlatformProperties; secrets?: outputs.batch.JobDefinitionSecret[]; ulimits?: outputs.batch.JobDefinitionUlimit[]; user?: string; vcpus?: number; - volumes?: outputs.batch.JobDefinitionVolumes[]; + volumes?: outputs.batch.JobDefinitionVolume[]; + } + + export interface JobDefinitionContainerPropertiesEphemeralStorageProperties { + sizeInGiB: number; + } + + export interface JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties { + platformVersion?: string; + } + + export interface JobDefinitionContainerPropertiesLinuxParametersProperties { + devices?: outputs.batch.JobDefinitionDevice[]; + initProcessEnabled?: boolean; + maxSwap?: number; + sharedMemorySize?: number; + swappiness?: number; + tmpfs?: outputs.batch.JobDefinitionTmpfs[]; + } + + export interface JobDefinitionContainerPropertiesLogConfigurationProperties { + logDriver: string; + options?: any; + secretOptions?: outputs.batch.JobDefinitionSecret[]; + } + + export interface JobDefinitionContainerPropertiesNetworkConfigurationProperties { + assignPublicIp?: string; + } + + export interface JobDefinitionContainerPropertiesRuntimePlatformProperties { + cpuArchitecture?: string; + operatingSystemFamily?: string; } export interface JobDefinitionDevice { @@ -5369,8 +5453,13 @@ export namespace batch { permissions?: string[]; } + export interface JobDefinitionEfsAuthorizationConfig { + accessPointId?: string; + iam?: string; + } + export interface JobDefinitionEfsVolumeConfiguration { - authorizationConfig?: outputs.batch.JobDefinitionAuthorizationConfig; + authorizationConfig?: outputs.batch.JobDefinitionEfsAuthorizationConfig; fileSystemId: string; rootDirectory?: string; transitEncryption?: string; @@ -5422,8 +5511,21 @@ export namespace batch { path?: string; } + export interface JobDefinitionEksMetadata { + labels?: any; + } + + export interface JobDefinitionEksPodProperties { + containers?: outputs.batch.JobDefinitionEksContainer[]; + dnsPolicy?: string; + hostNetwork?: boolean; + metadata?: outputs.batch.JobDefinitionEksMetadata; + serviceAccountName?: string; + volumes?: outputs.batch.JobDefinitionEksVolume[]; + } + export interface JobDefinitionEksProperties { - podProperties?: outputs.batch.JobDefinitionPodProperties; + podProperties?: outputs.batch.JobDefinitionEksPodProperties; } export interface JobDefinitionEksSecret { @@ -5443,10 +5545,6 @@ export namespace batch { value?: string; } - export interface JobDefinitionEphemeralStorage { - sizeInGiB: number; - } - export interface JobDefinitionEvaluateOnExit { action: string; onExitCode?: string; @@ -5454,39 +5552,20 @@ export namespace batch { onStatusReason?: string; } - export interface JobDefinitionFargatePlatformConfiguration { - platformVersion?: string; - } - - export interface JobDefinitionLinuxParameters { - devices?: outputs.batch.JobDefinitionDevice[]; - initProcessEnabled?: boolean; - maxSwap?: number; - sharedMemorySize?: number; - swappiness?: number; - tmpfs?: outputs.batch.JobDefinitionTmpfs[]; - } - - export interface JobDefinitionLogConfiguration { - logDriver: string; - options?: any; - secretOptions?: outputs.batch.JobDefinitionSecret[]; + export interface JobDefinitionHost { + sourcePath?: string; } - export interface JobDefinitionMetadata { - labels?: any; + export interface JobDefinitionJobTimeout { + attemptDurationSeconds?: number; } - export interface JobDefinitionMountPoints { + export interface JobDefinitionMountPoint { containerPath?: string; readOnly?: boolean; sourceVolume?: string; } - export interface JobDefinitionNetworkConfiguration { - assignPublicIp?: string; - } - export interface JobDefinitionNodeProperties { mainNode: number; nodeRangeProperties: outputs.batch.JobDefinitionNodeRangeProperty[]; @@ -5498,15 +5577,6 @@ export namespace batch { targetNodes: string; } - export interface JobDefinitionPodProperties { - containers?: outputs.batch.JobDefinitionEksContainer[]; - dnsPolicy?: string; - hostNetwork?: boolean; - metadata?: outputs.batch.JobDefinitionMetadata; - serviceAccountName?: string; - volumes?: outputs.batch.JobDefinitionEksVolume[]; - } - export interface JobDefinitionResourceRequirement { type?: string; value?: string; @@ -5517,20 +5587,11 @@ export namespace batch { evaluateOnExit?: outputs.batch.JobDefinitionEvaluateOnExit[]; } - export interface JobDefinitionRuntimePlatform { - cpuArchitecture?: string; - operatingSystemFamily?: string; - } - export interface JobDefinitionSecret { name: string; valueFrom: string; } - export interface JobDefinitionTimeout { - attemptDurationSeconds?: number; - } - export interface JobDefinitionTmpfs { containerPath: string; mountOptions?: string[]; @@ -5543,16 +5604,12 @@ export namespace batch { softLimit: number; } - export interface JobDefinitionVolumes { + export interface JobDefinitionVolume { efsVolumeConfiguration?: outputs.batch.JobDefinitionEfsVolumeConfiguration; - host?: outputs.batch.JobDefinitionVolumesHost; + host?: outputs.batch.JobDefinitionHost; name?: string; } - export interface JobDefinitionVolumesHost { - sourcePath?: string; - } - export interface JobQueueComputeEnvironmentOrder { computeEnvironment: string; order: number; @@ -5890,6 +5947,15 @@ export namespace cleanrooms { accountId: string; displayName: string; memberAbilities: enums.cleanrooms.CollaborationMemberAbility[]; + paymentConfiguration?: outputs.cleanrooms.CollaborationPaymentConfiguration; + } + + export interface CollaborationPaymentConfiguration { + queryCompute: outputs.cleanrooms.CollaborationQueryComputePaymentConfig; + } + + export interface CollaborationQueryComputePaymentConfig { + isResponsible: boolean; } export interface CollaborationTag { @@ -5969,6 +6035,10 @@ export namespace cleanrooms { value: string; } + export interface MembershipPaymentConfiguration { + queryCompute: outputs.cleanrooms.MembershipQueryComputePaymentConfig; + } + export interface MembershipProtectedQueryOutputConfiguration { s3: outputs.cleanrooms.MembershipProtectedQueryS3OutputConfiguration; } @@ -5984,6 +6054,10 @@ export namespace cleanrooms { resultFormat: enums.cleanrooms.MembershipResultFormat; } + export interface MembershipQueryComputePaymentConfig { + isResponsible: boolean; + } + export interface MembershipTag { key: string; value: string; @@ -6441,6 +6515,11 @@ export namespace cloudfront { name: string; } + export interface KeyValueStoreImportSource { + sourceArn: string; + sourceType: string; + } + export interface MonitoringSubscription { realtimeMetricsSubscriptionConfig?: outputs.cloudfront.MonitoringSubscriptionRealtimeMetricsSubscriptionConfig; } @@ -7259,6 +7338,11 @@ export namespace codedeploy { value: number; } + export interface DeploymentConfigMinimumHealthyHostsPerZone { + type: string; + value: number; + } + export interface DeploymentConfigTimeBasedCanary { canaryInterval: number; canaryPercentage: number; @@ -7275,6 +7359,12 @@ export namespace codedeploy { type: string; } + export interface DeploymentConfigZonalConfig { + firstZoneMonitorDurationInSeconds?: number; + minimumHealthyHostsPerZone?: outputs.codedeploy.DeploymentConfigMinimumHealthyHostsPerZone; + monitorDurationInSeconds?: number; + } + export interface DeploymentGroupAlarm { name?: string; } @@ -7578,6 +7668,20 @@ export namespace codepipeline { type: string; } + export interface PipelineGitConfiguration { + push?: outputs.codepipeline.PipelineGitPushFilter[]; + sourceActionName: string; + } + + export interface PipelineGitPushFilter { + tags?: outputs.codepipeline.PipelineGitTagFilterCriteria; + } + + export interface PipelineGitTagFilterCriteria { + excludes?: string[]; + includes?: string[]; + } + export interface PipelineInputArtifact { name: string; } @@ -7602,6 +7706,17 @@ export namespace codepipeline { value: string; } + export interface PipelineTriggerDeclaration { + gitConfiguration?: outputs.codepipeline.PipelineGitConfiguration; + providerType: string; + } + + export interface PipelineVariableDeclaration { + defaultValue?: string; + description?: string; + name: string; + } + export interface WebhookAuthConfiguration { allowedIpRange?: string; secretToken?: string; @@ -8831,6 +8946,17 @@ export namespace configuration { resourceTypes?: string[]; } + export interface ConfigurationRecorderRecordingMode { + recordingFrequency: string; + recordingModeOverrides?: outputs.configuration.ConfigurationRecorderRecordingModeOverride[]; + } + + export interface ConfigurationRecorderRecordingModeOverride { + description?: string; + recordingFrequency: string; + resourceTypes: string[]; + } + export interface ConfigurationRecorderRecordingStrategy { useOnly: string; } @@ -9305,7 +9431,7 @@ export namespace connect { } export interface InstanceStorageConfigKinesisVideoStreamConfig { - encryptionConfig?: outputs.connect.InstanceStorageConfigEncryptionConfig; + encryptionConfig: outputs.connect.InstanceStorageConfigEncryptionConfig; prefix: string; retentionPeriodHours: number; } @@ -9316,6 +9442,20 @@ export namespace connect { encryptionConfig?: outputs.connect.InstanceStorageConfigEncryptionConfig; } + /** + * A key-value pair to associate with a resource. + */ + export interface InstanceTag { + /** + * 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; + } + /** * A key-value pair to associate with a resource. */ @@ -9460,9 +9600,12 @@ export namespace connect { */ export interface RuleActions { assignContactCategoryActions?: outputs.connect.RuleAssignContactCategoryAction[]; + createCaseActions?: outputs.connect.RuleCreateCaseAction[]; + endAssociatedTaskActions?: outputs.connect.RuleEndAssociatedTasksAction[]; eventBridgeActions?: outputs.connect.RuleEventBridgeAction[]; sendNotificationActions?: outputs.connect.RuleSendNotificationAction[]; taskActions?: outputs.connect.RuleTaskAction[]; + updateCaseActions?: outputs.connect.RuleUpdateCaseAction[]; } /** @@ -9471,6 +9614,23 @@ 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; + } + + /** + * The definition for ending associated task action. + */ + export interface RuleEndAssociatedTasksAction { + } + /** * The definition for event bridge action. */ @@ -9481,6 +9641,27 @@ export namespace connect { 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. + */ + export interface RuleFieldValue { + booleanValue?: boolean; + doubleValue?: number; + emptyValue?: any; + stringValue?: string; + } + /** * The type of notification recipient. */ @@ -9568,6 +9749,13 @@ export namespace connect { integrationAssociationArn?: string; } + /** + * The definition for update case action. + */ + export interface RuleUpdateCaseAction { + fields: outputs.connect.RuleField[]; + } + /** * A key-value pair to associate with a resource. */ @@ -11868,6 +12056,20 @@ export namespace dlm { } export namespace dms { + /** + * A key-value pair to associate with a resource. + */ + export interface DataProviderTag { + /** + * 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; + } + export interface EndpointDocDbSettings { docsToInvestigate?: number; extractDocId?: boolean; @@ -11905,10 +12107,14 @@ export namespace dms { export interface EndpointIbmDb2Settings { currentLsn?: string; + keepCsvFiles?: boolean; + loadTimeout?: number; + maxFileSize?: number; maxKBytesPerRead?: number; secretsManagerAccessRoleArn?: string; secretsManagerSecretId?: string; setDataCaptureChanges?: boolean; + writeBufferSize?: number; } export interface EndpointKafkaSettings { @@ -12158,6 +12364,45 @@ export namespace dms { value: string; } + /** + * A key-value pair to associate with a resource. + */ + export interface InstanceProfileTag { + /** + * 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; + } + + /** + * It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject + */ + export interface MigrationProjectDataProviderDescriptor { + dataProviderArn?: string; + dataProviderIdentifier?: string; + dataProviderName?: string; + secretsManagerAccessRoleArn?: string; + secretsManagerSecretId?: string; + } + + /** + * A key-value pair to associate with a resource. + */ + export interface MigrationProjectTag { + /** + * 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; + } + /** * Configuration parameters for provisioning a AWS DMS Serverless replication */ @@ -12203,6 +12448,78 @@ export namespace dms { value: string; } + /** + * The property describes schema conversion application attributes for the migration project. + */ + export interface SchemaConversionApplicationAttributesProperties { + s3BucketPath?: string; + s3BucketRoleArn?: string; + } + + /** + * PostgreSqlSettings property identifier. + */ + export interface Settings0Properties { + postgreSqlSettings?: outputs.dms.Settings0PropertiesPostgreSqlSettingsProperties; + } + + export interface Settings0PropertiesPostgreSqlSettingsProperties { + certificateArn?: string; + databaseName?: string; + port?: number; + serverName?: string; + sslMode?: enums.dms.DataProviderDmsSslModeValue; + } + + /** + * MySqlSettings property identifier. + */ + export interface Settings1Properties { + mySqlSettings?: outputs.dms.Settings1PropertiesMySqlSettingsProperties; + } + + export interface Settings1PropertiesMySqlSettingsProperties { + certificateArn?: string; + port?: number; + serverName?: string; + sslMode?: enums.dms.DataProviderDmsSslModeValue; + } + + /** + * OracleSettings property identifier. + */ + export interface Settings2Properties { + oracleSettings?: outputs.dms.Settings2PropertiesOracleSettingsProperties; + } + + export interface Settings2PropertiesOracleSettingsProperties { + asmServer?: string; + certificateArn?: string; + databaseName?: string; + port?: number; + secretsManagerOracleAsmAccessRoleArn?: string; + secretsManagerOracleAsmSecretId?: string; + secretsManagerSecurityDbEncryptionAccessRoleArn?: string; + secretsManagerSecurityDbEncryptionSecretId?: string; + serverName?: string; + sslMode?: enums.dms.DataProviderDmsSslModeValue; + } + + /** + * MicrosoftSqlServerSettings property identifier. + */ + export interface Settings3Properties { + microsoftSqlServerSettings?: outputs.dms.Settings3PropertiesMicrosoftSqlServerSettingsProperties; + } + + export interface Settings3PropertiesMicrosoftSqlServerSettingsProperties { + certificateArn?: string; + databaseName?: string; + port?: number; + serverName?: string; + sslMode?: enums.dms.DataProviderDmsSslModeValue; + } + } export namespace docdb { @@ -12703,7 +13020,7 @@ export namespace ec2 { export interface InstanceBlockDeviceMapping { deviceName: string; ebs?: outputs.ec2.InstanceEbs; - noDevice?: outputs.ec2.InstanceNoDevice; + noDevice?: any; virtualName?: string; } @@ -12781,9 +13098,6 @@ export namespace ec2 { subnetId?: string; } - export interface InstanceNoDevice { - } - export interface InstancePrivateDnsNameOptions { enableResourceNameDnsARecord?: boolean; enableResourceNameDnsAaaaRecord?: boolean; @@ -14642,6 +14956,10 @@ export namespace ec2 { * The options for device identity based trust providers. */ export interface VerifiedAccessTrustProviderDeviceOptions { + /** + * URL Verified Access will use to verify authenticity of the device tokens. + */ + publicSigningKeyUrl?: string; /** * The ID of the tenant application with the device-identity provider. */ @@ -14855,6 +15173,7 @@ export namespace ecr { export namespace ecs { export interface CapacityProviderAutoScalingGroupProvider { autoScalingGroupArn: string; + managedDraining?: enums.ecs.CapacityProviderAutoScalingGroupProviderManagedDraining; managedScaling?: outputs.ecs.CapacityProviderManagedScaling; managedTerminationProtection?: enums.ecs.CapacityProviderAutoScalingGroupProviderManagedTerminationProtection; } @@ -15463,6 +15782,20 @@ export namespace eks { value: string; } + /** + * An object representing the Access Config to use for the cluster. + */ + export interface ClusterAccessConfig { + /** + * Specify the authentication mode that should be used to create your cluster. + */ + authenticationMode?: enums.eks.ClusterAccessConfigAuthenticationMode; + /** + * Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + */ + bootstrapClusterCreatorAdminPermissions?: boolean; + } + /** * Specify the placement group of the control plane machines for your cluster. */ @@ -16679,6 +17012,11 @@ export namespace emr { allocationStrategy: string; } + export interface ClusterPlacementGroupConfig { + instanceRole: string; + placementStrategy?: string; + } + export interface ClusterPlacementType { availabilityZone: string; } @@ -17784,6 +18122,17 @@ export namespace fis { export interface ExperimentTemplateActionMap { } + export interface ExperimentTemplateExperimentOptions { + /** + * The account targeting setting for the experiment template. + */ + accountTargeting?: enums.fis.ExperimentTemplateExperimentOptionsAccountTargeting; + /** + * The target resolution failure mode for the experiment template. + */ + emptyTargetResolutionMode?: enums.fis.ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode; + } + export interface ExperimentTemplateLogConfiguration { cloudWatchLogsConfiguration?: outputs.fis.ExperimentTemplateLogConfigurationCloudWatchLogsConfigurationProperties; logSchemaVersion: number; @@ -20812,6 +21161,36 @@ export namespace imagebuilder { scheduleExpression?: string; } + /** + * The workflow configuration of the image + */ + export interface ImagePipelineWorkflowConfiguration { + /** + * Define execution decision in case of workflow failure + */ + onFailure?: enums.imagebuilder.ImagePipelineWorkflowConfigurationOnFailure; + /** + * The parallel group name + */ + parallelGroup?: string; + /** + * The parameters associated with the workflow + */ + parameters?: outputs.imagebuilder.ImagePipelineWorkflowParameter[]; + /** + * The Amazon Resource Name (ARN) of the workflow + */ + workflowArn?: string; + } + + /** + * A parameter associated with the workflow + */ + export interface ImagePipelineWorkflowParameter { + name?: string; + value?: string[]; + } + /** * Specify additional settings and launch scripts for your build instances. */ @@ -20952,6 +21331,36 @@ export namespace imagebuilder { timeoutMinutes?: number; } + /** + * The workflow configuration of the image + */ + export interface ImageWorkflowConfiguration { + /** + * Define execution decision in case of workflow failure + */ + onFailure?: enums.imagebuilder.ImageWorkflowConfigurationOnFailure; + /** + * The parallel group name + */ + parallelGroup?: string; + /** + * The parameters associated with the workflow + */ + parameters?: outputs.imagebuilder.ImageWorkflowParameter[]; + /** + * The Amazon Resource Name (ARN) of the workflow + */ + workflowArn?: string; + } + + /** + * A parameter associated with the workflow + */ + export interface ImageWorkflowParameter { + name?: string; + value?: string[]; + } + /** * The instance metadata option settings for the infrastructure configuration. */ @@ -21352,6 +21761,20 @@ export namespace iot { value: string; } + /** + * A key-value pair to associate with a resource. + */ + export interface CertificateProviderTag { + /** + * The key name of the tag. You can specify a value that is 1 to 127 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 1 to 255 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; + } + /** * A key-value pair to associate with a resource. */ @@ -26419,16 +26842,31 @@ export namespace lambda { untrustedArtifactOnDeployment: enums.lambda.CodeSigningConfigCodeSigningPoliciesUntrustedArtifactOnDeployment; } + /** + * A destination for events after they have been sent to a function for processing. + */ export interface EventInvokeConfigDestinationConfig { onFailure?: outputs.lambda.EventInvokeConfigOnFailure; onSuccess?: outputs.lambda.EventInvokeConfigOnSuccess; } + /** + * The destination configuration for failed invocations. + */ export interface EventInvokeConfigOnFailure { + /** + * The Amazon Resource Name (ARN) of the destination resource. + */ destination: string; } + /** + * The destination configuration for successful invocations. + */ export interface EventInvokeConfigOnSuccess { + /** + * The Amazon Resource Name (ARN) of the destination resource. + */ destination: string; } @@ -34100,6 +34538,26 @@ export namespace organizations { } export namespace osis { + /** + * Key-value pairs to configure buffering. + */ + export interface PipelineBufferOptions { + /** + * Whether persistent buffering should be enabled. + */ + persistentBufferEnabled: boolean; + } + + /** + * Key-value pairs to configure encryption at rest. + */ + export interface PipelineEncryptionAtRestOptions { + /** + * The KMS key to use for encrypting data. By default an AWS owned key is used + */ + kmsKeyArn: string; + } + /** * Key-value pairs to configure log publishing. */ @@ -34118,7 +34576,7 @@ export namespace osis { * The destination for OpenSearch Ingestion Service logs sent to Amazon CloudWatch. */ export interface PipelineLogPublishingOptionsCloudWatchLogDestinationProperties { - logGroup?: string; + logGroup: string; } /** @@ -34161,7 +34619,7 @@ export namespace osis { /** * A list of subnet IDs associated with the VPC endpoint. */ - subnetIds?: string[]; + subnetIds: string[]; } } @@ -47940,6 +48398,7 @@ export namespace s3 { */ destinationBucketName?: string; logFilePrefix?: string; + targetObjectKeyFormat?: outputs.s3.BucketTargetObjectKeyFormat; } export interface BucketMetrics { @@ -48312,6 +48771,12 @@ export namespace s3 { value: string; } + /** + * Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. + */ + export interface BucketTargetObjectKeyFormat { + } + export interface BucketTiering { /** * S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class. @@ -49277,6 +49742,31 @@ export namespace sagemaker { value: string; } + /** + * The CodeEditor app settings. + */ + export interface DomainCodeEditorAppSettings { + /** + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + */ + defaultResourceSpec?: outputs.sagemaker.DomainResourceSpec; + /** + * A list of LifecycleConfigArns available for use with CodeEditor apps. + */ + lifecycleConfigArns?: string[]; + } + + export interface DomainCodeRepository { + /** + * A CodeRepository (valid URL) to be used within Jupyter's Git extension. + */ + repositoryUrl: string; + } + + export interface DomainCustomFileSystemConfig { + efsFileSystemConfig?: outputs.sagemaker.DomainEfsFileSystemConfig; + } + /** * A custom SageMaker image. */ @@ -49295,6 +49785,25 @@ export namespace sagemaker { imageVersionNumber?: number; } + export interface DomainCustomPosixUserConfig { + gid: number; + uid: number; + } + + /** + * Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS + */ + export interface DomainDefaultEbsStorageSettings { + /** + * Default size of the Amazon EBS volume in Gb + */ + defaultEbsVolumeSizeInGb: number; + /** + * Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + */ + maximumEbsVolumeSizeInGb: number; + } + /** * A collection of settings that apply to spaces of Amazon SageMaker Studio. These settings are specified when the Create/Update Domain API is called. */ @@ -49317,6 +49826,40 @@ export namespace sagemaker { securityGroups?: string[]; } + /** + * Default storage settings for a space. + */ + export interface DomainDefaultSpaceStorageSettings { + defaultEbsStorageSettings?: outputs.sagemaker.DomainDefaultEbsStorageSettings; + } + + export interface DomainEfsFileSystemConfig { + fileSystemId: string; + fileSystemPath?: string; + } + + /** + * The JupyterLab app settings. + */ + export interface DomainJupyterLabAppSettings { + /** + * A list of CodeRepositories available for use with JupyterLab apps. + */ + codeRepositories?: outputs.sagemaker.DomainCodeRepository[]; + /** + * A list of custom images for use for JupyterLab apps. + */ + customImages?: outputs.sagemaker.DomainCustomImage[]; + /** + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + */ + defaultResourceSpec?: outputs.sagemaker.DomainResourceSpec; + /** + * A list of LifecycleConfigArns available for use with JupyterLab apps. + */ + lifecycleConfigArns?: string[]; + } + /** * The JupyterServer app settings. */ @@ -49439,10 +49982,18 @@ export namespace sagemaker { * A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. */ export interface DomainUserSettings { + codeEditorAppSettings?: outputs.sagemaker.DomainCodeEditorAppSettings; + customFileSystemConfigs?: outputs.sagemaker.DomainCustomFileSystemConfig[]; + customPosixUserConfig?: outputs.sagemaker.DomainCustomPosixUserConfig; + /** + * Defines which Amazon SageMaker application users are directed to by default. + */ + defaultLandingUri?: string; /** * The execution role for the user. */ executionRole: string; + jupyterLabAppSettings?: outputs.sagemaker.DomainJupyterLabAppSettings; /** * The Jupyter server's app settings. */ @@ -49461,6 +50012,11 @@ export namespace sagemaker { * The sharing settings. */ sharingSettings?: outputs.sagemaker.DomainSharingSettings; + spaceStorageSettings?: outputs.sagemaker.DomainDefaultSpaceStorageSettings; + /** + * Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + */ + studioWebPortal?: enums.sagemaker.DomainUserSettingsStudioWebPortal; } export interface EndpointAlarm { @@ -52002,6 +52558,7 @@ export namespace sagemaker { export interface OnlineStoreConfigProperties { enableOnlineStore?: boolean; securityConfig?: outputs.sagemaker.FeatureGroupOnlineStoreSecurityConfig; + storageType?: enums.sagemaker.FeatureGroupStorageType; } export interface ParallelismConfigurationProperties { @@ -52168,6 +52725,31 @@ export namespace sagemaker { value: string; } + /** + * The CodeEditor app settings. + */ + export interface UserProfileCodeEditorAppSettings { + /** + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + */ + defaultResourceSpec?: outputs.sagemaker.UserProfileResourceSpec; + /** + * A list of LifecycleConfigArns available for use with CodeEditor apps. + */ + lifecycleConfigArns?: string[]; + } + + export interface UserProfileCodeRepository { + /** + * A CodeRepository (valid URL) to be used within Jupyter's Git extension. + */ + repositoryUrl: string; + } + + export interface UserProfileCustomFileSystemConfig { + efsFileSystemConfig?: outputs.sagemaker.UserProfileEfsFileSystemConfig; + } + /** * A custom SageMaker image. */ @@ -52186,6 +52768,59 @@ export namespace sagemaker { imageVersionNumber?: number; } + export interface UserProfileCustomPosixUserConfig { + gid: number; + uid: number; + } + + /** + * Properties related to the Amazon Elastic Block Store volume. + */ + export interface UserProfileDefaultEbsStorageSettings { + /** + * Default size of the Amazon EBS volume in Gb + */ + defaultEbsVolumeSizeInGb: number; + /** + * Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + */ + maximumEbsVolumeSizeInGb: number; + } + + /** + * Default storage settings for a space. + */ + export interface UserProfileDefaultSpaceStorageSettings { + defaultEbsStorageSettings?: outputs.sagemaker.UserProfileDefaultEbsStorageSettings; + } + + export interface UserProfileEfsFileSystemConfig { + fileSystemId: string; + fileSystemPath?: string; + } + + /** + * The JupyterLab app settings. + */ + export interface UserProfileJupyterLabAppSettings { + /** + * A list of CodeRepositories available for use with JupyterLab apps. + */ + codeRepositories?: outputs.sagemaker.UserProfileCodeRepository[]; + /** + * A list of custom images available for use for JupyterLab apps + */ + customImages?: outputs.sagemaker.UserProfileCustomImage[]; + /** + * The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + */ + defaultResourceSpec?: outputs.sagemaker.UserProfileResourceSpec; + /** + * A list of LifecycleConfigArns available for use with JupyterLab apps. + */ + lifecycleConfigArns?: string[]; + } + /** * The JupyterServer app settings. */ @@ -52263,10 +52898,18 @@ export namespace sagemaker { * A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. */ export interface UserProfileUserSettings { + codeEditorAppSettings?: outputs.sagemaker.UserProfileCodeEditorAppSettings; + customFileSystemConfigs?: outputs.sagemaker.UserProfileCustomFileSystemConfig[]; + customPosixUserConfig?: outputs.sagemaker.UserProfileCustomPosixUserConfig; + /** + * Defines which Amazon SageMaker application users are directed to by default. + */ + defaultLandingUri?: string; /** * The user profile Amazon Resource Name (ARN). */ executionRole?: string; + jupyterLabAppSettings?: outputs.sagemaker.UserProfileJupyterLabAppSettings; /** * The Jupyter server's app settings. */ @@ -52284,6 +52927,11 @@ export namespace sagemaker { * The sharing settings. */ sharingSettings?: outputs.sagemaker.UserProfileSharingSettings; + spaceStorageSettings?: outputs.sagemaker.UserProfileDefaultSpaceStorageSettings; + /** + * Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + */ + studioWebPortal?: enums.sagemaker.UserProfileUserSettingsStudioWebPortal; } export interface WorkteamCognitoMemberDefinition { @@ -52781,6 +53429,12 @@ export namespace securityhub { workflowStatus?: outputs.securityhub.AutomationRuleStringFilter[]; } + /** + * A key-value pair to associate with a resource. + */ + export interface HubTags { + } + /** * An individual StandardsControl within the Standard. */ diff --git a/sdk/python/pulumi_aws_native/__init__.py b/sdk/python/pulumi_aws_native/__init__.py index e51c642755..7fb89c8f36 100644 --- a/sdk/python/pulumi_aws_native/__init__.py +++ b/sdk/python/pulumi_aws_native/__init__.py @@ -67,6 +67,8 @@ autoscaling = __autoscaling import pulumi_aws_native.autoscalingplans as __autoscalingplans autoscalingplans = __autoscalingplans + import pulumi_aws_native.b2bi as __b2bi + b2bi = __b2bi import pulumi_aws_native.backup as __backup backup = __backup import pulumi_aws_native.backupgateway as __backupgateway @@ -505,6 +507,7 @@ auditmanager = _utilities.lazy_import('pulumi_aws_native.auditmanager') autoscaling = _utilities.lazy_import('pulumi_aws_native.autoscaling') autoscalingplans = _utilities.lazy_import('pulumi_aws_native.autoscalingplans') + b2bi = _utilities.lazy_import('pulumi_aws_native.b2bi') backup = _utilities.lazy_import('pulumi_aws_native.backup') backupgateway = _utilities.lazy_import('pulumi_aws_native.backupgateway') batch = _utilities.lazy_import('pulumi_aws_native.batch') @@ -991,6 +994,17 @@ "aws-native:autoscalingplans:ScalingPlan": "ScalingPlan" } }, + { + "pkg": "aws-native", + "mod": "b2bi", + "fqn": "pulumi_aws_native.b2bi", + "classes": { + "aws-native:b2bi:Capability": "Capability", + "aws-native:b2bi:Partnership": "Partnership", + "aws-native:b2bi:Profile": "Profile", + "aws-native:b2bi:Transformer": "Transformer" + } + }, { "pkg": "aws-native", "mod": "backup", @@ -1135,6 +1149,7 @@ "aws-native:cloudfront:Distribution": "Distribution", "aws-native:cloudfront:Function": "Function", "aws-native:cloudfront:KeyGroup": "KeyGroup", + "aws-native:cloudfront:KeyValueStore": "KeyValueStore", "aws-native:cloudfront:MonitoringSubscription": "MonitoringSubscription", "aws-native:cloudfront:OriginAccessControl": "OriginAccessControl", "aws-native:cloudfront:OriginRequestPolicy": "OriginRequestPolicy", @@ -1478,8 +1493,11 @@ "fqn": "pulumi_aws_native.dms", "classes": { "aws-native:dms:Certificate": "Certificate", + "aws-native:dms:DataProvider": "DataProvider", "aws-native:dms:Endpoint": "Endpoint", "aws-native:dms:EventSubscription": "EventSubscription", + "aws-native:dms:InstanceProfile": "InstanceProfile", + "aws-native:dms:MigrationProject": "MigrationProject", "aws-native:dms:ReplicationConfig": "ReplicationConfig", "aws-native:dms:ReplicationInstance": "ReplicationInstance", "aws-native:dms:ReplicationSubnetGroup": "ReplicationSubnetGroup", @@ -1570,6 +1588,7 @@ "aws-native:ec2:SecurityGroup": "SecurityGroup", "aws-native:ec2:SecurityGroupEgress": "SecurityGroupEgress", "aws-native:ec2:SecurityGroupIngress": "SecurityGroupIngress", + "aws-native:ec2:SnapshotBlockPublicAccess": "SnapshotBlockPublicAccess", "aws-native:ec2:SpotFleet": "SpotFleet", "aws-native:ec2:Subnet": "Subnet", "aws-native:ec2:SubnetCidrBlock": "SubnetCidrBlock", @@ -1811,7 +1830,8 @@ "mod": "fis", "fqn": "pulumi_aws_native.fis", "classes": { - "aws-native:fis:ExperimentTemplate": "ExperimentTemplate" + "aws-native:fis:ExperimentTemplate": "ExperimentTemplate", + "aws-native:fis:TargetAccountConfiguration": "TargetAccountConfiguration" } }, { @@ -2033,7 +2053,8 @@ "aws-native:imagebuilder:ImagePipeline": "ImagePipeline", "aws-native:imagebuilder:ImageRecipe": "ImageRecipe", "aws-native:imagebuilder:InfrastructureConfiguration": "InfrastructureConfiguration", - "aws-native:imagebuilder:LifecyclePolicy": "LifecyclePolicy" + "aws-native:imagebuilder:LifecyclePolicy": "LifecyclePolicy", + "aws-native:imagebuilder:Workflow": "Workflow" } }, { @@ -2080,6 +2101,7 @@ "aws-native:iot:BillingGroup": "BillingGroup", "aws-native:iot:CaCertificate": "CaCertificate", "aws-native:iot:Certificate": "Certificate", + "aws-native:iot:CertificateProvider": "CertificateProvider", "aws-native:iot:CustomMetric": "CustomMetric", "aws-native:iot:Dimension": "Dimension", "aws-native:iot:DomainConfiguration": "DomainConfiguration", diff --git a/sdk/python/pulumi_aws_native/accessanalyzer/_inputs.py b/sdk/python/pulumi_aws_native/accessanalyzer/_inputs.py index 26542ef67f..4246d02ea5 100644 --- a/sdk/python/pulumi_aws_native/accessanalyzer/_inputs.py +++ b/sdk/python/pulumi_aws_native/accessanalyzer/_inputs.py @@ -179,7 +179,7 @@ def __init__(__self__, *, unused_access_age: Optional[pulumi.Input[int]] = None): """ The Configuration for Unused Access Analyzer - :param pulumi.Input[int] unused_access_age: The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + :param pulumi.Input[int] unused_access_age: The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. """ if unused_access_age is not None: pulumi.set(__self__, "unused_access_age", unused_access_age) @@ -188,7 +188,7 @@ def __init__(__self__, *, @pulumi.getter(name="unusedAccessAge") def unused_access_age(self) -> Optional[pulumi.Input[int]]: """ - The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. """ return pulumi.get(self, "unused_access_age") diff --git a/sdk/python/pulumi_aws_native/accessanalyzer/outputs.py b/sdk/python/pulumi_aws_native/accessanalyzer/outputs.py index 8d5111e864..bfccf0d2f8 100644 --- a/sdk/python/pulumi_aws_native/accessanalyzer/outputs.py +++ b/sdk/python/pulumi_aws_native/accessanalyzer/outputs.py @@ -203,7 +203,7 @@ def __init__(__self__, *, unused_access_age: Optional[int] = None): """ The Configuration for Unused Access Analyzer - :param int unused_access_age: The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + :param int unused_access_age: The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. """ if unused_access_age is not None: pulumi.set(__self__, "unused_access_age", unused_access_age) @@ -212,7 +212,7 @@ def __init__(__self__, *, @pulumi.getter(name="unusedAccessAge") def unused_access_age(self) -> Optional[int]: """ - The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that haven't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. + The specified access age in days for which to generate findings for unused access. For example, if you specify 90 days, the analyzer will generate findings for IAM entities within the accounts of the selected organization for any access that hasn't been used in 90 or more days since the analyzer's last scan. You can choose a value between 1 and 180 days. """ return pulumi.get(self, "unused_access_age") diff --git a/sdk/python/pulumi_aws_native/appsync/get_graph_ql_api.py b/sdk/python/pulumi_aws_native/appsync/get_graph_ql_api.py index 24c2dcc750..b582a29b5e 100644 --- a/sdk/python/pulumi_aws_native/appsync/get_graph_ql_api.py +++ b/sdk/python/pulumi_aws_native/appsync/get_graph_ql_api.py @@ -19,7 +19,7 @@ @pulumi.output_type class GetGraphQlApiResult: - def __init__(__self__, additional_authentication_providers=None, api_id=None, api_type=None, arn=None, authentication_type=None, graph_ql_dns=None, graph_ql_url=None, id=None, lambda_authorizer_config=None, log_config=None, merged_api_execution_role_arn=None, name=None, open_id_connect_config=None, owner_contact=None, realtime_dns=None, realtime_url=None, tags=None, user_pool_config=None, visibility=None, xray_enabled=None): + def __init__(__self__, additional_authentication_providers=None, api_id=None, api_type=None, arn=None, authentication_type=None, graph_ql_dns=None, graph_ql_endpoint_arn=None, graph_ql_url=None, id=None, lambda_authorizer_config=None, log_config=None, merged_api_execution_role_arn=None, name=None, open_id_connect_config=None, owner_contact=None, realtime_dns=None, realtime_url=None, tags=None, user_pool_config=None, visibility=None, xray_enabled=None): if additional_authentication_providers and not isinstance(additional_authentication_providers, list): raise TypeError("Expected argument 'additional_authentication_providers' to be a list") pulumi.set(__self__, "additional_authentication_providers", additional_authentication_providers) @@ -38,6 +38,9 @@ def __init__(__self__, additional_authentication_providers=None, api_id=None, ap if graph_ql_dns and not isinstance(graph_ql_dns, str): raise TypeError("Expected argument 'graph_ql_dns' to be a str") pulumi.set(__self__, "graph_ql_dns", graph_ql_dns) + if graph_ql_endpoint_arn and not isinstance(graph_ql_endpoint_arn, str): + raise TypeError("Expected argument 'graph_ql_endpoint_arn' to be a str") + pulumi.set(__self__, "graph_ql_endpoint_arn", graph_ql_endpoint_arn) if graph_ql_url and not isinstance(graph_ql_url, str): raise TypeError("Expected argument 'graph_ql_url' to be a str") pulumi.set(__self__, "graph_ql_url", graph_ql_url) @@ -111,6 +114,11 @@ def authentication_type(self) -> Optional[str]: def graph_ql_dns(self) -> Optional[str]: return pulumi.get(self, "graph_ql_dns") + @property + @pulumi.getter(name="graphQlEndpointArn") + def graph_ql_endpoint_arn(self) -> Optional[str]: + return pulumi.get(self, "graph_ql_endpoint_arn") + @property @pulumi.getter(name="graphQlUrl") def graph_ql_url(self) -> Optional[str]: @@ -194,6 +202,7 @@ def __await__(self): arn=self.arn, authentication_type=self.authentication_type, graph_ql_dns=self.graph_ql_dns, + graph_ql_endpoint_arn=self.graph_ql_endpoint_arn, graph_ql_url=self.graph_ql_url, id=self.id, lambda_authorizer_config=self.lambda_authorizer_config, @@ -227,6 +236,7 @@ def get_graph_ql_api(id: Optional[str] = None, arn=pulumi.get(__ret__, 'arn'), authentication_type=pulumi.get(__ret__, 'authentication_type'), graph_ql_dns=pulumi.get(__ret__, 'graph_ql_dns'), + graph_ql_endpoint_arn=pulumi.get(__ret__, 'graph_ql_endpoint_arn'), graph_ql_url=pulumi.get(__ret__, 'graph_ql_url'), id=pulumi.get(__ret__, 'id'), lambda_authorizer_config=pulumi.get(__ret__, 'lambda_authorizer_config'), diff --git a/sdk/python/pulumi_aws_native/appsync/graph_ql_api.py b/sdk/python/pulumi_aws_native/appsync/graph_ql_api.py index bc5e8c7be0..cac9ccf1b9 100644 --- a/sdk/python/pulumi_aws_native/appsync/graph_ql_api.py +++ b/sdk/python/pulumi_aws_native/appsync/graph_ql_api.py @@ -271,6 +271,7 @@ def _internal_init(__self__, __props__.__dict__["api_id"] = None __props__.__dict__["arn"] = None __props__.__dict__["graph_ql_dns"] = None + __props__.__dict__["graph_ql_endpoint_arn"] = None __props__.__dict__["graph_ql_url"] = None __props__.__dict__["realtime_dns"] = None __props__.__dict__["realtime_url"] = None @@ -302,6 +303,7 @@ def get(resource_name: str, __props__.__dict__["arn"] = None __props__.__dict__["authentication_type"] = None __props__.__dict__["graph_ql_dns"] = None + __props__.__dict__["graph_ql_endpoint_arn"] = None __props__.__dict__["graph_ql_url"] = None __props__.__dict__["lambda_authorizer_config"] = None __props__.__dict__["log_config"] = None @@ -347,6 +349,11 @@ def authentication_type(self) -> pulumi.Output[str]: def graph_ql_dns(self) -> pulumi.Output[str]: return pulumi.get(self, "graph_ql_dns") + @property + @pulumi.getter(name="graphQlEndpointArn") + def graph_ql_endpoint_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "graph_ql_endpoint_arn") + @property @pulumi.getter(name="graphQlUrl") def graph_ql_url(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/autoscaling/_inputs.py b/sdk/python/pulumi_aws_native/autoscaling/_inputs.py index c0ddbfd015..5ec45373fc 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/_inputs.py +++ b/sdk/python/pulumi_aws_native/autoscaling/_inputs.py @@ -171,6 +171,8 @@ def min_healthy_percentage(self, value: Optional[pulumi.Input[int]]): @pulumi.input_type class AutoScalingGroupInstanceRequirementsArgs: def __init__(__self__, *, + memory_mi_b: pulumi.Input['AutoScalingGroupMemoryMiBRequestArgs'], + v_cpu_count: pulumi.Input['AutoScalingGroupVCpuCountRequestArgs'], accelerator_count: Optional[pulumi.Input['AutoScalingGroupAcceleratorCountRequestArgs']] = None, accelerator_manufacturers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, accelerator_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -186,14 +188,14 @@ def __init__(__self__, *, local_storage: Optional[pulumi.Input[str]] = None, local_storage_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, memory_gi_b_per_v_cpu: Optional[pulumi.Input['AutoScalingGroupMemoryGiBPerVCpuRequestArgs']] = None, - memory_mi_b: Optional[pulumi.Input['AutoScalingGroupMemoryMiBRequestArgs']] = None, network_bandwidth_gbps: Optional[pulumi.Input['AutoScalingGroupNetworkBandwidthGbpsRequestArgs']] = None, network_interface_count: Optional[pulumi.Input['AutoScalingGroupNetworkInterfaceCountRequestArgs']] = None, on_demand_max_price_percentage_over_lowest_price: Optional[pulumi.Input[int]] = None, require_hibernate_support: Optional[pulumi.Input[bool]] = None, spot_max_price_percentage_over_lowest_price: Optional[pulumi.Input[int]] = None, - total_local_storage_gb: Optional[pulumi.Input['AutoScalingGroupTotalLocalStorageGbRequestArgs']] = None, - v_cpu_count: Optional[pulumi.Input['AutoScalingGroupVCpuCountRequestArgs']] = None): + total_local_storage_gb: Optional[pulumi.Input['AutoScalingGroupTotalLocalStorageGbRequestArgs']] = None): + pulumi.set(__self__, "memory_mi_b", memory_mi_b) + pulumi.set(__self__, "v_cpu_count", v_cpu_count) if accelerator_count is not None: pulumi.set(__self__, "accelerator_count", accelerator_count) if accelerator_manufacturers is not None: @@ -224,8 +226,6 @@ def __init__(__self__, *, pulumi.set(__self__, "local_storage_types", local_storage_types) if memory_gi_b_per_v_cpu is not None: pulumi.set(__self__, "memory_gi_b_per_v_cpu", memory_gi_b_per_v_cpu) - if memory_mi_b is not None: - pulumi.set(__self__, "memory_mi_b", memory_mi_b) if network_bandwidth_gbps is not None: pulumi.set(__self__, "network_bandwidth_gbps", network_bandwidth_gbps) if network_interface_count is not None: @@ -238,8 +238,24 @@ def __init__(__self__, *, pulumi.set(__self__, "spot_max_price_percentage_over_lowest_price", spot_max_price_percentage_over_lowest_price) if total_local_storage_gb is not None: pulumi.set(__self__, "total_local_storage_gb", total_local_storage_gb) - if v_cpu_count is not None: - pulumi.set(__self__, "v_cpu_count", v_cpu_count) + + @property + @pulumi.getter(name="memoryMiB") + def memory_mi_b(self) -> pulumi.Input['AutoScalingGroupMemoryMiBRequestArgs']: + return pulumi.get(self, "memory_mi_b") + + @memory_mi_b.setter + def memory_mi_b(self, value: pulumi.Input['AutoScalingGroupMemoryMiBRequestArgs']): + pulumi.set(self, "memory_mi_b", value) + + @property + @pulumi.getter(name="vCpuCount") + def v_cpu_count(self) -> pulumi.Input['AutoScalingGroupVCpuCountRequestArgs']: + return pulumi.get(self, "v_cpu_count") + + @v_cpu_count.setter + def v_cpu_count(self, value: pulumi.Input['AutoScalingGroupVCpuCountRequestArgs']): + pulumi.set(self, "v_cpu_count", value) @property @pulumi.getter(name="acceleratorCount") @@ -376,15 +392,6 @@ def memory_gi_b_per_v_cpu(self) -> Optional[pulumi.Input['AutoScalingGroupMemory def memory_gi_b_per_v_cpu(self, value: Optional[pulumi.Input['AutoScalingGroupMemoryGiBPerVCpuRequestArgs']]): pulumi.set(self, "memory_gi_b_per_v_cpu", value) - @property - @pulumi.getter(name="memoryMiB") - def memory_mi_b(self) -> Optional[pulumi.Input['AutoScalingGroupMemoryMiBRequestArgs']]: - return pulumi.get(self, "memory_mi_b") - - @memory_mi_b.setter - def memory_mi_b(self, value: Optional[pulumi.Input['AutoScalingGroupMemoryMiBRequestArgs']]): - pulumi.set(self, "memory_mi_b", value) - @property @pulumi.getter(name="networkBandwidthGbps") def network_bandwidth_gbps(self) -> Optional[pulumi.Input['AutoScalingGroupNetworkBandwidthGbpsRequestArgs']]: @@ -439,15 +446,6 @@ def total_local_storage_gb(self) -> Optional[pulumi.Input['AutoScalingGroupTotal def total_local_storage_gb(self, value: Optional[pulumi.Input['AutoScalingGroupTotalLocalStorageGbRequestArgs']]): pulumi.set(self, "total_local_storage_gb", value) - @property - @pulumi.getter(name="vCpuCount") - def v_cpu_count(self) -> Optional[pulumi.Input['AutoScalingGroupVCpuCountRequestArgs']]: - return pulumi.get(self, "v_cpu_count") - - @v_cpu_count.setter - def v_cpu_count(self, value: Optional[pulumi.Input['AutoScalingGroupVCpuCountRequestArgs']]): - pulumi.set(self, "v_cpu_count", value) - @pulumi.input_type class AutoScalingGroupInstancesDistributionArgs: diff --git a/sdk/python/pulumi_aws_native/autoscaling/outputs.py b/sdk/python/pulumi_aws_native/autoscaling/outputs.py index 0ab1b9418f..8a693dd95b 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/outputs.py +++ b/sdk/python/pulumi_aws_native/autoscaling/outputs.py @@ -161,7 +161,11 @@ class AutoScalingGroupInstanceRequirements(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "acceleratorCount": + if key == "memoryMiB": + suggest = "memory_mi_b" + elif key == "vCpuCount": + suggest = "v_cpu_count" + elif key == "acceleratorCount": suggest = "accelerator_count" elif key == "acceleratorManufacturers": suggest = "accelerator_manufacturers" @@ -191,8 +195,6 @@ def __key_warning(key: str): suggest = "local_storage_types" elif key == "memoryGiBPerVCpu": suggest = "memory_gi_b_per_v_cpu" - elif key == "memoryMiB": - suggest = "memory_mi_b" elif key == "networkBandwidthGbps": suggest = "network_bandwidth_gbps" elif key == "networkInterfaceCount": @@ -205,8 +207,6 @@ def __key_warning(key: str): suggest = "spot_max_price_percentage_over_lowest_price" elif key == "totalLocalStorageGb": suggest = "total_local_storage_gb" - elif key == "vCpuCount": - suggest = "v_cpu_count" if suggest: pulumi.log.warn(f"Key '{key}' not found in AutoScalingGroupInstanceRequirements. Access the value via the '{suggest}' property getter instead.") @@ -220,6 +220,8 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, + memory_mi_b: 'outputs.AutoScalingGroupMemoryMiBRequest', + v_cpu_count: 'outputs.AutoScalingGroupVCpuCountRequest', accelerator_count: Optional['outputs.AutoScalingGroupAcceleratorCountRequest'] = None, accelerator_manufacturers: Optional[Sequence[str]] = None, accelerator_names: Optional[Sequence[str]] = None, @@ -235,14 +237,14 @@ def __init__(__self__, *, local_storage: Optional[str] = None, local_storage_types: Optional[Sequence[str]] = None, memory_gi_b_per_v_cpu: Optional['outputs.AutoScalingGroupMemoryGiBPerVCpuRequest'] = None, - memory_mi_b: Optional['outputs.AutoScalingGroupMemoryMiBRequest'] = None, network_bandwidth_gbps: Optional['outputs.AutoScalingGroupNetworkBandwidthGbpsRequest'] = None, network_interface_count: Optional['outputs.AutoScalingGroupNetworkInterfaceCountRequest'] = None, on_demand_max_price_percentage_over_lowest_price: Optional[int] = None, require_hibernate_support: Optional[bool] = None, spot_max_price_percentage_over_lowest_price: Optional[int] = None, - total_local_storage_gb: Optional['outputs.AutoScalingGroupTotalLocalStorageGbRequest'] = None, - v_cpu_count: Optional['outputs.AutoScalingGroupVCpuCountRequest'] = None): + total_local_storage_gb: Optional['outputs.AutoScalingGroupTotalLocalStorageGbRequest'] = None): + pulumi.set(__self__, "memory_mi_b", memory_mi_b) + pulumi.set(__self__, "v_cpu_count", v_cpu_count) if accelerator_count is not None: pulumi.set(__self__, "accelerator_count", accelerator_count) if accelerator_manufacturers is not None: @@ -273,8 +275,6 @@ def __init__(__self__, *, pulumi.set(__self__, "local_storage_types", local_storage_types) if memory_gi_b_per_v_cpu is not None: pulumi.set(__self__, "memory_gi_b_per_v_cpu", memory_gi_b_per_v_cpu) - if memory_mi_b is not None: - pulumi.set(__self__, "memory_mi_b", memory_mi_b) if network_bandwidth_gbps is not None: pulumi.set(__self__, "network_bandwidth_gbps", network_bandwidth_gbps) if network_interface_count is not None: @@ -287,8 +287,16 @@ def __init__(__self__, *, pulumi.set(__self__, "spot_max_price_percentage_over_lowest_price", spot_max_price_percentage_over_lowest_price) if total_local_storage_gb is not None: pulumi.set(__self__, "total_local_storage_gb", total_local_storage_gb) - if v_cpu_count is not None: - pulumi.set(__self__, "v_cpu_count", v_cpu_count) + + @property + @pulumi.getter(name="memoryMiB") + def memory_mi_b(self) -> 'outputs.AutoScalingGroupMemoryMiBRequest': + return pulumi.get(self, "memory_mi_b") + + @property + @pulumi.getter(name="vCpuCount") + def v_cpu_count(self) -> 'outputs.AutoScalingGroupVCpuCountRequest': + return pulumi.get(self, "v_cpu_count") @property @pulumi.getter(name="acceleratorCount") @@ -365,11 +373,6 @@ def local_storage_types(self) -> Optional[Sequence[str]]: def memory_gi_b_per_v_cpu(self) -> Optional['outputs.AutoScalingGroupMemoryGiBPerVCpuRequest']: return pulumi.get(self, "memory_gi_b_per_v_cpu") - @property - @pulumi.getter(name="memoryMiB") - def memory_mi_b(self) -> Optional['outputs.AutoScalingGroupMemoryMiBRequest']: - return pulumi.get(self, "memory_mi_b") - @property @pulumi.getter(name="networkBandwidthGbps") def network_bandwidth_gbps(self) -> Optional['outputs.AutoScalingGroupNetworkBandwidthGbpsRequest']: @@ -400,11 +403,6 @@ def spot_max_price_percentage_over_lowest_price(self) -> Optional[int]: def total_local_storage_gb(self) -> Optional['outputs.AutoScalingGroupTotalLocalStorageGbRequest']: return pulumi.get(self, "total_local_storage_gb") - @property - @pulumi.getter(name="vCpuCount") - def v_cpu_count(self) -> Optional['outputs.AutoScalingGroupVCpuCountRequest']: - return pulumi.get(self, "v_cpu_count") - @pulumi.output_type class AutoScalingGroupInstancesDistribution(dict): diff --git a/sdk/python/pulumi_aws_native/b2bi/__init__.py b/sdk/python/pulumi_aws_native/b2bi/__init__.py new file mode 100644 index 0000000000..414f911145 --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/__init__.py @@ -0,0 +1,18 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +from .. import _utilities +import typing +# Export this package's modules as members: +from ._enums import * +from .capability import * +from .get_capability import * +from .get_partnership import * +from .get_profile import * +from .get_transformer import * +from .partnership import * +from .profile import * +from .transformer import * +from ._inputs import * +from . import outputs diff --git a/sdk/python/pulumi_aws_native/b2bi/_enums.py b/sdk/python/pulumi_aws_native/b2bi/_enums.py new file mode 100644 index 0000000000..4018830a73 --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/_enums.py @@ -0,0 +1,103 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +from enum import Enum + +__all__ = [ + 'CapabilityType', + 'CapabilityX12TransactionSet', + 'CapabilityX12Version', + 'ProfileLogging', + 'TransformerFileFormat', + 'TransformerStatus', + 'TransformerX12TransactionSet', + 'TransformerX12Version', +] + + +class CapabilityType(str, Enum): + EDI = "edi" + + +class CapabilityX12TransactionSet(str, Enum): + X12110 = "X12_110" + X12180 = "X12_180" + X12204 = "X12_204" + X12210 = "X12_210" + X12214 = "X12_214" + X12215 = "X12_215" + X12310 = "X12_310" + X12315 = "X12_315" + X12322 = "X12_322" + X12404 = "X12_404" + X12410 = "X12_410" + X12820 = "X12_820" + X12824 = "X12_824" + X12830 = "X12_830" + X12846 = "X12_846" + X12850 = "X12_850" + X12852 = "X12_852" + X12855 = "X12_855" + X12856 = "X12_856" + X12860 = "X12_860" + X12861 = "X12_861" + X12864 = "X12_864" + X12940 = "X12_940" + X12990 = "X12_990" + X12997 = "X12_997" + + +class CapabilityX12Version(str, Enum): + VERSION4010 = "VERSION_4010" + VERSION4030 = "VERSION_4030" + VERSION5010 = "VERSION_5010" + + +class ProfileLogging(str, Enum): + ENABLED = "ENABLED" + DISABLED = "DISABLED" + + +class TransformerFileFormat(str, Enum): + XML = "XML" + JSON = "JSON" + + +class TransformerStatus(str, Enum): + ACTIVE = "active" + INACTIVE = "inactive" + + +class TransformerX12TransactionSet(str, Enum): + X12110 = "X12_110" + X12180 = "X12_180" + X12204 = "X12_204" + X12210 = "X12_210" + X12214 = "X12_214" + X12215 = "X12_215" + X12310 = "X12_310" + X12315 = "X12_315" + X12322 = "X12_322" + X12404 = "X12_404" + X12410 = "X12_410" + X12820 = "X12_820" + X12824 = "X12_824" + X12830 = "X12_830" + X12846 = "X12_846" + X12850 = "X12_850" + X12852 = "X12_852" + X12855 = "X12_855" + X12856 = "X12_856" + X12860 = "X12_860" + X12861 = "X12_861" + X12864 = "X12_864" + X12940 = "X12_940" + X12990 = "X12_990" + X12997 = "X12_997" + + +class TransformerX12Version(str, Enum): + VERSION4010 = "VERSION_4010" + VERSION4030 = "VERSION_4030" + VERSION5010 = "VERSION_5010" diff --git a/sdk/python/pulumi_aws_native/b2bi/_inputs.py b/sdk/python/pulumi_aws_native/b2bi/_inputs.py new file mode 100644 index 0000000000..b14adf5343 --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/_inputs.py @@ -0,0 +1,318 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from ._enums import * + +__all__ = [ + 'CapabilityConfigurationPropertiesArgs', + 'CapabilityEdiConfigurationArgs', + 'CapabilityEdiTypePropertiesArgs', + 'CapabilityS3LocationArgs', + 'CapabilityTagArgs', + 'CapabilityX12DetailsArgs', + 'PartnershipTagArgs', + 'ProfileTagArgs', + 'TransformerEdiTypePropertiesArgs', + 'TransformerTagArgs', + 'TransformerX12DetailsArgs', +] + +@pulumi.input_type +class CapabilityConfigurationPropertiesArgs: + def __init__(__self__, *, + edi: pulumi.Input['CapabilityEdiConfigurationArgs']): + pulumi.set(__self__, "edi", edi) + + @property + @pulumi.getter + def edi(self) -> pulumi.Input['CapabilityEdiConfigurationArgs']: + return pulumi.get(self, "edi") + + @edi.setter + def edi(self, value: pulumi.Input['CapabilityEdiConfigurationArgs']): + pulumi.set(self, "edi", value) + + +@pulumi.input_type +class CapabilityEdiConfigurationArgs: + def __init__(__self__, *, + input_location: pulumi.Input['CapabilityS3LocationArgs'], + output_location: pulumi.Input['CapabilityS3LocationArgs'], + transformer_id: pulumi.Input[str], + type: pulumi.Input['CapabilityEdiTypePropertiesArgs']): + pulumi.set(__self__, "input_location", input_location) + pulumi.set(__self__, "output_location", output_location) + pulumi.set(__self__, "transformer_id", transformer_id) + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter(name="inputLocation") + def input_location(self) -> pulumi.Input['CapabilityS3LocationArgs']: + return pulumi.get(self, "input_location") + + @input_location.setter + def input_location(self, value: pulumi.Input['CapabilityS3LocationArgs']): + pulumi.set(self, "input_location", value) + + @property + @pulumi.getter(name="outputLocation") + def output_location(self) -> pulumi.Input['CapabilityS3LocationArgs']: + return pulumi.get(self, "output_location") + + @output_location.setter + def output_location(self, value: pulumi.Input['CapabilityS3LocationArgs']): + pulumi.set(self, "output_location", value) + + @property + @pulumi.getter(name="transformerId") + def transformer_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "transformer_id") + + @transformer_id.setter + def transformer_id(self, value: pulumi.Input[str]): + pulumi.set(self, "transformer_id", value) + + @property + @pulumi.getter + def type(self) -> pulumi.Input['CapabilityEdiTypePropertiesArgs']: + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input['CapabilityEdiTypePropertiesArgs']): + pulumi.set(self, "type", value) + + +@pulumi.input_type +class CapabilityEdiTypePropertiesArgs: + def __init__(__self__, *, + x12_details: pulumi.Input['CapabilityX12DetailsArgs']): + pulumi.set(__self__, "x12_details", x12_details) + + @property + @pulumi.getter(name="x12Details") + def x12_details(self) -> pulumi.Input['CapabilityX12DetailsArgs']: + return pulumi.get(self, "x12_details") + + @x12_details.setter + def x12_details(self, value: pulumi.Input['CapabilityX12DetailsArgs']): + pulumi.set(self, "x12_details", value) + + +@pulumi.input_type +class CapabilityS3LocationArgs: + def __init__(__self__, *, + bucket_name: Optional[pulumi.Input[str]] = None, + key: Optional[pulumi.Input[str]] = None): + if bucket_name is not None: + pulumi.set(__self__, "bucket_name", bucket_name) + if key is not None: + pulumi.set(__self__, "key", key) + + @property + @pulumi.getter(name="bucketName") + def bucket_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "bucket_name") + + @bucket_name.setter + def bucket_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "bucket_name", value) + + @property + @pulumi.getter + def key(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "key") + + @key.setter + def key(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "key", value) + + +@pulumi.input_type +class CapabilityTagArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str]): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @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 value(self) -> pulumi.Input[str]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class CapabilityX12DetailsArgs: + def __init__(__self__, *, + transaction_set: Optional[pulumi.Input['CapabilityX12TransactionSet']] = None, + version: Optional[pulumi.Input['CapabilityX12Version']] = None): + if transaction_set is not None: + pulumi.set(__self__, "transaction_set", transaction_set) + if version is not None: + pulumi.set(__self__, "version", version) + + @property + @pulumi.getter(name="transactionSet") + def transaction_set(self) -> Optional[pulumi.Input['CapabilityX12TransactionSet']]: + return pulumi.get(self, "transaction_set") + + @transaction_set.setter + def transaction_set(self, value: Optional[pulumi.Input['CapabilityX12TransactionSet']]): + pulumi.set(self, "transaction_set", value) + + @property + @pulumi.getter + def version(self) -> Optional[pulumi.Input['CapabilityX12Version']]: + return pulumi.get(self, "version") + + @version.setter + def version(self, value: Optional[pulumi.Input['CapabilityX12Version']]): + pulumi.set(self, "version", value) + + +@pulumi.input_type +class PartnershipTagArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str]): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @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 value(self) -> pulumi.Input[str]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class ProfileTagArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str]): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @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 value(self) -> pulumi.Input[str]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class TransformerEdiTypePropertiesArgs: + def __init__(__self__, *, + x12_details: pulumi.Input['TransformerX12DetailsArgs']): + pulumi.set(__self__, "x12_details", x12_details) + + @property + @pulumi.getter(name="x12Details") + def x12_details(self) -> pulumi.Input['TransformerX12DetailsArgs']: + return pulumi.get(self, "x12_details") + + @x12_details.setter + def x12_details(self, value: pulumi.Input['TransformerX12DetailsArgs']): + pulumi.set(self, "x12_details", value) + + +@pulumi.input_type +class TransformerTagArgs: + def __init__(__self__, *, + key: pulumi.Input[str], + value: pulumi.Input[str]): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @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 value(self) -> pulumi.Input[str]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[str]): + pulumi.set(self, "value", value) + + +@pulumi.input_type +class TransformerX12DetailsArgs: + def __init__(__self__, *, + transaction_set: Optional[pulumi.Input['TransformerX12TransactionSet']] = None, + version: Optional[pulumi.Input['TransformerX12Version']] = None): + if transaction_set is not None: + pulumi.set(__self__, "transaction_set", transaction_set) + if version is not None: + pulumi.set(__self__, "version", version) + + @property + @pulumi.getter(name="transactionSet") + def transaction_set(self) -> Optional[pulumi.Input['TransformerX12TransactionSet']]: + return pulumi.get(self, "transaction_set") + + @transaction_set.setter + def transaction_set(self, value: Optional[pulumi.Input['TransformerX12TransactionSet']]): + pulumi.set(self, "transaction_set", value) + + @property + @pulumi.getter + def version(self) -> Optional[pulumi.Input['TransformerX12Version']]: + return pulumi.get(self, "version") + + @version.setter + def version(self, value: Optional[pulumi.Input['TransformerX12Version']]): + pulumi.set(self, "version", value) + + diff --git a/sdk/python/pulumi_aws_native/b2bi/capability.py b/sdk/python/pulumi_aws_native/b2bi/capability.py new file mode 100644 index 0000000000..66d03f27be --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/capability.py @@ -0,0 +1,230 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['CapabilityArgs', 'Capability'] + +@pulumi.input_type +class CapabilityArgs: + def __init__(__self__, *, + configuration: pulumi.Input['CapabilityConfigurationPropertiesArgs'], + type: pulumi.Input['CapabilityType'], + instructions_documents: Optional[pulumi.Input[Sequence[pulumi.Input['CapabilityS3LocationArgs']]]] = None, + name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['CapabilityTagArgs']]]] = None): + """ + The set of arguments for constructing a Capability resource. + """ + pulumi.set(__self__, "configuration", configuration) + pulumi.set(__self__, "type", type) + if instructions_documents is not None: + pulumi.set(__self__, "instructions_documents", instructions_documents) + if name is not None: + pulumi.set(__self__, "name", name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter + def configuration(self) -> pulumi.Input['CapabilityConfigurationPropertiesArgs']: + return pulumi.get(self, "configuration") + + @configuration.setter + def configuration(self, value: pulumi.Input['CapabilityConfigurationPropertiesArgs']): + pulumi.set(self, "configuration", value) + + @property + @pulumi.getter + def type(self) -> pulumi.Input['CapabilityType']: + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input['CapabilityType']): + pulumi.set(self, "type", value) + + @property + @pulumi.getter(name="instructionsDocuments") + def instructions_documents(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['CapabilityS3LocationArgs']]]]: + return pulumi.get(self, "instructions_documents") + + @instructions_documents.setter + def instructions_documents(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['CapabilityS3LocationArgs']]]]): + pulumi.set(self, "instructions_documents", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['CapabilityTagArgs']]]]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['CapabilityTagArgs']]]]): + pulumi.set(self, "tags", value) + + +class Capability(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + configuration: Optional[pulumi.Input[pulumi.InputType['CapabilityConfigurationPropertiesArgs']]] = None, + instructions_documents: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CapabilityS3LocationArgs']]]]] = None, + name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CapabilityTagArgs']]]]] = None, + type: Optional[pulumi.Input['CapabilityType']] = None, + __props__=None): + """ + Definition of AWS::B2BI::Capability Resource Type + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: CapabilityArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Definition of AWS::B2BI::Capability Resource Type + + :param str resource_name: The name of the resource. + :param CapabilityArgs 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(CapabilityArgs, 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, + configuration: Optional[pulumi.Input[pulumi.InputType['CapabilityConfigurationPropertiesArgs']]] = None, + instructions_documents: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CapabilityS3LocationArgs']]]]] = None, + name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CapabilityTagArgs']]]]] = None, + type: Optional[pulumi.Input['CapabilityType']] = 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__ = CapabilityArgs.__new__(CapabilityArgs) + + if configuration is None and not opts.urn: + raise TypeError("Missing required property 'configuration'") + __props__.__dict__["configuration"] = configuration + __props__.__dict__["instructions_documents"] = instructions_documents + __props__.__dict__["name"] = name + __props__.__dict__["tags"] = tags + if type is None and not opts.urn: + raise TypeError("Missing required property 'type'") + __props__.__dict__["type"] = type + __props__.__dict__["capability_arn"] = None + __props__.__dict__["capability_id"] = None + __props__.__dict__["created_at"] = None + __props__.__dict__["modified_at"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["type"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(Capability, __self__).__init__( + 'aws-native:b2bi:Capability', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'Capability': + """ + Get an existing Capability 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__ = CapabilityArgs.__new__(CapabilityArgs) + + __props__.__dict__["capability_arn"] = None + __props__.__dict__["capability_id"] = None + __props__.__dict__["configuration"] = None + __props__.__dict__["created_at"] = None + __props__.__dict__["instructions_documents"] = None + __props__.__dict__["modified_at"] = None + __props__.__dict__["name"] = None + __props__.__dict__["tags"] = None + __props__.__dict__["type"] = None + return Capability(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="capabilityArn") + def capability_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "capability_arn") + + @property + @pulumi.getter(name="capabilityId") + def capability_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "capability_id") + + @property + @pulumi.getter + def configuration(self) -> pulumi.Output['outputs.CapabilityConfigurationProperties']: + return pulumi.get(self, "configuration") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter(name="instructionsDocuments") + def instructions_documents(self) -> pulumi.Output[Optional[Sequence['outputs.CapabilityS3Location']]]: + return pulumi.get(self, "instructions_documents") + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "modified_at") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.CapabilityTag']]]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter + def type(self) -> pulumi.Output['CapabilityType']: + return pulumi.get(self, "type") + diff --git a/sdk/python/pulumi_aws_native/b2bi/get_capability.py b/sdk/python/pulumi_aws_native/b2bi/get_capability.py new file mode 100644 index 0000000000..dcd3840139 --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/get_capability.py @@ -0,0 +1,133 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * + +__all__ = [ + 'GetCapabilityResult', + 'AwaitableGetCapabilityResult', + 'get_capability', + 'get_capability_output', +] + +@pulumi.output_type +class GetCapabilityResult: + def __init__(__self__, capability_arn=None, capability_id=None, configuration=None, created_at=None, instructions_documents=None, modified_at=None, name=None, tags=None): + if capability_arn and not isinstance(capability_arn, str): + raise TypeError("Expected argument 'capability_arn' to be a str") + pulumi.set(__self__, "capability_arn", capability_arn) + if capability_id and not isinstance(capability_id, str): + raise TypeError("Expected argument 'capability_id' to be a str") + pulumi.set(__self__, "capability_id", capability_id) + if configuration and not isinstance(configuration, dict): + raise TypeError("Expected argument 'configuration' to be a dict") + pulumi.set(__self__, "configuration", configuration) + 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 instructions_documents and not isinstance(instructions_documents, list): + raise TypeError("Expected argument 'instructions_documents' to be a list") + pulumi.set(__self__, "instructions_documents", instructions_documents) + if modified_at and not isinstance(modified_at, str): + raise TypeError("Expected argument 'modified_at' to be a str") + pulumi.set(__self__, "modified_at", modified_at) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + 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="capabilityArn") + def capability_arn(self) -> Optional[str]: + return pulumi.get(self, "capability_arn") + + @property + @pulumi.getter(name="capabilityId") + def capability_id(self) -> Optional[str]: + return pulumi.get(self, "capability_id") + + @property + @pulumi.getter + def configuration(self) -> Optional['outputs.CapabilityConfigurationProperties']: + return pulumi.get(self, "configuration") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> Optional[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter(name="instructionsDocuments") + def instructions_documents(self) -> Optional[Sequence['outputs.CapabilityS3Location']]: + return pulumi.get(self, "instructions_documents") + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> Optional[str]: + return pulumi.get(self, "modified_at") + + @property + @pulumi.getter + def name(self) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.CapabilityTag']]: + return pulumi.get(self, "tags") + + +class AwaitableGetCapabilityResult(GetCapabilityResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetCapabilityResult( + capability_arn=self.capability_arn, + capability_id=self.capability_id, + configuration=self.configuration, + created_at=self.created_at, + instructions_documents=self.instructions_documents, + modified_at=self.modified_at, + name=self.name, + tags=self.tags) + + +def get_capability(capability_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetCapabilityResult: + """ + Definition of AWS::B2BI::Capability Resource Type + """ + __args__ = dict() + __args__['capabilityId'] = capability_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:b2bi:getCapability', __args__, opts=opts, typ=GetCapabilityResult).value + + return AwaitableGetCapabilityResult( + capability_arn=pulumi.get(__ret__, 'capability_arn'), + capability_id=pulumi.get(__ret__, 'capability_id'), + configuration=pulumi.get(__ret__, 'configuration'), + created_at=pulumi.get(__ret__, 'created_at'), + instructions_documents=pulumi.get(__ret__, 'instructions_documents'), + modified_at=pulumi.get(__ret__, 'modified_at'), + name=pulumi.get(__ret__, 'name'), + tags=pulumi.get(__ret__, 'tags')) + + +@_utilities.lift_output_func(get_capability) +def get_capability_output(capability_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetCapabilityResult]: + """ + Definition of AWS::B2BI::Capability Resource Type + """ + ... diff --git a/sdk/python/pulumi_aws_native/b2bi/get_partnership.py b/sdk/python/pulumi_aws_native/b2bi/get_partnership.py new file mode 100644 index 0000000000..3077dd3dc2 --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/get_partnership.py @@ -0,0 +1,132 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetPartnershipResult', + 'AwaitableGetPartnershipResult', + 'get_partnership', + 'get_partnership_output', +] + +@pulumi.output_type +class GetPartnershipResult: + def __init__(__self__, capabilities=None, created_at=None, modified_at=None, name=None, partnership_arn=None, partnership_id=None, tags=None, trading_partner_id=None): + if capabilities and not isinstance(capabilities, list): + raise TypeError("Expected argument 'capabilities' to be a list") + pulumi.set(__self__, "capabilities", capabilities) + 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 modified_at and not isinstance(modified_at, str): + raise TypeError("Expected argument 'modified_at' to be a str") + pulumi.set(__self__, "modified_at", modified_at) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if partnership_arn and not isinstance(partnership_arn, str): + raise TypeError("Expected argument 'partnership_arn' to be a str") + pulumi.set(__self__, "partnership_arn", partnership_arn) + if partnership_id and not isinstance(partnership_id, str): + raise TypeError("Expected argument 'partnership_id' to be a str") + pulumi.set(__self__, "partnership_id", partnership_id) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) + if trading_partner_id and not isinstance(trading_partner_id, str): + raise TypeError("Expected argument 'trading_partner_id' to be a str") + pulumi.set(__self__, "trading_partner_id", trading_partner_id) + + @property + @pulumi.getter + def capabilities(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "capabilities") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> Optional[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> Optional[str]: + return pulumi.get(self, "modified_at") + + @property + @pulumi.getter + def name(self) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="partnershipArn") + def partnership_arn(self) -> Optional[str]: + return pulumi.get(self, "partnership_arn") + + @property + @pulumi.getter(name="partnershipId") + def partnership_id(self) -> Optional[str]: + return pulumi.get(self, "partnership_id") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.PartnershipTag']]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tradingPartnerId") + def trading_partner_id(self) -> Optional[str]: + return pulumi.get(self, "trading_partner_id") + + +class AwaitableGetPartnershipResult(GetPartnershipResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetPartnershipResult( + capabilities=self.capabilities, + created_at=self.created_at, + modified_at=self.modified_at, + name=self.name, + partnership_arn=self.partnership_arn, + partnership_id=self.partnership_id, + tags=self.tags, + trading_partner_id=self.trading_partner_id) + + +def get_partnership(partnership_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetPartnershipResult: + """ + Definition of AWS::B2BI::Partnership Resource Type + """ + __args__ = dict() + __args__['partnershipId'] = partnership_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:b2bi:getPartnership', __args__, opts=opts, typ=GetPartnershipResult).value + + return AwaitableGetPartnershipResult( + capabilities=pulumi.get(__ret__, 'capabilities'), + created_at=pulumi.get(__ret__, 'created_at'), + modified_at=pulumi.get(__ret__, 'modified_at'), + name=pulumi.get(__ret__, 'name'), + partnership_arn=pulumi.get(__ret__, 'partnership_arn'), + partnership_id=pulumi.get(__ret__, 'partnership_id'), + tags=pulumi.get(__ret__, 'tags'), + trading_partner_id=pulumi.get(__ret__, 'trading_partner_id')) + + +@_utilities.lift_output_func(get_partnership) +def get_partnership_output(partnership_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetPartnershipResult]: + """ + Definition of AWS::B2BI::Partnership Resource Type + """ + ... diff --git a/sdk/python/pulumi_aws_native/b2bi/get_profile.py b/sdk/python/pulumi_aws_native/b2bi/get_profile.py new file mode 100644 index 0000000000..49e547f981 --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/get_profile.py @@ -0,0 +1,152 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetProfileResult', + 'AwaitableGetProfileResult', + 'get_profile', + 'get_profile_output', +] + +@pulumi.output_type +class GetProfileResult: + def __init__(__self__, business_name=None, created_at=None, email=None, log_group_name=None, modified_at=None, name=None, phone=None, profile_arn=None, profile_id=None, tags=None): + if business_name and not isinstance(business_name, str): + raise TypeError("Expected argument 'business_name' to be a str") + pulumi.set(__self__, "business_name", business_name) + 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 email and not isinstance(email, str): + raise TypeError("Expected argument 'email' to be a str") + pulumi.set(__self__, "email", email) + if log_group_name and not isinstance(log_group_name, str): + raise TypeError("Expected argument 'log_group_name' to be a str") + pulumi.set(__self__, "log_group_name", log_group_name) + if modified_at and not isinstance(modified_at, str): + raise TypeError("Expected argument 'modified_at' to be a str") + pulumi.set(__self__, "modified_at", modified_at) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if phone and not isinstance(phone, str): + raise TypeError("Expected argument 'phone' to be a str") + pulumi.set(__self__, "phone", phone) + if profile_arn and not isinstance(profile_arn, str): + raise TypeError("Expected argument 'profile_arn' to be a str") + pulumi.set(__self__, "profile_arn", profile_arn) + if profile_id and not isinstance(profile_id, str): + raise TypeError("Expected argument 'profile_id' to be a str") + pulumi.set(__self__, "profile_id", profile_id) + 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="businessName") + def business_name(self) -> Optional[str]: + return pulumi.get(self, "business_name") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> Optional[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def email(self) -> Optional[str]: + return pulumi.get(self, "email") + + @property + @pulumi.getter(name="logGroupName") + def log_group_name(self) -> Optional[str]: + return pulumi.get(self, "log_group_name") + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> Optional[str]: + return pulumi.get(self, "modified_at") + + @property + @pulumi.getter + def name(self) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def phone(self) -> Optional[str]: + return pulumi.get(self, "phone") + + @property + @pulumi.getter(name="profileArn") + def profile_arn(self) -> Optional[str]: + return pulumi.get(self, "profile_arn") + + @property + @pulumi.getter(name="profileId") + def profile_id(self) -> Optional[str]: + return pulumi.get(self, "profile_id") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.ProfileTag']]: + return pulumi.get(self, "tags") + + +class AwaitableGetProfileResult(GetProfileResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetProfileResult( + business_name=self.business_name, + created_at=self.created_at, + email=self.email, + log_group_name=self.log_group_name, + modified_at=self.modified_at, + name=self.name, + phone=self.phone, + profile_arn=self.profile_arn, + profile_id=self.profile_id, + tags=self.tags) + + +def get_profile(profile_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetProfileResult: + """ + Definition of AWS::B2BI::Profile Resource Type + """ + __args__ = dict() + __args__['profileId'] = profile_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:b2bi:getProfile', __args__, opts=opts, typ=GetProfileResult).value + + return AwaitableGetProfileResult( + business_name=pulumi.get(__ret__, 'business_name'), + created_at=pulumi.get(__ret__, 'created_at'), + email=pulumi.get(__ret__, 'email'), + log_group_name=pulumi.get(__ret__, 'log_group_name'), + modified_at=pulumi.get(__ret__, 'modified_at'), + name=pulumi.get(__ret__, 'name'), + phone=pulumi.get(__ret__, 'phone'), + profile_arn=pulumi.get(__ret__, 'profile_arn'), + profile_id=pulumi.get(__ret__, 'profile_id'), + tags=pulumi.get(__ret__, 'tags')) + + +@_utilities.lift_output_func(get_profile) +def get_profile_output(profile_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetProfileResult]: + """ + Definition of AWS::B2BI::Profile Resource Type + """ + ... diff --git a/sdk/python/pulumi_aws_native/b2bi/get_transformer.py b/sdk/python/pulumi_aws_native/b2bi/get_transformer.py new file mode 100644 index 0000000000..c1382b83be --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/get_transformer.py @@ -0,0 +1,163 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +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__, created_at=None, edi_type=None, file_format=None, mapping_template=None, modified_at=None, name=None, sample_document=None, status=None, tags=None, transformer_arn=None, transformer_id=None): + 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 edi_type and not isinstance(edi_type, dict): + raise TypeError("Expected argument 'edi_type' to be a dict") + pulumi.set(__self__, "edi_type", edi_type) + if file_format and not isinstance(file_format, str): + raise TypeError("Expected argument 'file_format' to be a str") + pulumi.set(__self__, "file_format", file_format) + if mapping_template and not isinstance(mapping_template, str): + raise TypeError("Expected argument 'mapping_template' to be a str") + pulumi.set(__self__, "mapping_template", mapping_template) + if modified_at and not isinstance(modified_at, str): + raise TypeError("Expected argument 'modified_at' to be a str") + pulumi.set(__self__, "modified_at", modified_at) + if name and not isinstance(name, str): + raise TypeError("Expected argument 'name' to be a str") + pulumi.set(__self__, "name", name) + if sample_document and not isinstance(sample_document, str): + raise TypeError("Expected argument 'sample_document' to be a str") + pulumi.set(__self__, "sample_document", sample_document) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) + if transformer_arn and not isinstance(transformer_arn, str): + raise TypeError("Expected argument 'transformer_arn' to be a str") + pulumi.set(__self__, "transformer_arn", transformer_arn) + if transformer_id and not isinstance(transformer_id, str): + raise TypeError("Expected argument 'transformer_id' to be a str") + pulumi.set(__self__, "transformer_id", transformer_id) + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> Optional[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter(name="ediType") + def edi_type(self) -> Optional['outputs.TransformerEdiTypeProperties']: + return pulumi.get(self, "edi_type") + + @property + @pulumi.getter(name="fileFormat") + def file_format(self) -> Optional['TransformerFileFormat']: + return pulumi.get(self, "file_format") + + @property + @pulumi.getter(name="mappingTemplate") + def mapping_template(self) -> Optional[str]: + return pulumi.get(self, "mapping_template") + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> Optional[str]: + return pulumi.get(self, "modified_at") + + @property + @pulumi.getter + def name(self) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="sampleDocument") + def sample_document(self) -> Optional[str]: + return pulumi.get(self, "sample_document") + + @property + @pulumi.getter + def status(self) -> Optional['TransformerStatus']: + return pulumi.get(self, "status") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.TransformerTag']]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="transformerArn") + def transformer_arn(self) -> Optional[str]: + return pulumi.get(self, "transformer_arn") + + @property + @pulumi.getter(name="transformerId") + def transformer_id(self) -> Optional[str]: + return pulumi.get(self, "transformer_id") + + +class AwaitableGetTransformerResult(GetTransformerResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetTransformerResult( + created_at=self.created_at, + edi_type=self.edi_type, + file_format=self.file_format, + mapping_template=self.mapping_template, + modified_at=self.modified_at, + name=self.name, + sample_document=self.sample_document, + status=self.status, + tags=self.tags, + transformer_arn=self.transformer_arn, + transformer_id=self.transformer_id) + + +def get_transformer(transformer_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTransformerResult: + """ + Definition of AWS::B2BI::Transformer Resource Type + """ + __args__ = dict() + __args__['transformerId'] = transformer_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:b2bi:getTransformer', __args__, opts=opts, typ=GetTransformerResult).value + + return AwaitableGetTransformerResult( + created_at=pulumi.get(__ret__, 'created_at'), + edi_type=pulumi.get(__ret__, 'edi_type'), + file_format=pulumi.get(__ret__, 'file_format'), + mapping_template=pulumi.get(__ret__, 'mapping_template'), + modified_at=pulumi.get(__ret__, 'modified_at'), + name=pulumi.get(__ret__, 'name'), + sample_document=pulumi.get(__ret__, 'sample_document'), + status=pulumi.get(__ret__, 'status'), + tags=pulumi.get(__ret__, 'tags'), + transformer_arn=pulumi.get(__ret__, 'transformer_arn'), + transformer_id=pulumi.get(__ret__, 'transformer_id')) + + +@_utilities.lift_output_func(get_transformer) +def get_transformer_output(transformer_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetTransformerResult]: + """ + Definition of AWS::B2BI::Transformer Resource Type + """ + ... diff --git a/sdk/python/pulumi_aws_native/b2bi/outputs.py b/sdk/python/pulumi_aws_native/b2bi/outputs.py new file mode 100644 index 0000000000..1edff5b64e --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/outputs.py @@ -0,0 +1,341 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * + +__all__ = [ + 'CapabilityConfigurationProperties', + 'CapabilityEdiConfiguration', + 'CapabilityEdiTypeProperties', + 'CapabilityS3Location', + 'CapabilityTag', + 'CapabilityX12Details', + 'PartnershipTag', + 'ProfileTag', + 'TransformerEdiTypeProperties', + 'TransformerTag', + 'TransformerX12Details', +] + +@pulumi.output_type +class CapabilityConfigurationProperties(dict): + def __init__(__self__, *, + edi: 'outputs.CapabilityEdiConfiguration'): + pulumi.set(__self__, "edi", edi) + + @property + @pulumi.getter + def edi(self) -> 'outputs.CapabilityEdiConfiguration': + return pulumi.get(self, "edi") + + +@pulumi.output_type +class CapabilityEdiConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "inputLocation": + suggest = "input_location" + elif key == "outputLocation": + suggest = "output_location" + elif key == "transformerId": + suggest = "transformer_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in CapabilityEdiConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + CapabilityEdiConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + CapabilityEdiConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + input_location: 'outputs.CapabilityS3Location', + output_location: 'outputs.CapabilityS3Location', + transformer_id: str, + type: 'outputs.CapabilityEdiTypeProperties'): + pulumi.set(__self__, "input_location", input_location) + pulumi.set(__self__, "output_location", output_location) + pulumi.set(__self__, "transformer_id", transformer_id) + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter(name="inputLocation") + def input_location(self) -> 'outputs.CapabilityS3Location': + return pulumi.get(self, "input_location") + + @property + @pulumi.getter(name="outputLocation") + def output_location(self) -> 'outputs.CapabilityS3Location': + return pulumi.get(self, "output_location") + + @property + @pulumi.getter(name="transformerId") + def transformer_id(self) -> str: + return pulumi.get(self, "transformer_id") + + @property + @pulumi.getter + def type(self) -> 'outputs.CapabilityEdiTypeProperties': + return pulumi.get(self, "type") + + +@pulumi.output_type +class CapabilityEdiTypeProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "x12Details": + suggest = "x12_details" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in CapabilityEdiTypeProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + CapabilityEdiTypeProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + CapabilityEdiTypeProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + x12_details: 'outputs.CapabilityX12Details'): + pulumi.set(__self__, "x12_details", x12_details) + + @property + @pulumi.getter(name="x12Details") + def x12_details(self) -> 'outputs.CapabilityX12Details': + return pulumi.get(self, "x12_details") + + +@pulumi.output_type +class CapabilityS3Location(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "bucketName": + suggest = "bucket_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in CapabilityS3Location. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + CapabilityS3Location.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + CapabilityS3Location.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + bucket_name: Optional[str] = None, + key: Optional[str] = None): + if bucket_name is not None: + pulumi.set(__self__, "bucket_name", bucket_name) + if key is not None: + pulumi.set(__self__, "key", key) + + @property + @pulumi.getter(name="bucketName") + def bucket_name(self) -> Optional[str]: + return pulumi.get(self, "bucket_name") + + @property + @pulumi.getter + def key(self) -> Optional[str]: + return pulumi.get(self, "key") + + +@pulumi.output_type +class CapabilityTag(dict): + def __init__(__self__, *, + key: str, + value: str): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + return pulumi.get(self, "value") + + +@pulumi.output_type +class CapabilityX12Details(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "transactionSet": + suggest = "transaction_set" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in CapabilityX12Details. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + CapabilityX12Details.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + CapabilityX12Details.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + transaction_set: Optional['CapabilityX12TransactionSet'] = None, + version: Optional['CapabilityX12Version'] = None): + if transaction_set is not None: + pulumi.set(__self__, "transaction_set", transaction_set) + if version is not None: + pulumi.set(__self__, "version", version) + + @property + @pulumi.getter(name="transactionSet") + def transaction_set(self) -> Optional['CapabilityX12TransactionSet']: + return pulumi.get(self, "transaction_set") + + @property + @pulumi.getter + def version(self) -> Optional['CapabilityX12Version']: + return pulumi.get(self, "version") + + +@pulumi.output_type +class PartnershipTag(dict): + def __init__(__self__, *, + key: str, + value: str): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + return pulumi.get(self, "value") + + +@pulumi.output_type +class ProfileTag(dict): + def __init__(__self__, *, + key: str, + value: str): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + return pulumi.get(self, "value") + + +@pulumi.output_type +class TransformerEdiTypeProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "x12Details": + suggest = "x12_details" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerEdiTypeProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerEdiTypeProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerEdiTypeProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + x12_details: 'outputs.TransformerX12Details'): + pulumi.set(__self__, "x12_details", x12_details) + + @property + @pulumi.getter(name="x12Details") + def x12_details(self) -> 'outputs.TransformerX12Details': + return pulumi.get(self, "x12_details") + + +@pulumi.output_type +class TransformerTag(dict): + def __init__(__self__, *, + key: str, + value: str): + pulumi.set(__self__, "key", key) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def key(self) -> str: + return pulumi.get(self, "key") + + @property + @pulumi.getter + def value(self) -> str: + return pulumi.get(self, "value") + + +@pulumi.output_type +class TransformerX12Details(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "transactionSet": + suggest = "transaction_set" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in TransformerX12Details. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + TransformerX12Details.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + TransformerX12Details.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + transaction_set: Optional['TransformerX12TransactionSet'] = None, + version: Optional['TransformerX12Version'] = None): + if transaction_set is not None: + pulumi.set(__self__, "transaction_set", transaction_set) + if version is not None: + pulumi.set(__self__, "version", version) + + @property + @pulumi.getter(name="transactionSet") + def transaction_set(self) -> Optional['TransformerX12TransactionSet']: + return pulumi.get(self, "transaction_set") + + @property + @pulumi.getter + def version(self) -> Optional['TransformerX12Version']: + return pulumi.get(self, "version") + + diff --git a/sdk/python/pulumi_aws_native/b2bi/partnership.py b/sdk/python/pulumi_aws_native/b2bi/partnership.py new file mode 100644 index 0000000000..ac9b2fa5f4 --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/partnership.py @@ -0,0 +1,257 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['PartnershipArgs', 'Partnership'] + +@pulumi.input_type +class PartnershipArgs: + def __init__(__self__, *, + email: pulumi.Input[str], + profile_id: pulumi.Input[str], + capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + name: Optional[pulumi.Input[str]] = None, + phone: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['PartnershipTagArgs']]]] = None): + """ + The set of arguments for constructing a Partnership resource. + """ + pulumi.set(__self__, "email", email) + pulumi.set(__self__, "profile_id", profile_id) + if capabilities is not None: + pulumi.set(__self__, "capabilities", capabilities) + if name is not None: + pulumi.set(__self__, "name", name) + if phone is not None: + pulumi.set(__self__, "phone", phone) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter + def email(self) -> pulumi.Input[str]: + return pulumi.get(self, "email") + + @email.setter + def email(self, value: pulumi.Input[str]): + pulumi.set(self, "email", value) + + @property + @pulumi.getter(name="profileId") + def profile_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "profile_id") + + @profile_id.setter + def profile_id(self, value: pulumi.Input[str]): + pulumi.set(self, "profile_id", value) + + @property + @pulumi.getter + def capabilities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "capabilities") + + @capabilities.setter + def capabilities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "capabilities", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def phone(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "phone") + + @phone.setter + def phone(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "phone", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PartnershipTagArgs']]]]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PartnershipTagArgs']]]]): + pulumi.set(self, "tags", value) + + +class Partnership(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + email: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + phone: Optional[pulumi.Input[str]] = None, + profile_id: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PartnershipTagArgs']]]]] = None, + __props__=None): + """ + Definition of AWS::B2BI::Partnership Resource Type + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: PartnershipArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Definition of AWS::B2BI::Partnership Resource Type + + :param str resource_name: The name of the resource. + :param PartnershipArgs 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(PartnershipArgs, 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, + capabilities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + email: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + phone: Optional[pulumi.Input[str]] = None, + profile_id: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PartnershipTagArgs']]]]] = 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__ = PartnershipArgs.__new__(PartnershipArgs) + + __props__.__dict__["capabilities"] = capabilities + if email is None and not opts.urn: + raise TypeError("Missing required property 'email'") + __props__.__dict__["email"] = email + __props__.__dict__["name"] = name + __props__.__dict__["phone"] = phone + if profile_id is None and not opts.urn: + raise TypeError("Missing required property 'profile_id'") + __props__.__dict__["profile_id"] = profile_id + __props__.__dict__["tags"] = tags + __props__.__dict__["created_at"] = None + __props__.__dict__["modified_at"] = None + __props__.__dict__["partnership_arn"] = None + __props__.__dict__["partnership_id"] = None + __props__.__dict__["trading_partner_id"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["email", "phone", "profile_id"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(Partnership, __self__).__init__( + 'aws-native:b2bi:Partnership', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'Partnership': + """ + Get an existing Partnership 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__ = PartnershipArgs.__new__(PartnershipArgs) + + __props__.__dict__["capabilities"] = None + __props__.__dict__["created_at"] = None + __props__.__dict__["email"] = None + __props__.__dict__["modified_at"] = None + __props__.__dict__["name"] = None + __props__.__dict__["partnership_arn"] = None + __props__.__dict__["partnership_id"] = None + __props__.__dict__["phone"] = None + __props__.__dict__["profile_id"] = None + __props__.__dict__["tags"] = None + __props__.__dict__["trading_partner_id"] = None + return Partnership(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def capabilities(self) -> pulumi.Output[Optional[Sequence[str]]]: + return pulumi.get(self, "capabilities") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def email(self) -> pulumi.Output[str]: + return pulumi.get(self, "email") + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "modified_at") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="partnershipArn") + def partnership_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "partnership_arn") + + @property + @pulumi.getter(name="partnershipId") + def partnership_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "partnership_id") + + @property + @pulumi.getter + def phone(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "phone") + + @property + @pulumi.getter(name="profileId") + def profile_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "profile_id") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.PartnershipTag']]]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="tradingPartnerId") + def trading_partner_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "trading_partner_id") + diff --git a/sdk/python/pulumi_aws_native/b2bi/profile.py b/sdk/python/pulumi_aws_native/b2bi/profile.py new file mode 100644 index 0000000000..18ba1ba326 --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/profile.py @@ -0,0 +1,259 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['ProfileArgs', 'Profile'] + +@pulumi.input_type +class ProfileArgs: + def __init__(__self__, *, + business_name: pulumi.Input[str], + logging: pulumi.Input['ProfileLogging'], + phone: pulumi.Input[str], + email: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['ProfileTagArgs']]]] = None): + """ + The set of arguments for constructing a Profile resource. + """ + pulumi.set(__self__, "business_name", business_name) + pulumi.set(__self__, "logging", logging) + pulumi.set(__self__, "phone", phone) + if email is not None: + pulumi.set(__self__, "email", email) + if name is not None: + pulumi.set(__self__, "name", name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="businessName") + def business_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "business_name") + + @business_name.setter + def business_name(self, value: pulumi.Input[str]): + pulumi.set(self, "business_name", value) + + @property + @pulumi.getter + def logging(self) -> pulumi.Input['ProfileLogging']: + return pulumi.get(self, "logging") + + @logging.setter + def logging(self, value: pulumi.Input['ProfileLogging']): + pulumi.set(self, "logging", value) + + @property + @pulumi.getter + def phone(self) -> pulumi.Input[str]: + return pulumi.get(self, "phone") + + @phone.setter + def phone(self, value: pulumi.Input[str]): + pulumi.set(self, "phone", value) + + @property + @pulumi.getter + def email(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "email") + + @email.setter + def email(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "email", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ProfileTagArgs']]]]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ProfileTagArgs']]]]): + pulumi.set(self, "tags", value) + + +class Profile(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + business_name: Optional[pulumi.Input[str]] = None, + email: Optional[pulumi.Input[str]] = None, + logging: Optional[pulumi.Input['ProfileLogging']] = None, + name: Optional[pulumi.Input[str]] = None, + phone: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ProfileTagArgs']]]]] = None, + __props__=None): + """ + Definition of AWS::B2BI::Profile Resource Type + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: ProfileArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Definition of AWS::B2BI::Profile Resource Type + + :param str resource_name: The name of the resource. + :param ProfileArgs 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(ProfileArgs, 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, + business_name: Optional[pulumi.Input[str]] = None, + email: Optional[pulumi.Input[str]] = None, + logging: Optional[pulumi.Input['ProfileLogging']] = None, + name: Optional[pulumi.Input[str]] = None, + phone: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ProfileTagArgs']]]]] = 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__ = ProfileArgs.__new__(ProfileArgs) + + if business_name is None and not opts.urn: + raise TypeError("Missing required property 'business_name'") + __props__.__dict__["business_name"] = business_name + __props__.__dict__["email"] = email + if logging is None and not opts.urn: + raise TypeError("Missing required property 'logging'") + __props__.__dict__["logging"] = logging + __props__.__dict__["name"] = name + if phone is None and not opts.urn: + raise TypeError("Missing required property 'phone'") + __props__.__dict__["phone"] = phone + __props__.__dict__["tags"] = tags + __props__.__dict__["created_at"] = None + __props__.__dict__["log_group_name"] = None + __props__.__dict__["modified_at"] = None + __props__.__dict__["profile_arn"] = None + __props__.__dict__["profile_id"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["logging"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(Profile, __self__).__init__( + 'aws-native:b2bi:Profile', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'Profile': + """ + Get an existing Profile 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__ = ProfileArgs.__new__(ProfileArgs) + + __props__.__dict__["business_name"] = None + __props__.__dict__["created_at"] = None + __props__.__dict__["email"] = None + __props__.__dict__["log_group_name"] = None + __props__.__dict__["logging"] = None + __props__.__dict__["modified_at"] = None + __props__.__dict__["name"] = None + __props__.__dict__["phone"] = None + __props__.__dict__["profile_arn"] = None + __props__.__dict__["profile_id"] = None + __props__.__dict__["tags"] = None + return Profile(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="businessName") + def business_name(self) -> pulumi.Output[str]: + return pulumi.get(self, "business_name") + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter + def email(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "email") + + @property + @pulumi.getter(name="logGroupName") + def log_group_name(self) -> pulumi.Output[str]: + return pulumi.get(self, "log_group_name") + + @property + @pulumi.getter + def logging(self) -> pulumi.Output['ProfileLogging']: + return pulumi.get(self, "logging") + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "modified_at") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def phone(self) -> pulumi.Output[str]: + return pulumi.get(self, "phone") + + @property + @pulumi.getter(name="profileArn") + def profile_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "profile_arn") + + @property + @pulumi.getter(name="profileId") + def profile_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "profile_id") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.ProfileTag']]]: + return pulumi.get(self, "tags") + diff --git a/sdk/python/pulumi_aws_native/b2bi/transformer.py b/sdk/python/pulumi_aws_native/b2bi/transformer.py new file mode 100644 index 0000000000..24743c1bbf --- /dev/null +++ b/sdk/python/pulumi_aws_native/b2bi/transformer.py @@ -0,0 +1,286 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['TransformerArgs', 'Transformer'] + +@pulumi.input_type +class TransformerArgs: + def __init__(__self__, *, + edi_type: pulumi.Input['TransformerEdiTypePropertiesArgs'], + file_format: pulumi.Input['TransformerFileFormat'], + mapping_template: pulumi.Input[str], + status: pulumi.Input['TransformerStatus'], + modified_at: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + sample_document: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['TransformerTagArgs']]]] = None): + """ + The set of arguments for constructing a Transformer resource. + """ + pulumi.set(__self__, "edi_type", edi_type) + pulumi.set(__self__, "file_format", file_format) + pulumi.set(__self__, "mapping_template", mapping_template) + pulumi.set(__self__, "status", status) + if modified_at is not None: + pulumi.set(__self__, "modified_at", modified_at) + if name is not None: + pulumi.set(__self__, "name", name) + if sample_document is not None: + pulumi.set(__self__, "sample_document", sample_document) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="ediType") + def edi_type(self) -> pulumi.Input['TransformerEdiTypePropertiesArgs']: + return pulumi.get(self, "edi_type") + + @edi_type.setter + def edi_type(self, value: pulumi.Input['TransformerEdiTypePropertiesArgs']): + pulumi.set(self, "edi_type", value) + + @property + @pulumi.getter(name="fileFormat") + def file_format(self) -> pulumi.Input['TransformerFileFormat']: + return pulumi.get(self, "file_format") + + @file_format.setter + def file_format(self, value: pulumi.Input['TransformerFileFormat']): + pulumi.set(self, "file_format", value) + + @property + @pulumi.getter(name="mappingTemplate") + def mapping_template(self) -> pulumi.Input[str]: + return pulumi.get(self, "mapping_template") + + @mapping_template.setter + def mapping_template(self, value: pulumi.Input[str]): + pulumi.set(self, "mapping_template", value) + + @property + @pulumi.getter + def status(self) -> pulumi.Input['TransformerStatus']: + return pulumi.get(self, "status") + + @status.setter + def status(self, value: pulumi.Input['TransformerStatus']): + pulumi.set(self, "status", value) + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "modified_at") + + @modified_at.setter + def modified_at(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "modified_at", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="sampleDocument") + def sample_document(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "sample_document") + + @sample_document.setter + def sample_document(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "sample_document", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['TransformerTagArgs']]]]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['TransformerTagArgs']]]]): + pulumi.set(self, "tags", value) + + +class Transformer(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + edi_type: Optional[pulumi.Input[pulumi.InputType['TransformerEdiTypePropertiesArgs']]] = None, + file_format: Optional[pulumi.Input['TransformerFileFormat']] = None, + mapping_template: Optional[pulumi.Input[str]] = None, + modified_at: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + sample_document: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input['TransformerStatus']] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TransformerTagArgs']]]]] = None, + __props__=None): + """ + Definition of AWS::B2BI::Transformer Resource Type + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: TransformerArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Definition of AWS::B2BI::Transformer Resource Type + + :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, + edi_type: Optional[pulumi.Input[pulumi.InputType['TransformerEdiTypePropertiesArgs']]] = None, + file_format: Optional[pulumi.Input['TransformerFileFormat']] = None, + mapping_template: Optional[pulumi.Input[str]] = None, + modified_at: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + sample_document: Optional[pulumi.Input[str]] = None, + status: Optional[pulumi.Input['TransformerStatus']] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TransformerTagArgs']]]]] = 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 edi_type is None and not opts.urn: + raise TypeError("Missing required property 'edi_type'") + __props__.__dict__["edi_type"] = edi_type + if file_format is None and not opts.urn: + raise TypeError("Missing required property 'file_format'") + __props__.__dict__["file_format"] = file_format + if mapping_template is None and not opts.urn: + raise TypeError("Missing required property 'mapping_template'") + __props__.__dict__["mapping_template"] = mapping_template + __props__.__dict__["modified_at"] = modified_at + __props__.__dict__["name"] = name + __props__.__dict__["sample_document"] = sample_document + if status is None and not opts.urn: + raise TypeError("Missing required property 'status'") + __props__.__dict__["status"] = status + __props__.__dict__["tags"] = tags + __props__.__dict__["created_at"] = None + __props__.__dict__["transformer_arn"] = None + __props__.__dict__["transformer_id"] = None + super(Transformer, __self__).__init__( + 'aws-native:b2bi: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__["created_at"] = None + __props__.__dict__["edi_type"] = None + __props__.__dict__["file_format"] = None + __props__.__dict__["mapping_template"] = None + __props__.__dict__["modified_at"] = None + __props__.__dict__["name"] = None + __props__.__dict__["sample_document"] = None + __props__.__dict__["status"] = None + __props__.__dict__["tags"] = None + __props__.__dict__["transformer_arn"] = None + __props__.__dict__["transformer_id"] = None + return Transformer(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="createdAt") + def created_at(self) -> pulumi.Output[str]: + return pulumi.get(self, "created_at") + + @property + @pulumi.getter(name="ediType") + def edi_type(self) -> pulumi.Output['outputs.TransformerEdiTypeProperties']: + return pulumi.get(self, "edi_type") + + @property + @pulumi.getter(name="fileFormat") + def file_format(self) -> pulumi.Output['TransformerFileFormat']: + return pulumi.get(self, "file_format") + + @property + @pulumi.getter(name="mappingTemplate") + def mapping_template(self) -> pulumi.Output[str]: + return pulumi.get(self, "mapping_template") + + @property + @pulumi.getter(name="modifiedAt") + def modified_at(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "modified_at") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="sampleDocument") + def sample_document(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "sample_document") + + @property + @pulumi.getter + def status(self) -> pulumi.Output['TransformerStatus']: + return pulumi.get(self, "status") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.TransformerTag']]]: + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="transformerArn") + def transformer_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "transformer_arn") + + @property + @pulumi.getter(name="transformerId") + def transformer_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "transformer_id") + diff --git a/sdk/python/pulumi_aws_native/batch/_inputs.py b/sdk/python/pulumi_aws_native/batch/_inputs.py index 4e6165a348..d6bf9110de 100644 --- a/sdk/python/pulumi_aws_native/batch/_inputs.py +++ b/sdk/python/pulumi_aws_native/batch/_inputs.py @@ -16,9 +16,15 @@ 'ComputeEnvironmentEksConfigurationArgs', 'ComputeEnvironmentLaunchTemplateSpecificationArgs', 'ComputeEnvironmentUpdatePolicyArgs', - 'JobDefinitionAuthorizationConfigArgs', + 'JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs', + 'JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs', + 'JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs', + 'JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs', + 'JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs', + 'JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs', 'JobDefinitionContainerPropertiesArgs', 'JobDefinitionDeviceArgs', + 'JobDefinitionEfsAuthorizationConfigArgs', 'JobDefinitionEfsVolumeConfigurationArgs', 'JobDefinitionEksContainerEnvironmentVariableArgs', 'JobDefinitionEksContainerResourceRequirementsArgs', @@ -27,30 +33,24 @@ 'JobDefinitionEksContainerArgs', 'JobDefinitionEksEmptyDirArgs', 'JobDefinitionEksHostPathArgs', + 'JobDefinitionEksMetadataArgs', + 'JobDefinitionEksPodPropertiesArgs', 'JobDefinitionEksPropertiesArgs', 'JobDefinitionEksSecretArgs', 'JobDefinitionEksVolumeArgs', 'JobDefinitionEnvironmentArgs', - 'JobDefinitionEphemeralStorageArgs', 'JobDefinitionEvaluateOnExitArgs', - 'JobDefinitionFargatePlatformConfigurationArgs', - 'JobDefinitionLinuxParametersArgs', - 'JobDefinitionLogConfigurationArgs', - 'JobDefinitionMetadataArgs', - 'JobDefinitionMountPointsArgs', - 'JobDefinitionNetworkConfigurationArgs', + 'JobDefinitionHostArgs', + 'JobDefinitionJobTimeoutArgs', + 'JobDefinitionMountPointArgs', 'JobDefinitionNodePropertiesArgs', 'JobDefinitionNodeRangePropertyArgs', - 'JobDefinitionPodPropertiesArgs', 'JobDefinitionResourceRequirementArgs', 'JobDefinitionRetryStrategyArgs', - 'JobDefinitionRuntimePlatformArgs', 'JobDefinitionSecretArgs', - 'JobDefinitionTimeoutArgs', 'JobDefinitionTmpfsArgs', 'JobDefinitionUlimitArgs', - 'JobDefinitionVolumesHostArgs', - 'JobDefinitionVolumesArgs', + 'JobDefinitionVolumeArgs', 'JobQueueComputeEnvironmentOrderArgs', 'SchedulingPolicyFairsharePolicyArgs', 'SchedulingPolicyShareAttributesArgs', @@ -418,32 +418,199 @@ def terminate_jobs_on_update(self, value: Optional[pulumi.Input[bool]]): @pulumi.input_type -class JobDefinitionAuthorizationConfigArgs: +class JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs: def __init__(__self__, *, - access_point_id: Optional[pulumi.Input[str]] = None, - iam: Optional[pulumi.Input[str]] = None): - 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) + size_in_gi_b: pulumi.Input[int]): + pulumi.set(__self__, "size_in_gi_b", size_in_gi_b) @property - @pulumi.getter(name="accessPointId") - def access_point_id(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "access_point_id") + @pulumi.getter(name="sizeInGiB") + def size_in_gi_b(self) -> pulumi.Input[int]: + return pulumi.get(self, "size_in_gi_b") - @access_point_id.setter - def access_point_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "access_point_id", value) + @size_in_gi_b.setter + def size_in_gi_b(self, value: pulumi.Input[int]): + pulumi.set(self, "size_in_gi_b", value) + + +@pulumi.input_type +class JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs: + def __init__(__self__, *, + platform_version: Optional[pulumi.Input[str]] = None): + 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]]: + return pulumi.get(self, "platform_version") + + @platform_version.setter + def platform_version(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "platform_version", value) + + +@pulumi.input_type +class JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs: + 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): + 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 iam(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "iam") + def devices(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionDeviceArgs']]]]: + return pulumi.get(self, "devices") - @iam.setter - def iam(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "iam", value) + @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]]: + 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]]: + 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]]: + 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]]: + 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']]]]: + return pulumi.get(self, "tmpfs") + + @tmpfs.setter + def tmpfs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]]]): + pulumi.set(self, "tmpfs", value) + + +@pulumi.input_type +class JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs: + def __init__(__self__, *, + log_driver: pulumi.Input[str], + options: Optional[Any] = None, + secret_options: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]] = None): + 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]: + 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[Any]: + return pulumi.get(self, "options") + + @options.setter + def options(self, value: Optional[Any]): + pulumi.set(self, "options", value) + + @property + @pulumi.getter(name="secretOptions") + def secret_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]: + 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) + + +@pulumi.input_type +class JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs: + def __init__(__self__, *, + assign_public_ip: Optional[pulumi.Input[str]] = None): + if assign_public_ip is not None: + pulumi.set(__self__, "assign_public_ip", assign_public_ip) + + @property + @pulumi.getter(name="assignPublicIp") + def assign_public_ip(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "assign_public_ip") + + @assign_public_ip.setter + def assign_public_ip(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "assign_public_ip", value) + + +@pulumi.input_type +class JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs: + def __init__(__self__, *, + cpu_architecture: Optional[pulumi.Input[str]] = None, + operating_system_family: Optional[pulumi.Input[str]] = None): + if cpu_architecture is not None: + pulumi.set(__self__, "cpu_architecture", cpu_architecture) + if operating_system_family is not None: + pulumi.set(__self__, "operating_system_family", operating_system_family) + + @property + @pulumi.getter(name="cpuArchitecture") + def cpu_architecture(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "cpu_architecture") + + @cpu_architecture.setter + def cpu_architecture(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "cpu_architecture", value) + + @property + @pulumi.getter(name="operatingSystemFamily") + def operating_system_family(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "operating_system_family") + + @operating_system_family.setter + def operating_system_family(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "operating_system_family", value) @pulumi.input_type @@ -452,25 +619,25 @@ 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, + ephemeral_storage: Optional[pulumi.Input['JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs']] = None, execution_role_arn: Optional[pulumi.Input[str]] = None, - fargate_platform_configuration: Optional[pulumi.Input['JobDefinitionFargatePlatformConfigurationArgs']] = None, + fargate_platform_configuration: Optional[pulumi.Input['JobDefinitionContainerPropertiesFargatePlatformConfigurationPropertiesArgs']] = 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, + linux_parameters: Optional[pulumi.Input['JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs']] = None, + log_configuration: Optional[pulumi.Input['JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs']] = None, memory: Optional[pulumi.Input[int]] = None, - mount_points: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointsArgs']]]] = None, - network_configuration: Optional[pulumi.Input['JobDefinitionNetworkConfigurationArgs']] = None, + mount_points: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionMountPointArgs']]]] = None, + network_configuration: Optional[pulumi.Input['JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs']] = None, privileged: Optional[pulumi.Input[bool]] = None, readonly_root_filesystem: Optional[pulumi.Input[bool]] = None, resource_requirements: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionResourceRequirementArgs']]]] = None, - runtime_platform: Optional[pulumi.Input['JobDefinitionRuntimePlatformArgs']] = None, + runtime_platform: Optional[pulumi.Input['JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs']] = 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['JobDefinitionVolumesArgs']]]] = 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) @@ -544,11 +711,11 @@ def environment(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDef @property @pulumi.getter(name="ephemeralStorage") - def ephemeral_storage(self) -> Optional[pulumi.Input['JobDefinitionEphemeralStorageArgs']]: + def ephemeral_storage(self) -> Optional[pulumi.Input['JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs']]: return pulumi.get(self, "ephemeral_storage") @ephemeral_storage.setter - def ephemeral_storage(self, value: Optional[pulumi.Input['JobDefinitionEphemeralStorageArgs']]): + def ephemeral_storage(self, value: Optional[pulumi.Input['JobDefinitionContainerPropertiesEphemeralStoragePropertiesArgs']]): pulumi.set(self, "ephemeral_storage", value) @property @@ -562,11 +729,11 @@ 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']]: 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 @@ -589,20 +756,20 @@ def job_role_arn(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="linuxParameters") - def linux_parameters(self) -> Optional[pulumi.Input['JobDefinitionLinuxParametersArgs']]: + def linux_parameters(self) -> Optional[pulumi.Input['JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs']]: return pulumi.get(self, "linux_parameters") @linux_parameters.setter - def linux_parameters(self, value: Optional[pulumi.Input['JobDefinitionLinuxParametersArgs']]): + def linux_parameters(self, value: Optional[pulumi.Input['JobDefinitionContainerPropertiesLinuxParametersPropertiesArgs']]): pulumi.set(self, "linux_parameters", value) @property @pulumi.getter(name="logConfiguration") - def log_configuration(self) -> Optional[pulumi.Input['JobDefinitionLogConfigurationArgs']]: + def log_configuration(self) -> Optional[pulumi.Input['JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs']]: return pulumi.get(self, "log_configuration") @log_configuration.setter - def log_configuration(self, value: Optional[pulumi.Input['JobDefinitionLogConfigurationArgs']]): + def log_configuration(self, value: Optional[pulumi.Input['JobDefinitionContainerPropertiesLogConfigurationPropertiesArgs']]): pulumi.set(self, "log_configuration", value) @property @@ -616,20 +783,20 @@ 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']]]]: 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 @pulumi.getter(name="networkConfiguration") - def network_configuration(self) -> Optional[pulumi.Input['JobDefinitionNetworkConfigurationArgs']]: + def network_configuration(self) -> Optional[pulumi.Input['JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs']]: return pulumi.get(self, "network_configuration") @network_configuration.setter - def network_configuration(self, value: Optional[pulumi.Input['JobDefinitionNetworkConfigurationArgs']]): + def network_configuration(self, value: Optional[pulumi.Input['JobDefinitionContainerPropertiesNetworkConfigurationPropertiesArgs']]): pulumi.set(self, "network_configuration", value) @property @@ -661,11 +828,11 @@ def resource_requirements(self, value: Optional[pulumi.Input[Sequence[pulumi.Inp @property @pulumi.getter(name="runtimePlatform") - def runtime_platform(self) -> Optional[pulumi.Input['JobDefinitionRuntimePlatformArgs']]: + def runtime_platform(self) -> Optional[pulumi.Input['JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs']]: return pulumi.get(self, "runtime_platform") @runtime_platform.setter - def runtime_platform(self, value: Optional[pulumi.Input['JobDefinitionRuntimePlatformArgs']]): + def runtime_platform(self, value: Optional[pulumi.Input['JobDefinitionContainerPropertiesRuntimePlatformPropertiesArgs']]): pulumi.set(self, "runtime_platform", value) @property @@ -706,11 +873,11 @@ 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']]]]: 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) @@ -755,11 +922,40 @@ def permissions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] pulumi.set(self, "permissions", value) +@pulumi.input_type +class JobDefinitionEfsAuthorizationConfigArgs: + def __init__(__self__, *, + access_point_id: Optional[pulumi.Input[str]] = None, + iam: Optional[pulumi.Input[str]] = None): + 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]]: + 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]]: + return pulumi.get(self, "iam") + + @iam.setter + def iam(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "iam", value) + + @pulumi.input_type 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): @@ -784,11 +980,11 @@ 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']]: 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 @@ -1141,40 +1337,134 @@ def path(self, value: Optional[pulumi.Input[str]]): @pulumi.input_type -class JobDefinitionEksPropertiesArgs: +class JobDefinitionEksMetadataArgs: def __init__(__self__, *, - pod_properties: Optional[pulumi.Input['JobDefinitionPodPropertiesArgs']] = None): - if pod_properties is not None: - pulumi.set(__self__, "pod_properties", pod_properties) + labels: Optional[Any] = None): + if labels is not None: + pulumi.set(__self__, "labels", labels) @property - @pulumi.getter(name="podProperties") - def pod_properties(self) -> Optional[pulumi.Input['JobDefinitionPodPropertiesArgs']]: - return pulumi.get(self, "pod_properties") + @pulumi.getter + def labels(self) -> Optional[Any]: + 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[Any]): + pulumi.set(self, "labels", value) @pulumi.input_type -class JobDefinitionEksSecretArgs: +class JobDefinitionEksPodPropertiesArgs: def __init__(__self__, *, - secret_name: pulumi.Input[str], - optional: Optional[pulumi.Input[bool]] = None): - 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]: - return pulumi.get(self, "secret_name") - - @secret_name.setter - def secret_name(self, value: pulumi.Input[str]): - pulumi.set(self, "secret_name", value) - + containers: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]] = None, + dns_policy: Optional[pulumi.Input[str]] = None, + host_network: Optional[pulumi.Input[bool]] = None, + metadata: Optional[pulumi.Input['JobDefinitionEksMetadataArgs']] = None, + service_account_name: Optional[pulumi.Input[str]] = None, + volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]] = None): + 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 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 volumes is not None: + pulumi.set(__self__, "volumes", volumes) + + @property + @pulumi.getter + def containers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]: + return pulumi.get(self, "containers") + + @containers.setter + def containers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]): + pulumi.set(self, "containers", value) + + @property + @pulumi.getter(name="dnsPolicy") + def dns_policy(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "dns_policy") + + @dns_policy.setter + def dns_policy(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "dns_policy", value) + + @property + @pulumi.getter(name="hostNetwork") + def host_network(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "host_network") + + @host_network.setter + def host_network(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "host_network", value) + + @property + @pulumi.getter + def metadata(self) -> Optional[pulumi.Input['JobDefinitionEksMetadataArgs']]: + return pulumi.get(self, "metadata") + + @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]]: + 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 volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]]: + return pulumi.get(self, "volumes") + + @volumes.setter + def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]]): + pulumi.set(self, "volumes", value) + + +@pulumi.input_type +class JobDefinitionEksPropertiesArgs: + def __init__(__self__, *, + pod_properties: Optional[pulumi.Input['JobDefinitionEksPodPropertiesArgs']] = None): + if pod_properties is not None: + pulumi.set(__self__, "pod_properties", pod_properties) + + @property + @pulumi.getter(name="podProperties") + def pod_properties(self) -> Optional[pulumi.Input['JobDefinitionEksPodPropertiesArgs']]: + return pulumi.get(self, "pod_properties") + + @pod_properties.setter + def pod_properties(self, value: Optional[pulumi.Input['JobDefinitionEksPodPropertiesArgs']]): + pulumi.set(self, "pod_properties", value) + + +@pulumi.input_type +class JobDefinitionEksSecretArgs: + def __init__(__self__, *, + secret_name: pulumi.Input[str], + optional: Optional[pulumi.Input[bool]] = None): + 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]: + return pulumi.get(self, "secret_name") + + @secret_name.setter + def secret_name(self, value: pulumi.Input[str]): + pulumi.set(self, "secret_name", value) + @property @pulumi.getter def optional(self) -> Optional[pulumi.Input[bool]]: @@ -1266,22 +1556,6 @@ def value(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "value", value) -@pulumi.input_type -class JobDefinitionEphemeralStorageArgs: - def __init__(__self__, *, - size_in_gi_b: pulumi.Input[int]): - pulumi.set(__self__, "size_in_gi_b", size_in_gi_b) - - @property - @pulumi.getter(name="sizeInGiB") - def size_in_gi_b(self) -> pulumi.Input[int]: - return pulumi.get(self, "size_in_gi_b") - - @size_in_gi_b.setter - def size_in_gi_b(self, value: pulumi.Input[int]): - pulumi.set(self, "size_in_gi_b", value) - - @pulumi.input_type class JobDefinitionEvaluateOnExitArgs: def __init__(__self__, *, @@ -1335,158 +1609,41 @@ def on_status_reason(self, value: Optional[pulumi.Input[str]]): @pulumi.input_type -class JobDefinitionFargatePlatformConfigurationArgs: - def __init__(__self__, *, - platform_version: Optional[pulumi.Input[str]] = None): - 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]]: - return pulumi.get(self, "platform_version") - - @platform_version.setter - def platform_version(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "platform_version", value) - - -@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): - 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']]]]: - 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]]: - 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]]: - 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]]: - 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]]: - 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']]]]: - return pulumi.get(self, "tmpfs") - - @tmpfs.setter - def tmpfs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionTmpfsArgs']]]]): - pulumi.set(self, "tmpfs", value) - - -@pulumi.input_type -class JobDefinitionLogConfigurationArgs: +class JobDefinitionHostArgs: def __init__(__self__, *, - log_driver: pulumi.Input[str], - options: Optional[Any] = None, - secret_options: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]] = None): - 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]: - 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[Any]: - return pulumi.get(self, "options") - - @options.setter - def options(self, value: Optional[Any]): - pulumi.set(self, "options", value) + source_path: Optional[pulumi.Input[str]] = None): + if source_path is not None: + pulumi.set(__self__, "source_path", source_path) @property - @pulumi.getter(name="secretOptions") - def secret_options(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]: - return pulumi.get(self, "secret_options") + @pulumi.getter(name="sourcePath") + def source_path(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "source_path") - @secret_options.setter - def secret_options(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionSecretArgs']]]]): - pulumi.set(self, "secret_options", value) + @source_path.setter + def source_path(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "source_path", value) @pulumi.input_type -class JobDefinitionMetadataArgs: +class JobDefinitionJobTimeoutArgs: def __init__(__self__, *, - labels: Optional[Any] = None): - if labels is not None: - pulumi.set(__self__, "labels", labels) + attempt_duration_seconds: Optional[pulumi.Input[int]] = None): + if attempt_duration_seconds is not None: + pulumi.set(__self__, "attempt_duration_seconds", attempt_duration_seconds) @property - @pulumi.getter - def labels(self) -> Optional[Any]: - return pulumi.get(self, "labels") + @pulumi.getter(name="attemptDurationSeconds") + def attempt_duration_seconds(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "attempt_duration_seconds") - @labels.setter - def labels(self, value: Optional[Any]): - pulumi.set(self, "labels", value) + @attempt_duration_seconds.setter + def attempt_duration_seconds(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "attempt_duration_seconds", value) @pulumi.input_type -class JobDefinitionMountPointsArgs: +class JobDefinitionMountPointArgs: def __init__(__self__, *, container_path: Optional[pulumi.Input[str]] = None, read_only: Optional[pulumi.Input[bool]] = None, @@ -1526,23 +1683,6 @@ def source_volume(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "source_volume", value) -@pulumi.input_type -class JobDefinitionNetworkConfigurationArgs: - def __init__(__self__, *, - assign_public_ip: Optional[pulumi.Input[str]] = None): - if assign_public_ip is not None: - pulumi.set(__self__, "assign_public_ip", assign_public_ip) - - @property - @pulumi.getter(name="assignPublicIp") - def assign_public_ip(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "assign_public_ip") - - @assign_public_ip.setter - def assign_public_ip(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "assign_public_ip", value) - - @pulumi.input_type class JobDefinitionNodePropertiesArgs: def __init__(__self__, *, @@ -1609,83 +1749,6 @@ def container(self, value: Optional[pulumi.Input['JobDefinitionContainerProperti pulumi.set(self, "container", value) -@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, - metadata: Optional[pulumi.Input['JobDefinitionMetadataArgs']] = None, - service_account_name: Optional[pulumi.Input[str]] = None, - volumes: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]] = None): - 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 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 volumes is not None: - pulumi.set(__self__, "volumes", volumes) - - @property - @pulumi.getter - def containers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]: - return pulumi.get(self, "containers") - - @containers.setter - def containers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksContainerArgs']]]]): - pulumi.set(self, "containers", value) - - @property - @pulumi.getter(name="dnsPolicy") - def dns_policy(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "dns_policy") - - @dns_policy.setter - def dns_policy(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "dns_policy", value) - - @property - @pulumi.getter(name="hostNetwork") - def host_network(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "host_network") - - @host_network.setter - def host_network(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "host_network", value) - - @property - @pulumi.getter - def metadata(self) -> Optional[pulumi.Input['JobDefinitionMetadataArgs']]: - return pulumi.get(self, "metadata") - - @metadata.setter - def metadata(self, value: Optional[pulumi.Input['JobDefinitionMetadataArgs']]): - pulumi.set(self, "metadata", value) - - @property - @pulumi.getter(name="serviceAccountName") - def service_account_name(self) -> Optional[pulumi.Input[str]]: - 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 volumes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]]: - return pulumi.get(self, "volumes") - - @volumes.setter - def volumes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['JobDefinitionEksVolumeArgs']]]]): - pulumi.set(self, "volumes", value) - - @pulumi.input_type class JobDefinitionResourceRequirementArgs: def __init__(__self__, *, @@ -1744,35 +1807,6 @@ def evaluate_on_exit(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['J pulumi.set(self, "evaluate_on_exit", value) -@pulumi.input_type -class JobDefinitionRuntimePlatformArgs: - def __init__(__self__, *, - cpu_architecture: Optional[pulumi.Input[str]] = None, - operating_system_family: Optional[pulumi.Input[str]] = None): - if cpu_architecture is not None: - pulumi.set(__self__, "cpu_architecture", cpu_architecture) - if operating_system_family is not None: - pulumi.set(__self__, "operating_system_family", operating_system_family) - - @property - @pulumi.getter(name="cpuArchitecture") - def cpu_architecture(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "cpu_architecture") - - @cpu_architecture.setter - def cpu_architecture(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "cpu_architecture", value) - - @property - @pulumi.getter(name="operatingSystemFamily") - def operating_system_family(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "operating_system_family") - - @operating_system_family.setter - def operating_system_family(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "operating_system_family", value) - - @pulumi.input_type class JobDefinitionSecretArgs: def __init__(__self__, *, @@ -1800,23 +1834,6 @@ def value_from(self, value: pulumi.Input[str]): pulumi.set(self, "value_from", value) -@pulumi.input_type -class JobDefinitionTimeoutArgs: - def __init__(__self__, *, - attempt_duration_seconds: Optional[pulumi.Input[int]] = None): - 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]]: - 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) - - @pulumi.input_type class JobDefinitionTmpfsArgs: def __init__(__self__, *, @@ -1895,27 +1912,10 @@ def soft_limit(self, value: pulumi.Input[int]): @pulumi.input_type -class JobDefinitionVolumesHostArgs: - def __init__(__self__, *, - source_path: Optional[pulumi.Input[str]] = None): - 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]]: - return pulumi.get(self, "source_path") - - @source_path.setter - def source_path(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "source_path", value) - - -@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): if efs_volume_configuration is not None: pulumi.set(__self__, "efs_volume_configuration", efs_volume_configuration) @@ -1935,11 +1935,11 @@ 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']]: 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 bf5a44c6a7..b4ad27af60 100644 --- a/sdk/python/pulumi_aws_native/batch/get_job_definition.py +++ b/sdk/python/pulumi_aws_native/batch/get_job_definition.py @@ -8,7 +8,6 @@ import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities -from . import outputs __all__ = [ 'GetJobDefinitionResult', @@ -19,95 +18,50 @@ @pulumi.output_type class GetJobDefinitionResult: - def __init__(__self__, container_properties=None, eks_properties=None, id=None, node_properties=None, parameters=None, platform_capabilities=None, propagate_tags=None, retry_strategy=None, scheduling_priority=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) - 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) - if parameters and not isinstance(parameters, dict): - raise TypeError("Expected argument 'parameters' to be a dict") - pulumi.set(__self__, "parameters", parameters) - if platform_capabilities and not isinstance(platform_capabilities, list): - raise TypeError("Expected argument 'platform_capabilities' to be a list") - pulumi.set(__self__, "platform_capabilities", platform_capabilities) - if propagate_tags and not isinstance(propagate_tags, bool): - raise TypeError("Expected argument 'propagate_tags' to be a bool") - pulumi.set(__self__, "propagate_tags", propagate_tags) - if retry_strategy and not isinstance(retry_strategy, dict): - raise TypeError("Expected argument 'retry_strategy' to be a dict") - pulumi.set(__self__, "retry_strategy", retry_strategy) - if scheduling_priority and not isinstance(scheduling_priority, int): - raise TypeError("Expected argument 'scheduling_priority' to be a int") - pulumi.set(__self__, "scheduling_priority", scheduling_priority) - if timeout and not isinstance(timeout, dict): - raise TypeError("Expected argument 'timeout' to be a dict") - pulumi.set(__self__, "timeout", timeout) - if type and not isinstance(type, str): - raise TypeError("Expected argument 'type' to be a str") - pulumi.set(__self__, "type", type) + def __init__(__self__, container_orchestration_type=None, job_definition_arn=None, revision=None, status=None, tags=None): + if container_orchestration_type and not isinstance(container_orchestration_type, str): + raise TypeError("Expected argument 'container_orchestration_type' to be a str") + pulumi.set(__self__, "container_orchestration_type", container_orchestration_type) + if job_definition_arn and not isinstance(job_definition_arn, str): + raise TypeError("Expected argument 'job_definition_arn' to be a str") + pulumi.set(__self__, "job_definition_arn", job_definition_arn) + if revision and not isinstance(revision, int): + raise TypeError("Expected argument 'revision' to be a int") + pulumi.set(__self__, "revision", revision) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + if tags and not isinstance(tags, dict): + raise TypeError("Expected argument 'tags' to be a dict") + pulumi.set(__self__, "tags", tags) @property - @pulumi.getter(name="containerProperties") - def container_properties(self) -> Optional['outputs.JobDefinitionContainerProperties']: - return pulumi.get(self, "container_properties") + @pulumi.getter(name="containerOrchestrationType") + def container_orchestration_type(self) -> Optional[str]: + return pulumi.get(self, "container_orchestration_type") @property - @pulumi.getter(name="eksProperties") - def eks_properties(self) -> Optional['outputs.JobDefinitionEksProperties']: - return pulumi.get(self, "eks_properties") + @pulumi.getter(name="jobDefinitionArn") + def job_definition_arn(self) -> Optional[str]: + return pulumi.get(self, "job_definition_arn") @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']: - return pulumi.get(self, "node_properties") - - @property - @pulumi.getter - def parameters(self) -> Optional[Any]: - return pulumi.get(self, "parameters") - - @property - @pulumi.getter(name="platformCapabilities") - def platform_capabilities(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "platform_capabilities") - - @property - @pulumi.getter(name="propagateTags") - def propagate_tags(self) -> Optional[bool]: - return pulumi.get(self, "propagate_tags") - - @property - @pulumi.getter(name="retryStrategy") - def retry_strategy(self) -> Optional['outputs.JobDefinitionRetryStrategy']: - return pulumi.get(self, "retry_strategy") - - @property - @pulumi.getter(name="schedulingPriority") - def scheduling_priority(self) -> Optional[int]: - return pulumi.get(self, "scheduling_priority") + def revision(self) -> Optional[int]: + return pulumi.get(self, "revision") @property @pulumi.getter - def timeout(self) -> Optional['outputs.JobDefinitionTimeout']: - return pulumi.get(self, "timeout") + def status(self) -> Optional[str]: + return pulumi.get(self, "status") @property @pulumi.getter - def type(self) -> Optional[str]: - return pulumi.get(self, "type") + def tags(self) -> Optional[Any]: + """ + A key-value pair to associate with a resource. + """ + return pulumi.get(self, "tags") class AwaitableGetJobDefinitionResult(GetJobDefinitionResult): @@ -116,45 +70,33 @@ def __await__(self): if False: yield self return GetJobDefinitionResult( - container_properties=self.container_properties, - eks_properties=self.eks_properties, - id=self.id, - node_properties=self.node_properties, - parameters=self.parameters, - platform_capabilities=self.platform_capabilities, - propagate_tags=self.propagate_tags, - retry_strategy=self.retry_strategy, - scheduling_priority=self.scheduling_priority, - timeout=self.timeout, - type=self.type) + container_orchestration_type=self.container_orchestration_type, + job_definition_arn=self.job_definition_arn, + revision=self.revision, + status=self.status, + tags=self.tags) -def get_job_definition(id: Optional[str] = None, +def get_job_definition(job_definition_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetJobDefinitionResult: """ Resource Type definition for AWS::Batch::JobDefinition """ __args__ = dict() - __args__['id'] = id + __args__['jobDefinitionArn'] = job_definition_arn opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:batch:getJobDefinition', __args__, opts=opts, typ=GetJobDefinitionResult).value return AwaitableGetJobDefinitionResult( - container_properties=pulumi.get(__ret__, 'container_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'), - propagate_tags=pulumi.get(__ret__, 'propagate_tags'), - retry_strategy=pulumi.get(__ret__, 'retry_strategy'), - scheduling_priority=pulumi.get(__ret__, 'scheduling_priority'), - timeout=pulumi.get(__ret__, 'timeout'), - type=pulumi.get(__ret__, 'type')) + container_orchestration_type=pulumi.get(__ret__, 'container_orchestration_type'), + job_definition_arn=pulumi.get(__ret__, 'job_definition_arn'), + revision=pulumi.get(__ret__, 'revision'), + status=pulumi.get(__ret__, 'status'), + tags=pulumi.get(__ret__, 'tags')) @_utilities.lift_output_func(get_job_definition) -def get_job_definition_output(id: Optional[pulumi.Input[str]] = None, +def get_job_definition_output(job_definition_arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetJobDefinitionResult]: """ Resource Type definition for AWS::Batch::JobDefinition diff --git a/sdk/python/pulumi_aws_native/batch/job_definition.py b/sdk/python/pulumi_aws_native/batch/job_definition.py index d667443aab..de6cca8195 100644 --- a/sdk/python/pulumi_aws_native/batch/job_definition.py +++ b/sdk/python/pulumi_aws_native/batch/job_definition.py @@ -27,9 +27,10 @@ def __init__(__self__, *, retry_strategy: Optional[pulumi.Input['JobDefinitionRetryStrategyArgs']] = None, scheduling_priority: Optional[pulumi.Input[int]] = None, tags: Optional[Any] = None, - timeout: Optional[pulumi.Input['JobDefinitionTimeoutArgs']] = None): + timeout: Optional[pulumi.Input['JobDefinitionJobTimeoutArgs']] = None): """ The set of arguments for constructing a JobDefinition resource. + :param Any tags: A key-value pair to associate with a resource. """ pulumi.set(__self__, "type", type) if container_properties is not None: @@ -148,6 +149,9 @@ def scheduling_priority(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter def tags(self) -> Optional[Any]: + """ + A key-value pair to associate with a resource. + """ return pulumi.get(self, "tags") @tags.setter @@ -156,20 +160,15 @@ def tags(self, value: Optional[Any]): @property @pulumi.getter - def timeout(self) -> Optional[pulumi.Input['JobDefinitionTimeoutArgs']]: + def timeout(self) -> Optional[pulumi.Input['JobDefinitionJobTimeoutArgs']]: 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) -warnings.warn("""JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class JobDefinition(pulumi.CustomResource): - warnings.warn("""JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -184,7 +183,7 @@ def __init__(__self__, retry_strategy: Optional[pulumi.Input[pulumi.InputType['JobDefinitionRetryStrategyArgs']]] = None, scheduling_priority: Optional[pulumi.Input[int]] = None, tags: Optional[Any] = None, - timeout: Optional[pulumi.Input[pulumi.InputType['JobDefinitionTimeoutArgs']]] = None, + timeout: Optional[pulumi.Input[pulumi.InputType['JobDefinitionJobTimeoutArgs']]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -192,6 +191,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param Any tags: A key-value pair to associate with a resource. """ ... @overload @@ -227,10 +227,9 @@ def _internal_init(__self__, retry_strategy: Optional[pulumi.Input[pulumi.InputType['JobDefinitionRetryStrategyArgs']]] = None, scheduling_priority: Optional[pulumi.Input[int]] = None, tags: Optional[Any] = None, - timeout: Optional[pulumi.Input[pulumi.InputType['JobDefinitionTimeoutArgs']]] = None, + timeout: Optional[pulumi.Input[pulumi.InputType['JobDefinitionJobTimeoutArgs']]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): - pulumi.log.warn("""JobDefinition is deprecated: JobDefinition is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") 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') @@ -253,7 +252,11 @@ def _internal_init(__self__, if type is None and not opts.urn: raise TypeError("Missing required property 'type'") __props__.__dict__["type"] = type - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["job_definition_name", "tags"]) + __props__.__dict__["container_orchestration_type"] = None + __props__.__dict__["job_definition_arn"] = None + __props__.__dict__["revision"] = None + __props__.__dict__["status"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["container_properties", "eks_properties", "job_definition_name", "node_properties", "parameters", "platform_capabilities[*]", "propagate_tags", "retry_strategy", "scheduling_priority", "timeout", "type"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(JobDefinition, __self__).__init__( 'aws-native:batch:JobDefinition', @@ -277,20 +280,29 @@ def get(resource_name: str, __props__ = JobDefinitionArgs.__new__(JobDefinitionArgs) + __props__.__dict__["container_orchestration_type"] = None __props__.__dict__["container_properties"] = None __props__.__dict__["eks_properties"] = None + __props__.__dict__["job_definition_arn"] = None __props__.__dict__["job_definition_name"] = None __props__.__dict__["node_properties"] = None __props__.__dict__["parameters"] = None __props__.__dict__["platform_capabilities"] = None __props__.__dict__["propagate_tags"] = None __props__.__dict__["retry_strategy"] = None + __props__.__dict__["revision"] = None __props__.__dict__["scheduling_priority"] = None + __props__.__dict__["status"] = None __props__.__dict__["tags"] = None __props__.__dict__["timeout"] = None __props__.__dict__["type"] = None return JobDefinition(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="containerOrchestrationType") + def container_orchestration_type(self) -> pulumi.Output[str]: + return pulumi.get(self, "container_orchestration_type") + @property @pulumi.getter(name="containerProperties") def container_properties(self) -> pulumi.Output[Optional['outputs.JobDefinitionContainerProperties']]: @@ -301,6 +313,11 @@ def container_properties(self) -> pulumi.Output[Optional['outputs.JobDefinitionC def eks_properties(self) -> pulumi.Output[Optional['outputs.JobDefinitionEksProperties']]: return pulumi.get(self, "eks_properties") + @property + @pulumi.getter(name="jobDefinitionArn") + def job_definition_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "job_definition_arn") + @property @pulumi.getter(name="jobDefinitionName") def job_definition_name(self) -> pulumi.Output[Optional[str]]: @@ -331,19 +348,32 @@ def propagate_tags(self) -> pulumi.Output[Optional[bool]]: def retry_strategy(self) -> pulumi.Output[Optional['outputs.JobDefinitionRetryStrategy']]: return pulumi.get(self, "retry_strategy") + @property + @pulumi.getter + def revision(self) -> pulumi.Output[int]: + return pulumi.get(self, "revision") + @property @pulumi.getter(name="schedulingPriority") def scheduling_priority(self) -> pulumi.Output[Optional[int]]: return pulumi.get(self, "scheduling_priority") + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + return pulumi.get(self, "status") + @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Any]]: + """ + 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']]: return pulumi.get(self, "timeout") @property diff --git a/sdk/python/pulumi_aws_native/batch/outputs.py b/sdk/python/pulumi_aws_native/batch/outputs.py index a06766f54c..ca49164e27 100644 --- a/sdk/python/pulumi_aws_native/batch/outputs.py +++ b/sdk/python/pulumi_aws_native/batch/outputs.py @@ -17,9 +17,15 @@ 'ComputeEnvironmentEksConfiguration', 'ComputeEnvironmentLaunchTemplateSpecification', 'ComputeEnvironmentUpdatePolicy', - 'JobDefinitionAuthorizationConfig', 'JobDefinitionContainerProperties', + 'JobDefinitionContainerPropertiesEphemeralStorageProperties', + 'JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties', + 'JobDefinitionContainerPropertiesLinuxParametersProperties', + 'JobDefinitionContainerPropertiesLogConfigurationProperties', + 'JobDefinitionContainerPropertiesNetworkConfigurationProperties', + 'JobDefinitionContainerPropertiesRuntimePlatformProperties', 'JobDefinitionDevice', + 'JobDefinitionEfsAuthorizationConfig', 'JobDefinitionEfsVolumeConfiguration', 'JobDefinitionEksContainer', 'JobDefinitionEksContainerEnvironmentVariable', @@ -28,30 +34,24 @@ 'JobDefinitionEksContainerVolumeMount', 'JobDefinitionEksEmptyDir', 'JobDefinitionEksHostPath', + 'JobDefinitionEksMetadata', + 'JobDefinitionEksPodProperties', 'JobDefinitionEksProperties', 'JobDefinitionEksSecret', 'JobDefinitionEksVolume', 'JobDefinitionEnvironment', - 'JobDefinitionEphemeralStorage', 'JobDefinitionEvaluateOnExit', - 'JobDefinitionFargatePlatformConfiguration', - 'JobDefinitionLinuxParameters', - 'JobDefinitionLogConfiguration', - 'JobDefinitionMetadata', - 'JobDefinitionMountPoints', - 'JobDefinitionNetworkConfiguration', + 'JobDefinitionHost', + 'JobDefinitionJobTimeout', + 'JobDefinitionMountPoint', 'JobDefinitionNodeProperties', 'JobDefinitionNodeRangeProperty', - 'JobDefinitionPodProperties', 'JobDefinitionResourceRequirement', 'JobDefinitionRetryStrategy', - 'JobDefinitionRuntimePlatform', 'JobDefinitionSecret', - 'JobDefinitionTimeout', 'JobDefinitionTmpfs', 'JobDefinitionUlimit', - 'JobDefinitionVolumes', - 'JobDefinitionVolumesHost', + 'JobDefinitionVolume', 'JobQueueComputeEnvironmentOrder', 'SchedulingPolicyFairsharePolicy', 'SchedulingPolicyShareAttributes', @@ -429,44 +429,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): - 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]: - return pulumi.get(self, "access_point_id") - - @property - @pulumi.getter - def iam(self) -> Optional[str]: - return pulumi.get(self, "iam") - - @pulumi.output_type class JobDefinitionContainerProperties(dict): @staticmethod @@ -512,25 +474,25 @@ def __init__(__self__, *, image: str, command: Optional[Sequence[str]] = None, environment: Optional[Sequence['outputs.JobDefinitionEnvironment']] = None, - ephemeral_storage: Optional['outputs.JobDefinitionEphemeralStorage'] = None, + ephemeral_storage: Optional['outputs.JobDefinitionContainerPropertiesEphemeralStorageProperties'] = None, execution_role_arn: Optional[str] = None, - fargate_platform_configuration: Optional['outputs.JobDefinitionFargatePlatformConfiguration'] = None, + fargate_platform_configuration: Optional['outputs.JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties'] = None, instance_type: Optional[str] = None, job_role_arn: Optional[str] = None, - linux_parameters: Optional['outputs.JobDefinitionLinuxParameters'] = None, - log_configuration: Optional['outputs.JobDefinitionLogConfiguration'] = None, + linux_parameters: Optional['outputs.JobDefinitionContainerPropertiesLinuxParametersProperties'] = None, + log_configuration: Optional['outputs.JobDefinitionContainerPropertiesLogConfigurationProperties'] = None, memory: Optional[int] = None, - mount_points: Optional[Sequence['outputs.JobDefinitionMountPoints']] = None, - network_configuration: Optional['outputs.JobDefinitionNetworkConfiguration'] = None, + mount_points: Optional[Sequence['outputs.JobDefinitionMountPoint']] = None, + network_configuration: Optional['outputs.JobDefinitionContainerPropertiesNetworkConfigurationProperties'] = None, privileged: Optional[bool] = None, readonly_root_filesystem: Optional[bool] = None, resource_requirements: Optional[Sequence['outputs.JobDefinitionResourceRequirement']] = None, - runtime_platform: Optional['outputs.JobDefinitionRuntimePlatform'] = None, + runtime_platform: Optional['outputs.JobDefinitionContainerPropertiesRuntimePlatformProperties'] = 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.JobDefinitionVolumes']] = None): + volumes: Optional[Sequence['outputs.JobDefinitionVolume']] = None): pulumi.set(__self__, "image", image) if command is not None: pulumi.set(__self__, "command", command) @@ -592,7 +554,7 @@ def environment(self) -> Optional[Sequence['outputs.JobDefinitionEnvironment']]: @property @pulumi.getter(name="ephemeralStorage") - def ephemeral_storage(self) -> Optional['outputs.JobDefinitionEphemeralStorage']: + def ephemeral_storage(self) -> Optional['outputs.JobDefinitionContainerPropertiesEphemeralStorageProperties']: return pulumi.get(self, "ephemeral_storage") @property @@ -602,7 +564,7 @@ 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']: return pulumi.get(self, "fargate_platform_configuration") @property @@ -617,12 +579,12 @@ def job_role_arn(self) -> Optional[str]: @property @pulumi.getter(name="linuxParameters") - def linux_parameters(self) -> Optional['outputs.JobDefinitionLinuxParameters']: + def linux_parameters(self) -> Optional['outputs.JobDefinitionContainerPropertiesLinuxParametersProperties']: return pulumi.get(self, "linux_parameters") @property @pulumi.getter(name="logConfiguration") - def log_configuration(self) -> Optional['outputs.JobDefinitionLogConfiguration']: + def log_configuration(self) -> Optional['outputs.JobDefinitionContainerPropertiesLogConfigurationProperties']: return pulumi.get(self, "log_configuration") @property @@ -632,12 +594,12 @@ 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']]: return pulumi.get(self, "mount_points") @property @pulumi.getter(name="networkConfiguration") - def network_configuration(self) -> Optional['outputs.JobDefinitionNetworkConfiguration']: + def network_configuration(self) -> Optional['outputs.JobDefinitionContainerPropertiesNetworkConfigurationProperties']: return pulumi.get(self, "network_configuration") @property @@ -657,7 +619,7 @@ def resource_requirements(self) -> Optional[Sequence['outputs.JobDefinitionResou @property @pulumi.getter(name="runtimePlatform") - def runtime_platform(self) -> Optional['outputs.JobDefinitionRuntimePlatform']: + def runtime_platform(self) -> Optional['outputs.JobDefinitionContainerPropertiesRuntimePlatformProperties']: return pulumi.get(self, "runtime_platform") @property @@ -682,10 +644,260 @@ def vcpus(self) -> Optional[int]: @property @pulumi.getter - def volumes(self) -> Optional[Sequence['outputs.JobDefinitionVolumes']]: + def volumes(self) -> Optional[Sequence['outputs.JobDefinitionVolume']]: return pulumi.get(self, "volumes") +@pulumi.output_type +class JobDefinitionContainerPropertiesEphemeralStorageProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "sizeInGiB": + suggest = "size_in_gi_b" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionContainerPropertiesEphemeralStorageProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionContainerPropertiesEphemeralStorageProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionContainerPropertiesEphemeralStorageProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + size_in_gi_b: int): + pulumi.set(__self__, "size_in_gi_b", size_in_gi_b) + + @property + @pulumi.getter(name="sizeInGiB") + def size_in_gi_b(self) -> int: + return pulumi.get(self, "size_in_gi_b") + + +@pulumi.output_type +class JobDefinitionContainerPropertiesFargatePlatformConfigurationProperties(dict): + @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): + 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 JobDefinitionContainerPropertiesLinuxParametersProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "initProcessEnabled": + suggest = "init_process_enabled" + elif key == "maxSwap": + suggest = "max_swap" + elif key == "sharedMemorySize": + suggest = "shared_memory_size" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionContainerPropertiesLinuxParametersProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionContainerPropertiesLinuxParametersProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionContainerPropertiesLinuxParametersProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + devices: Optional[Sequence['outputs.JobDefinitionDevice']] = None, + init_process_enabled: Optional[bool] = None, + max_swap: Optional[int] = None, + shared_memory_size: Optional[int] = None, + swappiness: Optional[int] = None, + tmpfs: Optional[Sequence['outputs.JobDefinitionTmpfs']] = None): + 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[Sequence['outputs.JobDefinitionDevice']]: + return pulumi.get(self, "devices") + + @property + @pulumi.getter(name="initProcessEnabled") + def init_process_enabled(self) -> Optional[bool]: + return pulumi.get(self, "init_process_enabled") + + @property + @pulumi.getter(name="maxSwap") + def max_swap(self) -> Optional[int]: + return pulumi.get(self, "max_swap") + + @property + @pulumi.getter(name="sharedMemorySize") + def shared_memory_size(self) -> Optional[int]: + return pulumi.get(self, "shared_memory_size") + + @property + @pulumi.getter + def swappiness(self) -> Optional[int]: + return pulumi.get(self, "swappiness") + + @property + @pulumi.getter + def tmpfs(self) -> Optional[Sequence['outputs.JobDefinitionTmpfs']]: + return pulumi.get(self, "tmpfs") + + +@pulumi.output_type +class JobDefinitionContainerPropertiesLogConfigurationProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "logDriver": + suggest = "log_driver" + elif key == "secretOptions": + suggest = "secret_options" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionContainerPropertiesLogConfigurationProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionContainerPropertiesLogConfigurationProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionContainerPropertiesLogConfigurationProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + log_driver: str, + options: Optional[Any] = None, + secret_options: Optional[Sequence['outputs.JobDefinitionSecret']] = None): + 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) -> str: + return pulumi.get(self, "log_driver") + + @property + @pulumi.getter + def options(self) -> Optional[Any]: + return pulumi.get(self, "options") + + @property + @pulumi.getter(name="secretOptions") + def secret_options(self) -> Optional[Sequence['outputs.JobDefinitionSecret']]: + return pulumi.get(self, "secret_options") + + +@pulumi.output_type +class JobDefinitionContainerPropertiesNetworkConfigurationProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "assignPublicIp": + suggest = "assign_public_ip" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionContainerPropertiesNetworkConfigurationProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionContainerPropertiesNetworkConfigurationProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionContainerPropertiesNetworkConfigurationProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + assign_public_ip: Optional[str] = None): + if assign_public_ip is not None: + pulumi.set(__self__, "assign_public_ip", assign_public_ip) + + @property + @pulumi.getter(name="assignPublicIp") + def assign_public_ip(self) -> Optional[str]: + return pulumi.get(self, "assign_public_ip") + + +@pulumi.output_type +class JobDefinitionContainerPropertiesRuntimePlatformProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "cpuArchitecture": + suggest = "cpu_architecture" + elif key == "operatingSystemFamily": + suggest = "operating_system_family" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in JobDefinitionContainerPropertiesRuntimePlatformProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + JobDefinitionContainerPropertiesRuntimePlatformProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionContainerPropertiesRuntimePlatformProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + cpu_architecture: Optional[str] = None, + operating_system_family: Optional[str] = None): + if cpu_architecture is not None: + pulumi.set(__self__, "cpu_architecture", cpu_architecture) + if operating_system_family is not None: + pulumi.set(__self__, "operating_system_family", operating_system_family) + + @property + @pulumi.getter(name="cpuArchitecture") + def cpu_architecture(self) -> Optional[str]: + return pulumi.get(self, "cpu_architecture") + + @property + @pulumi.getter(name="operatingSystemFamily") + def operating_system_family(self) -> Optional[str]: + return pulumi.get(self, "operating_system_family") + + @pulumi.output_type class JobDefinitionDevice(dict): @staticmethod @@ -734,6 +946,44 @@ def permissions(self) -> Optional[Sequence[str]]: return pulumi.get(self, "permissions") +@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): + 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]: + return pulumi.get(self, "access_point_id") + + @property + @pulumi.getter + def iam(self) -> Optional[str]: + return pulumi.get(self, "iam") + + @pulumi.output_type class JobDefinitionEfsVolumeConfiguration(dict): @staticmethod @@ -763,7 +1013,7 @@ 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): @@ -784,7 +1034,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']: return pulumi.get(self, "authorization_config") @property @@ -1108,6 +1358,93 @@ def path(self) -> Optional[str]: return pulumi.get(self, "path") +@pulumi.output_type +class JobDefinitionEksMetadata(dict): + def __init__(__self__, *, + labels: Optional[Any] = None): + if labels is not None: + pulumi.set(__self__, "labels", labels) + + @property + @pulumi.getter + def labels(self) -> Optional[Any]: + return pulumi.get(self, "labels") + + +@pulumi.output_type +class JobDefinitionEksPodProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dnsPolicy": + suggest = "dns_policy" + elif key == "hostNetwork": + suggest = "host_network" + elif key == "serviceAccountName": + suggest = "service_account_name" + + if suggest: + 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: + JobDefinitionEksPodProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + JobDefinitionEksPodProperties.__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, + metadata: Optional['outputs.JobDefinitionEksMetadata'] = None, + service_account_name: Optional[str] = None, + volumes: Optional[Sequence['outputs.JobDefinitionEksVolume']] = None): + 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 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 volumes is not None: + pulumi.set(__self__, "volumes", volumes) + + @property + @pulumi.getter + def containers(self) -> Optional[Sequence['outputs.JobDefinitionEksContainer']]: + return pulumi.get(self, "containers") + + @property + @pulumi.getter(name="dnsPolicy") + def dns_policy(self) -> Optional[str]: + return pulumi.get(self, "dns_policy") + + @property + @pulumi.getter(name="hostNetwork") + def host_network(self) -> Optional[bool]: + return pulumi.get(self, "host_network") + + @property + @pulumi.getter + def metadata(self) -> Optional['outputs.JobDefinitionEksMetadata']: + return pulumi.get(self, "metadata") + + @property + @pulumi.getter(name="serviceAccountName") + def service_account_name(self) -> Optional[str]: + return pulumi.get(self, "service_account_name") + + @property + @pulumi.getter + def volumes(self) -> Optional[Sequence['outputs.JobDefinitionEksVolume']]: + return pulumi.get(self, "volumes") + + @pulumi.output_type class JobDefinitionEksProperties(dict): @staticmethod @@ -1128,13 +1465,13 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - pod_properties: Optional['outputs.JobDefinitionPodProperties'] = None): + pod_properties: Optional['outputs.JobDefinitionEksPodProperties'] = None): if pod_properties is not None: pulumi.set(__self__, "pod_properties", pod_properties) @property @pulumi.getter(name="podProperties") - def pod_properties(self) -> Optional['outputs.JobDefinitionPodProperties']: + def pod_properties(self) -> Optional['outputs.JobDefinitionEksPodProperties']: return pulumi.get(self, "pod_properties") @@ -1251,35 +1588,6 @@ def value(self) -> Optional[str]: return pulumi.get(self, "value") -@pulumi.output_type -class JobDefinitionEphemeralStorage(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "sizeInGiB": - suggest = "size_in_gi_b" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionEphemeralStorage. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionEphemeralStorage.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionEphemeralStorage.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - size_in_gi_b: int): - pulumi.set(__self__, "size_in_gi_b", size_in_gi_b) - - @property - @pulumi.getter(name="sizeInGiB") - def size_in_gi_b(self) -> int: - return pulumi.get(self, "size_in_gi_b") - - @pulumi.output_type class JobDefinitionEvaluateOnExit(dict): @staticmethod @@ -1322,187 +1630,83 @@ def action(self) -> str: return pulumi.get(self, "action") @property - @pulumi.getter(name="onExitCode") - def on_exit_code(self) -> Optional[str]: - return pulumi.get(self, "on_exit_code") - - @property - @pulumi.getter(name="onReason") - def on_reason(self) -> Optional[str]: - return pulumi.get(self, "on_reason") - - @property - @pulumi.getter(name="onStatusReason") - def on_status_reason(self) -> Optional[str]: - return pulumi.get(self, "on_status_reason") - - -@pulumi.output_type -class JobDefinitionFargatePlatformConfiguration(dict): - @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 JobDefinitionFargatePlatformConfiguration. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionFargatePlatformConfiguration.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionFargatePlatformConfiguration.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - platform_version: Optional[str] = None): - 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 JobDefinitionLinuxParameters(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "initProcessEnabled": - suggest = "init_process_enabled" - elif key == "maxSwap": - suggest = "max_swap" - elif key == "sharedMemorySize": - suggest = "shared_memory_size" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionLinuxParameters. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionLinuxParameters.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionLinuxParameters.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - devices: Optional[Sequence['outputs.JobDefinitionDevice']] = None, - init_process_enabled: Optional[bool] = None, - max_swap: Optional[int] = None, - shared_memory_size: Optional[int] = None, - swappiness: Optional[int] = None, - tmpfs: Optional[Sequence['outputs.JobDefinitionTmpfs']] = None): - 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[Sequence['outputs.JobDefinitionDevice']]: - return pulumi.get(self, "devices") - - @property - @pulumi.getter(name="initProcessEnabled") - def init_process_enabled(self) -> Optional[bool]: - return pulumi.get(self, "init_process_enabled") - - @property - @pulumi.getter(name="maxSwap") - def max_swap(self) -> Optional[int]: - return pulumi.get(self, "max_swap") - - @property - @pulumi.getter(name="sharedMemorySize") - def shared_memory_size(self) -> Optional[int]: - return pulumi.get(self, "shared_memory_size") - - @property - @pulumi.getter - def swappiness(self) -> Optional[int]: - return pulumi.get(self, "swappiness") + @pulumi.getter(name="onExitCode") + def on_exit_code(self) -> Optional[str]: + return pulumi.get(self, "on_exit_code") @property - @pulumi.getter - def tmpfs(self) -> Optional[Sequence['outputs.JobDefinitionTmpfs']]: - return pulumi.get(self, "tmpfs") + @pulumi.getter(name="onReason") + def on_reason(self) -> Optional[str]: + return pulumi.get(self, "on_reason") + + @property + @pulumi.getter(name="onStatusReason") + def on_status_reason(self) -> Optional[str]: + return pulumi.get(self, "on_status_reason") @pulumi.output_type -class JobDefinitionLogConfiguration(dict): +class JobDefinitionHost(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "logDriver": - suggest = "log_driver" - elif key == "secretOptions": - suggest = "secret_options" + if key == "sourcePath": + suggest = "source_path" if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionLogConfiguration. 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: - JobDefinitionLogConfiguration.__key_warning(key) + JobDefinitionHost.__key_warning(key) return super().__getitem__(key) def get(self, key: str, default = None) -> Any: - JobDefinitionLogConfiguration.__key_warning(key) + JobDefinitionHost.__key_warning(key) return super().get(key, default) def __init__(__self__, *, - log_driver: str, - options: Optional[Any] = None, - secret_options: Optional[Sequence['outputs.JobDefinitionSecret']] = None): - 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) + source_path: Optional[str] = None): + if source_path is not None: + pulumi.set(__self__, "source_path", source_path) @property - @pulumi.getter(name="logDriver") - def log_driver(self) -> str: - return pulumi.get(self, "log_driver") + @pulumi.getter(name="sourcePath") + def source_path(self) -> Optional[str]: + return pulumi.get(self, "source_path") - @property - @pulumi.getter - def options(self) -> Optional[Any]: - return pulumi.get(self, "options") - @property - @pulumi.getter(name="secretOptions") - def secret_options(self) -> Optional[Sequence['outputs.JobDefinitionSecret']]: - return pulumi.get(self, "secret_options") +@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) -@pulumi.output_type -class JobDefinitionMetadata(dict): def __init__(__self__, *, - labels: Optional[Any] = None): - if labels is not None: - pulumi.set(__self__, "labels", labels) + attempt_duration_seconds: Optional[int] = None): + if attempt_duration_seconds is not None: + pulumi.set(__self__, "attempt_duration_seconds", attempt_duration_seconds) @property - @pulumi.getter - def labels(self) -> Optional[Any]: - return pulumi.get(self, "labels") + @pulumi.getter(name="attemptDurationSeconds") + def attempt_duration_seconds(self) -> Optional[int]: + return pulumi.get(self, "attempt_duration_seconds") @pulumi.output_type -class JobDefinitionMountPoints(dict): +class JobDefinitionMountPoint(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -1514,14 +1718,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__, *, @@ -1551,36 +1755,6 @@ def source_volume(self) -> Optional[str]: return pulumi.get(self, "source_volume") -@pulumi.output_type -class JobDefinitionNetworkConfiguration(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "assignPublicIp": - suggest = "assign_public_ip" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionNetworkConfiguration. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionNetworkConfiguration.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionNetworkConfiguration.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - assign_public_ip: Optional[str] = None): - if assign_public_ip is not None: - pulumi.set(__self__, "assign_public_ip", assign_public_ip) - - @property - @pulumi.getter(name="assignPublicIp") - def assign_public_ip(self) -> Optional[str]: - return pulumi.get(self, "assign_public_ip") - - @pulumi.output_type class JobDefinitionNodeProperties(dict): @staticmethod @@ -1665,80 +1839,6 @@ def container(self) -> Optional['outputs.JobDefinitionContainerProperties']: return pulumi.get(self, "container") -@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 == "serviceAccountName": - suggest = "service_account_name" - - 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, - metadata: Optional['outputs.JobDefinitionMetadata'] = None, - service_account_name: Optional[str] = None, - volumes: Optional[Sequence['outputs.JobDefinitionEksVolume']] = None): - 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 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 volumes is not None: - pulumi.set(__self__, "volumes", volumes) - - @property - @pulumi.getter - def containers(self) -> Optional[Sequence['outputs.JobDefinitionEksContainer']]: - return pulumi.get(self, "containers") - - @property - @pulumi.getter(name="dnsPolicy") - def dns_policy(self) -> Optional[str]: - return pulumi.get(self, "dns_policy") - - @property - @pulumi.getter(name="hostNetwork") - def host_network(self) -> Optional[bool]: - return pulumi.get(self, "host_network") - - @property - @pulumi.getter - def metadata(self) -> Optional['outputs.JobDefinitionMetadata']: - return pulumi.get(self, "metadata") - - @property - @pulumi.getter(name="serviceAccountName") - def service_account_name(self) -> Optional[str]: - return pulumi.get(self, "service_account_name") - - @property - @pulumi.getter - def volumes(self) -> Optional[Sequence['outputs.JobDefinitionEksVolume']]: - return pulumi.get(self, "volumes") - - @pulumi.output_type class JobDefinitionResourceRequirement(dict): def __init__(__self__, *, @@ -1798,46 +1898,6 @@ def evaluate_on_exit(self) -> Optional[Sequence['outputs.JobDefinitionEvaluateOn return pulumi.get(self, "evaluate_on_exit") -@pulumi.output_type -class JobDefinitionRuntimePlatform(dict): - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "cpuArchitecture": - suggest = "cpu_architecture" - elif key == "operatingSystemFamily": - suggest = "operating_system_family" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in JobDefinitionRuntimePlatform. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - JobDefinitionRuntimePlatform.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - JobDefinitionRuntimePlatform.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - cpu_architecture: Optional[str] = None, - operating_system_family: Optional[str] = None): - if cpu_architecture is not None: - pulumi.set(__self__, "cpu_architecture", cpu_architecture) - if operating_system_family is not None: - pulumi.set(__self__, "operating_system_family", operating_system_family) - - @property - @pulumi.getter(name="cpuArchitecture") - def cpu_architecture(self) -> Optional[str]: - return pulumi.get(self, "cpu_architecture") - - @property - @pulumi.getter(name="operatingSystemFamily") - def operating_system_family(self) -> Optional[str]: - return pulumi.get(self, "operating_system_family") - - @pulumi.output_type class JobDefinitionSecret(dict): @staticmethod @@ -1874,36 +1934,6 @@ def value_from(self) -> str: return pulumi.get(self, "value_from") -@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): - 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]: - return pulumi.get(self, "attempt_duration_seconds") - - @pulumi.output_type class JobDefinitionTmpfs(dict): @staticmethod @@ -1996,7 +2026,7 @@ def soft_limit(self) -> int: @pulumi.output_type -class JobDefinitionVolumes(dict): +class JobDefinitionVolume(dict): @staticmethod def __key_warning(key: str): suggest = None @@ -2004,19 +2034,19 @@ 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): if efs_volume_configuration is not None: pulumi.set(__self__, "efs_volume_configuration", efs_volume_configuration) @@ -2032,7 +2062,7 @@ def efs_volume_configuration(self) -> Optional['outputs.JobDefinitionEfsVolumeCo @property @pulumi.getter - def host(self) -> Optional['outputs.JobDefinitionVolumesHost']: + def host(self) -> Optional['outputs.JobDefinitionHost']: return pulumi.get(self, "host") @property @@ -2041,36 +2071,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): - if source_path is not None: - pulumi.set(__self__, "source_path", source_path) - - @property - @pulumi.getter(name="sourcePath") - def source_path(self) -> Optional[str]: - return pulumi.get(self, "source_path") - - @pulumi.output_type class JobQueueComputeEnvironmentOrder(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/billingconductor/custom_line_item.py b/sdk/python/pulumi_aws_native/billingconductor/custom_line_item.py index ee21b49cdd..c287e795c1 100644 --- a/sdk/python/pulumi_aws_native/billingconductor/custom_line_item.py +++ b/sdk/python/pulumi_aws_native/billingconductor/custom_line_item.py @@ -18,6 +18,7 @@ class CustomLineItemArgs: def __init__(__self__, *, billing_group_arn: pulumi.Input[str], + account_id: Optional[pulumi.Input[str]] = None, billing_period_range: Optional[pulumi.Input['CustomLineItemBillingPeriodRangeArgs']] = None, custom_line_item_charge_details: Optional[pulumi.Input['CustomLineItemChargeDetailsArgs']] = None, description: Optional[pulumi.Input[str]] = None, @@ -26,8 +27,11 @@ def __init__(__self__, *, """ The set of arguments for constructing a CustomLineItem resource. :param pulumi.Input[str] billing_group_arn: Billing Group ARN + :param pulumi.Input[str] account_id: The account which this custom line item will be charged to """ pulumi.set(__self__, "billing_group_arn", billing_group_arn) + if account_id is not None: + pulumi.set(__self__, "account_id", account_id) if billing_period_range is not None: pulumi.set(__self__, "billing_period_range", billing_period_range) if custom_line_item_charge_details is not None: @@ -51,6 +55,18 @@ def billing_group_arn(self) -> pulumi.Input[str]: def billing_group_arn(self, value: pulumi.Input[str]): pulumi.set(self, "billing_group_arn", value) + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[pulumi.Input[str]]: + """ + The account which this custom line item will be charged to + """ + return pulumi.get(self, "account_id") + + @account_id.setter + def account_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "account_id", value) + @property @pulumi.getter(name="billingPeriodRange") def billing_period_range(self) -> Optional[pulumi.Input['CustomLineItemBillingPeriodRangeArgs']]: @@ -107,6 +123,7 @@ class CustomLineItem(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + account_id: Optional[pulumi.Input[str]] = None, billing_group_arn: Optional[pulumi.Input[str]] = None, billing_period_range: Optional[pulumi.Input[pulumi.InputType['CustomLineItemBillingPeriodRangeArgs']]] = None, custom_line_item_charge_details: Optional[pulumi.Input[pulumi.InputType['CustomLineItemChargeDetailsArgs']]] = None, @@ -119,6 +136,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] account_id: The account which this custom line item will be charged to :param pulumi.Input[str] billing_group_arn: Billing Group ARN """ ... @@ -145,6 +163,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + account_id: Optional[pulumi.Input[str]] = None, billing_group_arn: Optional[pulumi.Input[str]] = None, billing_period_range: Optional[pulumi.Input[pulumi.InputType['CustomLineItemBillingPeriodRangeArgs']]] = None, custom_line_item_charge_details: Optional[pulumi.Input[pulumi.InputType['CustomLineItemChargeDetailsArgs']]] = None, @@ -161,6 +180,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__ = CustomLineItemArgs.__new__(CustomLineItemArgs) + __props__.__dict__["account_id"] = account_id if billing_group_arn is None and not opts.urn: raise TypeError("Missing required property 'billing_group_arn'") __props__.__dict__["billing_group_arn"] = billing_group_arn @@ -175,7 +195,7 @@ def _internal_init(__self__, __props__.__dict__["currency_code"] = None __props__.__dict__["last_modified_time"] = None __props__.__dict__["product_code"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["billing_group_arn", "billing_period_range.exclusive_end_billing_period", "billing_period_range.inclusive_start_billing_period", "custom_line_item_charge_details.type"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["account_id", "billing_group_arn", "billing_period_range.exclusive_end_billing_period", "billing_period_range.inclusive_start_billing_period", "custom_line_item_charge_details.type"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(CustomLineItem, __self__).__init__( 'aws-native:billingconductor:CustomLineItem', @@ -199,6 +219,7 @@ def get(resource_name: str, __props__ = CustomLineItemArgs.__new__(CustomLineItemArgs) + __props__.__dict__["account_id"] = None __props__.__dict__["arn"] = None __props__.__dict__["association_size"] = None __props__.__dict__["billing_group_arn"] = None @@ -213,6 +234,14 @@ def get(resource_name: str, __props__.__dict__["tags"] = None return CustomLineItem(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="accountId") + def account_id(self) -> pulumi.Output[Optional[str]]: + """ + The account which this custom line item will be charged to + """ + return pulumi.get(self, "account_id") + @property @pulumi.getter def arn(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/ce/anomaly_monitor.py b/sdk/python/pulumi_aws_native/ce/anomaly_monitor.py index 6bb7ce2e66..051eb9ea52 100644 --- a/sdk/python/pulumi_aws_native/ce/anomaly_monitor.py +++ b/sdk/python/pulumi_aws_native/ce/anomaly_monitor.py @@ -92,12 +92,7 @@ def resource_tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Anom pulumi.set(self, "resource_tags", value) -warnings.warn("""AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class AnomalyMonitor(pulumi.CustomResource): - warnings.warn("""AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -147,7 +142,6 @@ def _internal_init(__self__, monitor_type: Optional[pulumi.Input['AnomalyMonitorMonitorType']] = None, resource_tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['AnomalyMonitorResourceTagArgs']]]]] = None, __props__=None): - pulumi.log.warn("""AnomalyMonitor is deprecated: AnomalyMonitor is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") 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') diff --git a/sdk/python/pulumi_aws_native/ce/anomaly_subscription.py b/sdk/python/pulumi_aws_native/ce/anomaly_subscription.py index ffec1b9bd0..ff976654a2 100644 --- a/sdk/python/pulumi_aws_native/ce/anomaly_subscription.py +++ b/sdk/python/pulumi_aws_native/ce/anomaly_subscription.py @@ -130,12 +130,7 @@ def threshold_expression(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "threshold_expression", value) -warnings.warn("""AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class AnomalySubscription(pulumi.CustomResource): - warnings.warn("""AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -193,7 +188,6 @@ def _internal_init(__self__, threshold: Optional[pulumi.Input[float]] = None, threshold_expression: Optional[pulumi.Input[str]] = None, __props__=None): - pulumi.log.warn("""AnomalySubscription is deprecated: AnomalySubscription is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") 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') diff --git a/sdk/python/pulumi_aws_native/cleanrooms/_inputs.py b/sdk/python/pulumi_aws_native/cleanrooms/_inputs.py index 0b7e22adca..677c27cbba 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/_inputs.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/_inputs.py @@ -16,6 +16,8 @@ 'AnalysisTemplateTagArgs', 'CollaborationDataEncryptionMetadataArgs', 'CollaborationMemberSpecificationArgs', + 'CollaborationPaymentConfigurationArgs', + 'CollaborationQueryComputePaymentConfigArgs', 'CollaborationTagArgs', 'ConfiguredTableAggregateColumnArgs', 'ConfiguredTableAggregationConstraintArgs', @@ -31,9 +33,11 @@ 'ConfiguredTableGlueTableReferenceArgs', 'ConfiguredTableTableReferenceArgs', 'ConfiguredTableTagArgs', + 'MembershipPaymentConfigurationArgs', 'MembershipProtectedQueryOutputConfigurationArgs', 'MembershipProtectedQueryResultConfigurationArgs', 'MembershipProtectedQueryS3OutputConfigurationArgs', + 'MembershipQueryComputePaymentConfigArgs', 'MembershipTagArgs', ] @@ -173,10 +177,13 @@ class CollaborationMemberSpecificationArgs: def __init__(__self__, *, account_id: pulumi.Input[str], display_name: pulumi.Input[str], - member_abilities: pulumi.Input[Sequence[pulumi.Input['CollaborationMemberAbility']]]): + member_abilities: pulumi.Input[Sequence[pulumi.Input['CollaborationMemberAbility']]], + payment_configuration: Optional[pulumi.Input['CollaborationPaymentConfigurationArgs']] = None): pulumi.set(__self__, "account_id", account_id) pulumi.set(__self__, "display_name", display_name) pulumi.set(__self__, "member_abilities", member_abilities) + if payment_configuration is not None: + pulumi.set(__self__, "payment_configuration", payment_configuration) @property @pulumi.getter(name="accountId") @@ -205,6 +212,47 @@ def member_abilities(self) -> pulumi.Input[Sequence[pulumi.Input['CollaborationM def member_abilities(self, value: pulumi.Input[Sequence[pulumi.Input['CollaborationMemberAbility']]]): pulumi.set(self, "member_abilities", value) + @property + @pulumi.getter(name="paymentConfiguration") + def payment_configuration(self) -> Optional[pulumi.Input['CollaborationPaymentConfigurationArgs']]: + return pulumi.get(self, "payment_configuration") + + @payment_configuration.setter + def payment_configuration(self, value: Optional[pulumi.Input['CollaborationPaymentConfigurationArgs']]): + pulumi.set(self, "payment_configuration", value) + + +@pulumi.input_type +class CollaborationPaymentConfigurationArgs: + def __init__(__self__, *, + query_compute: pulumi.Input['CollaborationQueryComputePaymentConfigArgs']): + pulumi.set(__self__, "query_compute", query_compute) + + @property + @pulumi.getter(name="queryCompute") + def query_compute(self) -> pulumi.Input['CollaborationQueryComputePaymentConfigArgs']: + return pulumi.get(self, "query_compute") + + @query_compute.setter + def query_compute(self, value: pulumi.Input['CollaborationQueryComputePaymentConfigArgs']): + pulumi.set(self, "query_compute", value) + + +@pulumi.input_type +class CollaborationQueryComputePaymentConfigArgs: + def __init__(__self__, *, + is_responsible: pulumi.Input[bool]): + pulumi.set(__self__, "is_responsible", is_responsible) + + @property + @pulumi.getter(name="isResponsible") + def is_responsible(self) -> pulumi.Input[bool]: + return pulumi.get(self, "is_responsible") + + @is_responsible.setter + def is_responsible(self, value: pulumi.Input[bool]): + pulumi.set(self, "is_responsible", value) + @pulumi.input_type class CollaborationTagArgs: @@ -637,6 +685,22 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class MembershipPaymentConfigurationArgs: + def __init__(__self__, *, + query_compute: pulumi.Input['MembershipQueryComputePaymentConfigArgs']): + pulumi.set(__self__, "query_compute", query_compute) + + @property + @pulumi.getter(name="queryCompute") + def query_compute(self) -> pulumi.Input['MembershipQueryComputePaymentConfigArgs']: + return pulumi.get(self, "query_compute") + + @query_compute.setter + def query_compute(self, value: pulumi.Input['MembershipQueryComputePaymentConfigArgs']): + pulumi.set(self, "query_compute", value) + + @pulumi.input_type class MembershipProtectedQueryOutputConfigurationArgs: def __init__(__self__, *, @@ -720,6 +784,22 @@ def key_prefix(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "key_prefix", value) +@pulumi.input_type +class MembershipQueryComputePaymentConfigArgs: + def __init__(__self__, *, + is_responsible: pulumi.Input[bool]): + pulumi.set(__self__, "is_responsible", is_responsible) + + @property + @pulumi.getter(name="isResponsible") + def is_responsible(self) -> pulumi.Input[bool]: + return pulumi.get(self, "is_responsible") + + @is_responsible.setter + def is_responsible(self, value: pulumi.Input[bool]): + pulumi.set(self, "is_responsible", value) + + @pulumi.input_type class MembershipTagArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/cleanrooms/collaboration.py b/sdk/python/pulumi_aws_native/cleanrooms/collaboration.py index 9ffccb0e29..e4d26966cc 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/collaboration.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/collaboration.py @@ -22,6 +22,7 @@ def __init__(__self__, *, description: pulumi.Input[str], members: pulumi.Input[Sequence[pulumi.Input['CollaborationMemberSpecificationArgs']]], query_log_status: pulumi.Input['CollaborationQueryLogStatus'], + creator_payment_configuration: Optional[pulumi.Input['CollaborationPaymentConfigurationArgs']] = None, data_encryption_metadata: Optional[pulumi.Input['CollaborationDataEncryptionMetadataArgs']] = None, name: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationTagArgs']]]] = None): @@ -34,6 +35,8 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) pulumi.set(__self__, "members", members) pulumi.set(__self__, "query_log_status", query_log_status) + if creator_payment_configuration is not None: + pulumi.set(__self__, "creator_payment_configuration", creator_payment_configuration) if data_encryption_metadata is not None: pulumi.set(__self__, "data_encryption_metadata", data_encryption_metadata) if name is not None: @@ -86,6 +89,15 @@ def query_log_status(self) -> pulumi.Input['CollaborationQueryLogStatus']: def query_log_status(self, value: pulumi.Input['CollaborationQueryLogStatus']): pulumi.set(self, "query_log_status", value) + @property + @pulumi.getter(name="creatorPaymentConfiguration") + def creator_payment_configuration(self) -> Optional[pulumi.Input['CollaborationPaymentConfigurationArgs']]: + return pulumi.get(self, "creator_payment_configuration") + + @creator_payment_configuration.setter + def creator_payment_configuration(self, value: Optional[pulumi.Input['CollaborationPaymentConfigurationArgs']]): + pulumi.set(self, "creator_payment_configuration", value) + @property @pulumi.getter(name="dataEncryptionMetadata") def data_encryption_metadata(self) -> Optional[pulumi.Input['CollaborationDataEncryptionMetadataArgs']]: @@ -124,6 +136,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, creator_display_name: Optional[pulumi.Input[str]] = None, creator_member_abilities: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationMemberAbility']]]] = None, + creator_payment_configuration: Optional[pulumi.Input[pulumi.InputType['CollaborationPaymentConfigurationArgs']]] = None, data_encryption_metadata: Optional[pulumi.Input[pulumi.InputType['CollaborationDataEncryptionMetadataArgs']]] = None, description: Optional[pulumi.Input[str]] = None, members: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CollaborationMemberSpecificationArgs']]]]] = None, @@ -164,6 +177,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, creator_display_name: Optional[pulumi.Input[str]] = None, creator_member_abilities: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationMemberAbility']]]] = None, + creator_payment_configuration: Optional[pulumi.Input[pulumi.InputType['CollaborationPaymentConfigurationArgs']]] = None, data_encryption_metadata: Optional[pulumi.Input[pulumi.InputType['CollaborationDataEncryptionMetadataArgs']]] = None, description: Optional[pulumi.Input[str]] = None, members: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CollaborationMemberSpecificationArgs']]]]] = None, @@ -185,6 +199,7 @@ def _internal_init(__self__, if creator_member_abilities is None and not opts.urn: raise TypeError("Missing required property 'creator_member_abilities'") __props__.__dict__["creator_member_abilities"] = creator_member_abilities + __props__.__dict__["creator_payment_configuration"] = creator_payment_configuration __props__.__dict__["data_encryption_metadata"] = data_encryption_metadata if description is None and not opts.urn: raise TypeError("Missing required property 'description'") @@ -199,7 +214,7 @@ def _internal_init(__self__, __props__.__dict__["tags"] = tags __props__.__dict__["arn"] = None __props__.__dict__["collaboration_identifier"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["creator_display_name", "creator_member_abilities[*]", "data_encryption_metadata", "members[*]", "query_log_status"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["creator_display_name", "creator_member_abilities[*]", "creator_payment_configuration", "data_encryption_metadata", "members[*]", "query_log_status"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Collaboration, __self__).__init__( 'aws-native:cleanrooms:Collaboration', @@ -227,6 +242,7 @@ def get(resource_name: str, __props__.__dict__["collaboration_identifier"] = None __props__.__dict__["creator_display_name"] = None __props__.__dict__["creator_member_abilities"] = None + __props__.__dict__["creator_payment_configuration"] = None __props__.__dict__["data_encryption_metadata"] = None __props__.__dict__["description"] = None __props__.__dict__["members"] = None @@ -255,6 +271,11 @@ def creator_display_name(self) -> pulumi.Output[str]: def creator_member_abilities(self) -> pulumi.Output[Sequence['CollaborationMemberAbility']]: return pulumi.get(self, "creator_member_abilities") + @property + @pulumi.getter(name="creatorPaymentConfiguration") + def creator_payment_configuration(self) -> pulumi.Output[Optional['outputs.CollaborationPaymentConfiguration']]: + return pulumi.get(self, "creator_payment_configuration") + @property @pulumi.getter(name="dataEncryptionMetadata") def data_encryption_metadata(self) -> pulumi.Output[Optional['outputs.CollaborationDataEncryptionMetadata']]: diff --git a/sdk/python/pulumi_aws_native/cleanrooms/get_membership.py b/sdk/python/pulumi_aws_native/cleanrooms/get_membership.py index 34f9508205..da3ef18532 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/get_membership.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/get_membership.py @@ -20,7 +20,7 @@ @pulumi.output_type class GetMembershipResult: - def __init__(__self__, arn=None, collaboration_arn=None, collaboration_creator_account_id=None, default_result_configuration=None, membership_identifier=None, query_log_status=None, tags=None): + def __init__(__self__, arn=None, collaboration_arn=None, collaboration_creator_account_id=None, default_result_configuration=None, membership_identifier=None, payment_configuration=None, query_log_status=None, tags=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -36,6 +36,9 @@ def __init__(__self__, arn=None, collaboration_arn=None, collaboration_creator_a if membership_identifier and not isinstance(membership_identifier, str): raise TypeError("Expected argument 'membership_identifier' to be a str") pulumi.set(__self__, "membership_identifier", membership_identifier) + if payment_configuration and not isinstance(payment_configuration, dict): + raise TypeError("Expected argument 'payment_configuration' to be a dict") + pulumi.set(__self__, "payment_configuration", payment_configuration) if query_log_status and not isinstance(query_log_status, str): raise TypeError("Expected argument 'query_log_status' to be a str") pulumi.set(__self__, "query_log_status", query_log_status) @@ -68,6 +71,11 @@ def default_result_configuration(self) -> Optional['outputs.MembershipProtectedQ def membership_identifier(self) -> Optional[str]: return pulumi.get(self, "membership_identifier") + @property + @pulumi.getter(name="paymentConfiguration") + def payment_configuration(self) -> Optional['outputs.MembershipPaymentConfiguration']: + return pulumi.get(self, "payment_configuration") + @property @pulumi.getter(name="queryLogStatus") def query_log_status(self) -> Optional['MembershipQueryLogStatus']: @@ -93,6 +101,7 @@ def __await__(self): collaboration_creator_account_id=self.collaboration_creator_account_id, default_result_configuration=self.default_result_configuration, membership_identifier=self.membership_identifier, + payment_configuration=self.payment_configuration, query_log_status=self.query_log_status, tags=self.tags) @@ -113,6 +122,7 @@ def get_membership(membership_identifier: Optional[str] = None, collaboration_creator_account_id=pulumi.get(__ret__, 'collaboration_creator_account_id'), default_result_configuration=pulumi.get(__ret__, 'default_result_configuration'), membership_identifier=pulumi.get(__ret__, 'membership_identifier'), + payment_configuration=pulumi.get(__ret__, 'payment_configuration'), query_log_status=pulumi.get(__ret__, 'query_log_status'), tags=pulumi.get(__ret__, 'tags')) diff --git a/sdk/python/pulumi_aws_native/cleanrooms/membership.py b/sdk/python/pulumi_aws_native/cleanrooms/membership.py index b055afcc92..d1c50e3c48 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/membership.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/membership.py @@ -20,6 +20,7 @@ def __init__(__self__, *, collaboration_identifier: pulumi.Input[str], query_log_status: pulumi.Input['MembershipQueryLogStatus'], default_result_configuration: Optional[pulumi.Input['MembershipProtectedQueryResultConfigurationArgs']] = None, + payment_configuration: Optional[pulumi.Input['MembershipPaymentConfigurationArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['MembershipTagArgs']]]] = None): """ The set of arguments for constructing a Membership resource. @@ -29,6 +30,8 @@ def __init__(__self__, *, pulumi.set(__self__, "query_log_status", query_log_status) if default_result_configuration is not None: pulumi.set(__self__, "default_result_configuration", default_result_configuration) + if payment_configuration is not None: + pulumi.set(__self__, "payment_configuration", payment_configuration) if tags is not None: pulumi.set(__self__, "tags", tags) @@ -59,6 +62,15 @@ def default_result_configuration(self) -> Optional[pulumi.Input['MembershipProte def default_result_configuration(self, value: Optional[pulumi.Input['MembershipProtectedQueryResultConfigurationArgs']]): pulumi.set(self, "default_result_configuration", value) + @property + @pulumi.getter(name="paymentConfiguration") + def payment_configuration(self) -> Optional[pulumi.Input['MembershipPaymentConfigurationArgs']]: + return pulumi.get(self, "payment_configuration") + + @payment_configuration.setter + def payment_configuration(self, value: Optional[pulumi.Input['MembershipPaymentConfigurationArgs']]): + pulumi.set(self, "payment_configuration", value) + @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MembershipTagArgs']]]]: @@ -79,6 +91,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, collaboration_identifier: Optional[pulumi.Input[str]] = None, default_result_configuration: Optional[pulumi.Input[pulumi.InputType['MembershipProtectedQueryResultConfigurationArgs']]] = None, + payment_configuration: Optional[pulumi.Input[pulumi.InputType['MembershipPaymentConfigurationArgs']]] = None, query_log_status: Optional[pulumi.Input['MembershipQueryLogStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MembershipTagArgs']]]]] = None, __props__=None): @@ -115,6 +128,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, collaboration_identifier: Optional[pulumi.Input[str]] = None, default_result_configuration: Optional[pulumi.Input[pulumi.InputType['MembershipProtectedQueryResultConfigurationArgs']]] = None, + payment_configuration: Optional[pulumi.Input[pulumi.InputType['MembershipPaymentConfigurationArgs']]] = None, query_log_status: Optional[pulumi.Input['MembershipQueryLogStatus']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MembershipTagArgs']]]]] = None, __props__=None): @@ -130,6 +144,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'collaboration_identifier'") __props__.__dict__["collaboration_identifier"] = collaboration_identifier __props__.__dict__["default_result_configuration"] = default_result_configuration + __props__.__dict__["payment_configuration"] = payment_configuration if query_log_status is None and not opts.urn: raise TypeError("Missing required property 'query_log_status'") __props__.__dict__["query_log_status"] = query_log_status @@ -168,6 +183,7 @@ def get(resource_name: str, __props__.__dict__["collaboration_identifier"] = None __props__.__dict__["default_result_configuration"] = None __props__.__dict__["membership_identifier"] = None + __props__.__dict__["payment_configuration"] = None __props__.__dict__["query_log_status"] = None __props__.__dict__["tags"] = None return Membership(resource_name, opts=opts, __props__=__props__) @@ -202,6 +218,11 @@ def default_result_configuration(self) -> pulumi.Output[Optional['outputs.Member def membership_identifier(self) -> pulumi.Output[str]: return pulumi.get(self, "membership_identifier") + @property + @pulumi.getter(name="paymentConfiguration") + def payment_configuration(self) -> pulumi.Output[Optional['outputs.MembershipPaymentConfiguration']]: + return pulumi.get(self, "payment_configuration") + @property @pulumi.getter(name="queryLogStatus") def query_log_status(self) -> pulumi.Output['MembershipQueryLogStatus']: diff --git a/sdk/python/pulumi_aws_native/cleanrooms/outputs.py b/sdk/python/pulumi_aws_native/cleanrooms/outputs.py index 89b5c6c694..dd2a82c418 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/outputs.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/outputs.py @@ -18,6 +18,8 @@ 'AnalysisTemplateTag', 'CollaborationDataEncryptionMetadata', 'CollaborationMemberSpecification', + 'CollaborationPaymentConfiguration', + 'CollaborationQueryComputePaymentConfig', 'CollaborationTag', 'ConfiguredTableAggregateColumn', 'ConfiguredTableAggregationConstraint', @@ -33,9 +35,11 @@ 'ConfiguredTableGlueTableReference', 'ConfiguredTableTableReference', 'ConfiguredTableTag', + 'MembershipPaymentConfiguration', 'MembershipProtectedQueryOutputConfiguration', 'MembershipProtectedQueryResultConfiguration', 'MembershipProtectedQueryS3OutputConfiguration', + 'MembershipQueryComputePaymentConfig', 'MembershipTag', ] @@ -210,6 +214,8 @@ def __key_warning(key: str): suggest = "display_name" elif key == "memberAbilities": suggest = "member_abilities" + elif key == "paymentConfiguration": + suggest = "payment_configuration" if suggest: pulumi.log.warn(f"Key '{key}' not found in CollaborationMemberSpecification. Access the value via the '{suggest}' property getter instead.") @@ -225,10 +231,13 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, account_id: str, display_name: str, - member_abilities: Sequence['CollaborationMemberAbility']): + member_abilities: Sequence['CollaborationMemberAbility'], + payment_configuration: Optional['outputs.CollaborationPaymentConfiguration'] = None): pulumi.set(__self__, "account_id", account_id) pulumi.set(__self__, "display_name", display_name) pulumi.set(__self__, "member_abilities", member_abilities) + if payment_configuration is not None: + pulumi.set(__self__, "payment_configuration", payment_configuration) @property @pulumi.getter(name="accountId") @@ -245,6 +254,69 @@ def display_name(self) -> str: def member_abilities(self) -> Sequence['CollaborationMemberAbility']: return pulumi.get(self, "member_abilities") + @property + @pulumi.getter(name="paymentConfiguration") + def payment_configuration(self) -> Optional['outputs.CollaborationPaymentConfiguration']: + return pulumi.get(self, "payment_configuration") + + +@pulumi.output_type +class CollaborationPaymentConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "queryCompute": + suggest = "query_compute" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in CollaborationPaymentConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + CollaborationPaymentConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + CollaborationPaymentConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + query_compute: 'outputs.CollaborationQueryComputePaymentConfig'): + pulumi.set(__self__, "query_compute", query_compute) + + @property + @pulumi.getter(name="queryCompute") + def query_compute(self) -> 'outputs.CollaborationQueryComputePaymentConfig': + return pulumi.get(self, "query_compute") + + +@pulumi.output_type +class CollaborationQueryComputePaymentConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "isResponsible": + suggest = "is_responsible" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in CollaborationQueryComputePaymentConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + CollaborationQueryComputePaymentConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + CollaborationQueryComputePaymentConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + is_responsible: bool): + pulumi.set(__self__, "is_responsible", is_responsible) + + @property + @pulumi.getter(name="isResponsible") + def is_responsible(self) -> bool: + return pulumi.get(self, "is_responsible") + @pulumi.output_type class CollaborationTag(dict): @@ -671,6 +743,35 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class MembershipPaymentConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "queryCompute": + suggest = "query_compute" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in MembershipPaymentConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + MembershipPaymentConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + MembershipPaymentConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + query_compute: 'outputs.MembershipQueryComputePaymentConfig'): + pulumi.set(__self__, "query_compute", query_compute) + + @property + @pulumi.getter(name="queryCompute") + def query_compute(self) -> 'outputs.MembershipQueryComputePaymentConfig': + return pulumi.get(self, "query_compute") + + @pulumi.output_type class MembershipProtectedQueryOutputConfiguration(dict): def __init__(__self__, *, @@ -768,6 +869,35 @@ def key_prefix(self) -> Optional[str]: return pulumi.get(self, "key_prefix") +@pulumi.output_type +class MembershipQueryComputePaymentConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "isResponsible": + suggest = "is_responsible" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in MembershipQueryComputePaymentConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + MembershipQueryComputePaymentConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + MembershipQueryComputePaymentConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + is_responsible: bool): + pulumi.set(__self__, "is_responsible", is_responsible) + + @property + @pulumi.getter(name="isResponsible") + def is_responsible(self) -> bool: + return pulumi.get(self, "is_responsible") + + @pulumi.output_type class MembershipTag(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/cloud9/environment_ec2.py b/sdk/python/pulumi_aws_native/cloud9/environment_ec2.py index 5f16c5389e..d7782576eb 100644 --- a/sdk/python/pulumi_aws_native/cloud9/environment_ec2.py +++ b/sdk/python/pulumi_aws_native/cloud9/environment_ec2.py @@ -16,11 +16,11 @@ @pulumi.input_type class EnvironmentEc2Args: def __init__(__self__, *, + image_id: pulumi.Input[str], instance_type: pulumi.Input[str], automatic_stop_time_minutes: Optional[pulumi.Input[int]] = None, connection_type: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, - image_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, owner_arn: Optional[pulumi.Input[str]] = None, repositories: Optional[pulumi.Input[Sequence[pulumi.Input['EnvironmentEc2RepositoryArgs']]]] = None, @@ -29,6 +29,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a EnvironmentEc2 resource. """ + pulumi.set(__self__, "image_id", image_id) pulumi.set(__self__, "instance_type", instance_type) if automatic_stop_time_minutes is not None: pulumi.set(__self__, "automatic_stop_time_minutes", automatic_stop_time_minutes) @@ -36,8 +37,6 @@ def __init__(__self__, *, pulumi.set(__self__, "connection_type", connection_type) if description is not None: pulumi.set(__self__, "description", description) - if image_id is not None: - pulumi.set(__self__, "image_id", image_id) if name is not None: pulumi.set(__self__, "name", name) if owner_arn is not None: @@ -49,6 +48,15 @@ def __init__(__self__, *, if tags is not None: pulumi.set(__self__, "tags", tags) + @property + @pulumi.getter(name="imageId") + def image_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "image_id") + + @image_id.setter + def image_id(self, value: pulumi.Input[str]): + pulumi.set(self, "image_id", value) + @property @pulumi.getter(name="instanceType") def instance_type(self) -> pulumi.Input[str]: @@ -85,15 +93,6 @@ def description(self) -> Optional[pulumi.Input[str]]: def description(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "description", value) - @property - @pulumi.getter(name="imageId") - def image_id(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "image_id") - - @image_id.setter - def image_id(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "image_id", value) - @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -214,6 +213,8 @@ def _internal_init(__self__, __props__.__dict__["automatic_stop_time_minutes"] = automatic_stop_time_minutes __props__.__dict__["connection_type"] = connection_type __props__.__dict__["description"] = description + if image_id is None and not opts.urn: + raise TypeError("Missing required property 'image_id'") __props__.__dict__["image_id"] = image_id if instance_type is None and not opts.urn: raise TypeError("Missing required property 'instance_type'") @@ -283,7 +284,7 @@ def description(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="imageId") - def image_id(self) -> pulumi.Output[Optional[str]]: + def image_id(self) -> pulumi.Output[str]: return pulumi.get(self, "image_id") @property diff --git a/sdk/python/pulumi_aws_native/cloudfront/__init__.py b/sdk/python/pulumi_aws_native/cloudfront/__init__.py index 49c3a2caea..2e5670ffc7 100644 --- a/sdk/python/pulumi_aws_native/cloudfront/__init__.py +++ b/sdk/python/pulumi_aws_native/cloudfront/__init__.py @@ -17,6 +17,7 @@ from .get_distribution import * from .get_function import * from .get_key_group import * +from .get_key_value_store import * from .get_monitoring_subscription import * from .get_origin_access_control import * from .get_origin_request_policy import * @@ -25,6 +26,7 @@ from .get_response_headers_policy import * from .get_streaming_distribution import * from .key_group import * +from .key_value_store import * from .monitoring_subscription import * from .origin_access_control import * from .origin_request_policy import * diff --git a/sdk/python/pulumi_aws_native/cloudfront/_inputs.py b/sdk/python/pulumi_aws_native/cloudfront/_inputs.py index 5eb6dd962d..dd64998e5f 100644 --- a/sdk/python/pulumi_aws_native/cloudfront/_inputs.py +++ b/sdk/python/pulumi_aws_native/cloudfront/_inputs.py @@ -53,6 +53,7 @@ 'FunctionConfigArgs', 'FunctionMetadataArgs', 'KeyGroupConfigArgs', + 'KeyValueStoreImportSourceArgs', 'MonitoringSubscriptionRealtimeMetricsSubscriptionConfigArgs', 'MonitoringSubscriptionArgs', 'OriginAccessControlConfigArgs', @@ -2276,6 +2277,33 @@ def comment(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "comment", value) +@pulumi.input_type +class KeyValueStoreImportSourceArgs: + def __init__(__self__, *, + source_arn: pulumi.Input[str], + source_type: pulumi.Input[str]): + pulumi.set(__self__, "source_arn", source_arn) + pulumi.set(__self__, "source_type", source_type) + + @property + @pulumi.getter(name="sourceArn") + def source_arn(self) -> pulumi.Input[str]: + return pulumi.get(self, "source_arn") + + @source_arn.setter + def source_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "source_arn", value) + + @property + @pulumi.getter(name="sourceType") + def source_type(self) -> pulumi.Input[str]: + return pulumi.get(self, "source_type") + + @source_type.setter + def source_type(self, value: pulumi.Input[str]): + pulumi.set(self, "source_type", value) + + @pulumi.input_type class MonitoringSubscriptionRealtimeMetricsSubscriptionConfigArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/cloudfront/get_key_value_store.py b/sdk/python/pulumi_aws_native/cloudfront/get_key_value_store.py new file mode 100644 index 0000000000..9f195f8ac2 --- /dev/null +++ b/sdk/python/pulumi_aws_native/cloudfront/get_key_value_store.py @@ -0,0 +1,91 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = [ + 'GetKeyValueStoreResult', + 'AwaitableGetKeyValueStoreResult', + 'get_key_value_store', + 'get_key_value_store_output', +] + +@pulumi.output_type +class GetKeyValueStoreResult: + def __init__(__self__, arn=None, comment=None, id=None, status=None): + if arn and not isinstance(arn, str): + raise TypeError("Expected argument 'arn' to be a str") + pulumi.set(__self__, "arn", arn) + if comment and not isinstance(comment, str): + raise TypeError("Expected argument 'comment' to be a str") + pulumi.set(__self__, "comment", comment) + if id and not isinstance(id, str): + raise TypeError("Expected argument 'id' to be a str") + pulumi.set(__self__, "id", id) + if status and not isinstance(status, str): + raise TypeError("Expected argument 'status' to be a str") + pulumi.set(__self__, "status", status) + + @property + @pulumi.getter + def arn(self) -> Optional[str]: + return pulumi.get(self, "arn") + + @property + @pulumi.getter + def comment(self) -> Optional[str]: + return pulumi.get(self, "comment") + + @property + @pulumi.getter + def id(self) -> Optional[str]: + return pulumi.get(self, "id") + + @property + @pulumi.getter + def status(self) -> Optional[str]: + return pulumi.get(self, "status") + + +class AwaitableGetKeyValueStoreResult(GetKeyValueStoreResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetKeyValueStoreResult( + arn=self.arn, + comment=self.comment, + id=self.id, + status=self.status) + + +def get_key_value_store(name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetKeyValueStoreResult: + """ + Resource Type definition for AWS::CloudFront::KeyValueStore + """ + __args__ = dict() + __args__['name'] = name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:cloudfront:getKeyValueStore', __args__, opts=opts, typ=GetKeyValueStoreResult).value + + return AwaitableGetKeyValueStoreResult( + arn=pulumi.get(__ret__, 'arn'), + comment=pulumi.get(__ret__, 'comment'), + id=pulumi.get(__ret__, 'id'), + status=pulumi.get(__ret__, 'status')) + + +@_utilities.lift_output_func(get_key_value_store) +def get_key_value_store_output(name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetKeyValueStoreResult]: + """ + Resource Type definition for AWS::CloudFront::KeyValueStore + """ + ... diff --git a/sdk/python/pulumi_aws_native/cloudfront/key_value_store.py b/sdk/python/pulumi_aws_native/cloudfront/key_value_store.py new file mode 100644 index 0000000000..0e800941fb --- /dev/null +++ b/sdk/python/pulumi_aws_native/cloudfront/key_value_store.py @@ -0,0 +1,177 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['KeyValueStoreArgs', 'KeyValueStore'] + +@pulumi.input_type +class KeyValueStoreArgs: + def __init__(__self__, *, + comment: Optional[pulumi.Input[str]] = None, + import_source: Optional[pulumi.Input['KeyValueStoreImportSourceArgs']] = None, + name: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a KeyValueStore resource. + """ + if comment is not None: + pulumi.set(__self__, "comment", comment) + if import_source is not None: + pulumi.set(__self__, "import_source", import_source) + if name is not None: + pulumi.set(__self__, "name", name) + + @property + @pulumi.getter + def comment(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "comment") + + @comment.setter + def comment(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "comment", value) + + @property + @pulumi.getter(name="importSource") + def import_source(self) -> Optional[pulumi.Input['KeyValueStoreImportSourceArgs']]: + return pulumi.get(self, "import_source") + + @import_source.setter + def import_source(self, value: Optional[pulumi.Input['KeyValueStoreImportSourceArgs']]): + pulumi.set(self, "import_source", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + +warnings.warn("""KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) + + +class KeyValueStore(pulumi.CustomResource): + warnings.warn("""KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) + + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + comment: Optional[pulumi.Input[str]] = None, + import_source: Optional[pulumi.Input[pulumi.InputType['KeyValueStoreImportSourceArgs']]] = None, + name: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Resource Type definition for AWS::CloudFront::KeyValueStore + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: Optional[KeyValueStoreArgs] = None, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource Type definition for AWS::CloudFront::KeyValueStore + + :param str resource_name: The name of the resource. + :param KeyValueStoreArgs 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(KeyValueStoreArgs, 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, + comment: Optional[pulumi.Input[str]] = None, + import_source: Optional[pulumi.Input[pulumi.InputType['KeyValueStoreImportSourceArgs']]] = None, + name: Optional[pulumi.Input[str]] = None, + __props__=None): + pulumi.log.warn("""KeyValueStore is deprecated: KeyValueStore is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") + 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__ = KeyValueStoreArgs.__new__(KeyValueStoreArgs) + + __props__.__dict__["comment"] = comment + __props__.__dict__["import_source"] = import_source + __props__.__dict__["name"] = name + __props__.__dict__["arn"] = None + __props__.__dict__["status"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["name"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(KeyValueStore, __self__).__init__( + 'aws-native:cloudfront:KeyValueStore', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'KeyValueStore': + """ + Get an existing KeyValueStore 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__ = KeyValueStoreArgs.__new__(KeyValueStoreArgs) + + __props__.__dict__["arn"] = None + __props__.__dict__["comment"] = None + __props__.__dict__["import_source"] = None + __props__.__dict__["name"] = None + __props__.__dict__["status"] = None + return KeyValueStore(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "arn") + + @property + @pulumi.getter + def comment(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "comment") + + @property + @pulumi.getter(name="importSource") + def import_source(self) -> pulumi.Output[Optional['outputs.KeyValueStoreImportSource']]: + return pulumi.get(self, "import_source") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def status(self) -> pulumi.Output[str]: + return pulumi.get(self, "status") + diff --git a/sdk/python/pulumi_aws_native/cloudfront/outputs.py b/sdk/python/pulumi_aws_native/cloudfront/outputs.py index 444d24ea0b..1734796104 100644 --- a/sdk/python/pulumi_aws_native/cloudfront/outputs.py +++ b/sdk/python/pulumi_aws_native/cloudfront/outputs.py @@ -54,6 +54,7 @@ 'FunctionConfig', 'FunctionMetadata', 'KeyGroupConfig', + 'KeyValueStoreImportSource', 'MonitoringSubscription', 'MonitoringSubscriptionRealtimeMetricsSubscriptionConfig', 'OriginAccessControlConfig', @@ -2338,6 +2339,44 @@ def comment(self) -> Optional[str]: return pulumi.get(self, "comment") +@pulumi.output_type +class KeyValueStoreImportSource(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "sourceArn": + suggest = "source_arn" + elif key == "sourceType": + suggest = "source_type" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in KeyValueStoreImportSource. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + KeyValueStoreImportSource.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + KeyValueStoreImportSource.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + source_arn: str, + source_type: str): + pulumi.set(__self__, "source_arn", source_arn) + pulumi.set(__self__, "source_type", source_type) + + @property + @pulumi.getter(name="sourceArn") + def source_arn(self) -> str: + return pulumi.get(self, "source_arn") + + @property + @pulumi.getter(name="sourceType") + def source_type(self) -> str: + return pulumi.get(self, "source_type") + + @pulumi.output_type class MonitoringSubscription(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/cloudtrail/event_data_store.py b/sdk/python/pulumi_aws_native/cloudtrail/event_data_store.py index b6b37e9428..648f54cafd 100644 --- a/sdk/python/pulumi_aws_native/cloudtrail/event_data_store.py +++ b/sdk/python/pulumi_aws_native/cloudtrail/event_data_store.py @@ -18,6 +18,8 @@ class EventDataStoreArgs: def __init__(__self__, *, advanced_event_selectors: Optional[pulumi.Input[Sequence[pulumi.Input['EventDataStoreAdvancedEventSelectorArgs']]]] = None, billing_mode: Optional[pulumi.Input[str]] = None, + federation_enabled: Optional[pulumi.Input[bool]] = None, + federation_role_arn: Optional[pulumi.Input[str]] = None, ingestion_enabled: Optional[pulumi.Input[bool]] = None, insight_selectors: Optional[pulumi.Input[Sequence[pulumi.Input['EventDataStoreInsightSelectorArgs']]]] = None, insights_destination: Optional[pulumi.Input[str]] = None, @@ -32,6 +34,8 @@ def __init__(__self__, *, The set of arguments for constructing a EventDataStore resource. :param pulumi.Input[Sequence[pulumi.Input['EventDataStoreAdvancedEventSelectorArgs']]] advanced_event_selectors: The advanced event selectors that were used to select events for the data store. :param pulumi.Input[str] billing_mode: The mode that the event data store will use to charge for event storage. + :param pulumi.Input[bool] federation_enabled: Indicates whether federation is enabled on an event data store. + :param pulumi.Input[str] federation_role_arn: The ARN of the role used for event data store federation. :param pulumi.Input[bool] ingestion_enabled: Indicates whether the event data store is ingesting events. :param pulumi.Input[Sequence[pulumi.Input['EventDataStoreInsightSelectorArgs']]] insight_selectors: Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store. :param pulumi.Input[str] insights_destination: Specifies the ARN of the event data store that will collect Insights events. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store @@ -46,6 +50,10 @@ def __init__(__self__, *, pulumi.set(__self__, "advanced_event_selectors", advanced_event_selectors) if billing_mode is not None: pulumi.set(__self__, "billing_mode", billing_mode) + if federation_enabled is not None: + pulumi.set(__self__, "federation_enabled", federation_enabled) + if federation_role_arn is not None: + pulumi.set(__self__, "federation_role_arn", federation_role_arn) if ingestion_enabled is not None: pulumi.set(__self__, "ingestion_enabled", ingestion_enabled) if insight_selectors is not None: @@ -91,6 +99,30 @@ def billing_mode(self) -> Optional[pulumi.Input[str]]: def billing_mode(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "billing_mode", value) + @property + @pulumi.getter(name="federationEnabled") + def federation_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + Indicates whether federation is enabled on an event data store. + """ + return pulumi.get(self, "federation_enabled") + + @federation_enabled.setter + def federation_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "federation_enabled", value) + + @property + @pulumi.getter(name="federationRoleArn") + def federation_role_arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN of the role used for event data store federation. + """ + return pulumi.get(self, "federation_role_arn") + + @federation_role_arn.setter + def federation_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "federation_role_arn", value) + @property @pulumi.getter(name="ingestionEnabled") def ingestion_enabled(self) -> Optional[pulumi.Input[bool]]: @@ -216,6 +248,8 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, advanced_event_selectors: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EventDataStoreAdvancedEventSelectorArgs']]]]] = None, billing_mode: Optional[pulumi.Input[str]] = None, + federation_enabled: Optional[pulumi.Input[bool]] = None, + federation_role_arn: Optional[pulumi.Input[str]] = None, ingestion_enabled: Optional[pulumi.Input[bool]] = None, insight_selectors: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EventDataStoreInsightSelectorArgs']]]]] = None, insights_destination: Optional[pulumi.Input[str]] = None, @@ -234,6 +268,8 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EventDataStoreAdvancedEventSelectorArgs']]]] advanced_event_selectors: The advanced event selectors that were used to select events for the data store. :param pulumi.Input[str] billing_mode: The mode that the event data store will use to charge for event storage. + :param pulumi.Input[bool] federation_enabled: Indicates whether federation is enabled on an event data store. + :param pulumi.Input[str] federation_role_arn: The ARN of the role used for event data store federation. :param pulumi.Input[bool] ingestion_enabled: Indicates whether the event data store is ingesting events. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EventDataStoreInsightSelectorArgs']]]] insight_selectors: Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store. :param pulumi.Input[str] insights_destination: Specifies the ARN of the event data store that will collect Insights events. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store @@ -270,6 +306,8 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, advanced_event_selectors: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EventDataStoreAdvancedEventSelectorArgs']]]]] = None, billing_mode: Optional[pulumi.Input[str]] = None, + federation_enabled: Optional[pulumi.Input[bool]] = None, + federation_role_arn: Optional[pulumi.Input[str]] = None, ingestion_enabled: Optional[pulumi.Input[bool]] = None, insight_selectors: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['EventDataStoreInsightSelectorArgs']]]]] = None, insights_destination: Optional[pulumi.Input[str]] = None, @@ -291,6 +329,8 @@ def _internal_init(__self__, __props__.__dict__["advanced_event_selectors"] = advanced_event_selectors __props__.__dict__["billing_mode"] = billing_mode + __props__.__dict__["federation_enabled"] = federation_enabled + __props__.__dict__["federation_role_arn"] = federation_role_arn __props__.__dict__["ingestion_enabled"] = ingestion_enabled __props__.__dict__["insight_selectors"] = insight_selectors __props__.__dict__["insights_destination"] = insights_destination @@ -331,6 +371,8 @@ def get(resource_name: str, __props__.__dict__["billing_mode"] = None __props__.__dict__["created_timestamp"] = None __props__.__dict__["event_data_store_arn"] = None + __props__.__dict__["federation_enabled"] = None + __props__.__dict__["federation_role_arn"] = None __props__.__dict__["ingestion_enabled"] = None __props__.__dict__["insight_selectors"] = None __props__.__dict__["insights_destination"] = None @@ -377,6 +419,22 @@ def event_data_store_arn(self) -> pulumi.Output[str]: """ return pulumi.get(self, "event_data_store_arn") + @property + @pulumi.getter(name="federationEnabled") + def federation_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + Indicates whether federation is enabled on an event data store. + """ + return pulumi.get(self, "federation_enabled") + + @property + @pulumi.getter(name="federationRoleArn") + def federation_role_arn(self) -> pulumi.Output[Optional[str]]: + """ + The ARN of the role used for event data store federation. + """ + return pulumi.get(self, "federation_role_arn") + @property @pulumi.getter(name="ingestionEnabled") def ingestion_enabled(self) -> pulumi.Output[Optional[bool]]: diff --git a/sdk/python/pulumi_aws_native/cloudtrail/get_event_data_store.py b/sdk/python/pulumi_aws_native/cloudtrail/get_event_data_store.py index b76096b4d7..3f450e9d62 100644 --- a/sdk/python/pulumi_aws_native/cloudtrail/get_event_data_store.py +++ b/sdk/python/pulumi_aws_native/cloudtrail/get_event_data_store.py @@ -19,7 +19,7 @@ @pulumi.output_type class GetEventDataStoreResult: - def __init__(__self__, advanced_event_selectors=None, billing_mode=None, created_timestamp=None, event_data_store_arn=None, ingestion_enabled=None, insight_selectors=None, insights_destination=None, kms_key_id=None, multi_region_enabled=None, name=None, organization_enabled=None, retention_period=None, status=None, tags=None, termination_protection_enabled=None, updated_timestamp=None): + def __init__(__self__, advanced_event_selectors=None, billing_mode=None, created_timestamp=None, event_data_store_arn=None, federation_enabled=None, federation_role_arn=None, ingestion_enabled=None, insight_selectors=None, insights_destination=None, kms_key_id=None, multi_region_enabled=None, name=None, organization_enabled=None, retention_period=None, status=None, tags=None, termination_protection_enabled=None, updated_timestamp=None): if advanced_event_selectors and not isinstance(advanced_event_selectors, list): raise TypeError("Expected argument 'advanced_event_selectors' to be a list") pulumi.set(__self__, "advanced_event_selectors", advanced_event_selectors) @@ -32,6 +32,12 @@ def __init__(__self__, advanced_event_selectors=None, billing_mode=None, created if event_data_store_arn and not isinstance(event_data_store_arn, str): raise TypeError("Expected argument 'event_data_store_arn' to be a str") pulumi.set(__self__, "event_data_store_arn", event_data_store_arn) + if federation_enabled and not isinstance(federation_enabled, bool): + raise TypeError("Expected argument 'federation_enabled' to be a bool") + pulumi.set(__self__, "federation_enabled", federation_enabled) + if federation_role_arn and not isinstance(federation_role_arn, str): + raise TypeError("Expected argument 'federation_role_arn' to be a str") + pulumi.set(__self__, "federation_role_arn", federation_role_arn) if ingestion_enabled and not isinstance(ingestion_enabled, bool): raise TypeError("Expected argument 'ingestion_enabled' to be a bool") pulumi.set(__self__, "ingestion_enabled", ingestion_enabled) @@ -101,6 +107,22 @@ def event_data_store_arn(self) -> Optional[str]: """ return pulumi.get(self, "event_data_store_arn") + @property + @pulumi.getter(name="federationEnabled") + def federation_enabled(self) -> Optional[bool]: + """ + Indicates whether federation is enabled on an event data store. + """ + return pulumi.get(self, "federation_enabled") + + @property + @pulumi.getter(name="federationRoleArn") + def federation_role_arn(self) -> Optional[str]: + """ + The ARN of the role used for event data store federation. + """ + return pulumi.get(self, "federation_role_arn") + @property @pulumi.getter(name="ingestionEnabled") def ingestion_enabled(self) -> Optional[bool]: @@ -205,6 +227,8 @@ def __await__(self): billing_mode=self.billing_mode, created_timestamp=self.created_timestamp, event_data_store_arn=self.event_data_store_arn, + federation_enabled=self.federation_enabled, + federation_role_arn=self.federation_role_arn, ingestion_enabled=self.ingestion_enabled, insight_selectors=self.insight_selectors, insights_destination=self.insights_destination, @@ -237,6 +261,8 @@ def get_event_data_store(event_data_store_arn: Optional[str] = None, billing_mode=pulumi.get(__ret__, 'billing_mode'), created_timestamp=pulumi.get(__ret__, 'created_timestamp'), event_data_store_arn=pulumi.get(__ret__, 'event_data_store_arn'), + federation_enabled=pulumi.get(__ret__, 'federation_enabled'), + federation_role_arn=pulumi.get(__ret__, 'federation_role_arn'), ingestion_enabled=pulumi.get(__ret__, 'ingestion_enabled'), insight_selectors=pulumi.get(__ret__, 'insight_selectors'), insights_destination=pulumi.get(__ret__, 'insights_destination'), diff --git a/sdk/python/pulumi_aws_native/codedeploy/_inputs.py b/sdk/python/pulumi_aws_native/codedeploy/_inputs.py index 8731221156..51bfb72356 100644 --- a/sdk/python/pulumi_aws_native/codedeploy/_inputs.py +++ b/sdk/python/pulumi_aws_native/codedeploy/_inputs.py @@ -11,10 +11,12 @@ __all__ = [ 'ApplicationTagArgs', + 'DeploymentConfigMinimumHealthyHostsPerZoneArgs', 'DeploymentConfigMinimumHealthyHostsArgs', 'DeploymentConfigTimeBasedCanaryArgs', 'DeploymentConfigTimeBasedLinearArgs', 'DeploymentConfigTrafficRoutingConfigArgs', + 'DeploymentConfigZonalConfigArgs', 'DeploymentGroupAlarmConfigurationArgs', 'DeploymentGroupAlarmArgs', 'DeploymentGroupAutoRollbackConfigurationArgs', @@ -70,6 +72,33 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class DeploymentConfigMinimumHealthyHostsPerZoneArgs: + def __init__(__self__, *, + type: pulumi.Input[str], + value: pulumi.Input[int]): + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def type(self) -> pulumi.Input[str]: + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input[str]): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input[int]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input[int]): + pulumi.set(self, "value", value) + + @pulumi.input_type class DeploymentConfigMinimumHealthyHostsArgs: def __init__(__self__, *, @@ -191,6 +220,47 @@ def time_based_linear(self, value: Optional[pulumi.Input['DeploymentConfigTimeBa pulumi.set(self, "time_based_linear", value) +@pulumi.input_type +class DeploymentConfigZonalConfigArgs: + def __init__(__self__, *, + first_zone_monitor_duration_in_seconds: Optional[pulumi.Input[int]] = None, + minimum_healthy_hosts_per_zone: Optional[pulumi.Input['DeploymentConfigMinimumHealthyHostsPerZoneArgs']] = None, + monitor_duration_in_seconds: Optional[pulumi.Input[int]] = None): + if first_zone_monitor_duration_in_seconds is not None: + pulumi.set(__self__, "first_zone_monitor_duration_in_seconds", first_zone_monitor_duration_in_seconds) + if minimum_healthy_hosts_per_zone is not None: + pulumi.set(__self__, "minimum_healthy_hosts_per_zone", minimum_healthy_hosts_per_zone) + if monitor_duration_in_seconds is not None: + pulumi.set(__self__, "monitor_duration_in_seconds", monitor_duration_in_seconds) + + @property + @pulumi.getter(name="firstZoneMonitorDurationInSeconds") + def first_zone_monitor_duration_in_seconds(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "first_zone_monitor_duration_in_seconds") + + @first_zone_monitor_duration_in_seconds.setter + def first_zone_monitor_duration_in_seconds(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "first_zone_monitor_duration_in_seconds", value) + + @property + @pulumi.getter(name="minimumHealthyHostsPerZone") + def minimum_healthy_hosts_per_zone(self) -> Optional[pulumi.Input['DeploymentConfigMinimumHealthyHostsPerZoneArgs']]: + return pulumi.get(self, "minimum_healthy_hosts_per_zone") + + @minimum_healthy_hosts_per_zone.setter + def minimum_healthy_hosts_per_zone(self, value: Optional[pulumi.Input['DeploymentConfigMinimumHealthyHostsPerZoneArgs']]): + pulumi.set(self, "minimum_healthy_hosts_per_zone", value) + + @property + @pulumi.getter(name="monitorDurationInSeconds") + def monitor_duration_in_seconds(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "monitor_duration_in_seconds") + + @monitor_duration_in_seconds.setter + def monitor_duration_in_seconds(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "monitor_duration_in_seconds", value) + + @pulumi.input_type class DeploymentGroupAlarmConfigurationArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/codedeploy/deployment_config.py b/sdk/python/pulumi_aws_native/codedeploy/deployment_config.py index 7e6270f20e..d6c2aa3d90 100644 --- a/sdk/python/pulumi_aws_native/codedeploy/deployment_config.py +++ b/sdk/python/pulumi_aws_native/codedeploy/deployment_config.py @@ -19,13 +19,15 @@ def __init__(__self__, *, compute_platform: Optional[pulumi.Input[str]] = None, deployment_config_name: Optional[pulumi.Input[str]] = None, minimum_healthy_hosts: Optional[pulumi.Input['DeploymentConfigMinimumHealthyHostsArgs']] = None, - traffic_routing_config: Optional[pulumi.Input['DeploymentConfigTrafficRoutingConfigArgs']] = None): + traffic_routing_config: Optional[pulumi.Input['DeploymentConfigTrafficRoutingConfigArgs']] = None, + zonal_config: Optional[pulumi.Input['DeploymentConfigZonalConfigArgs']] = None): """ The set of arguments for constructing a DeploymentConfig resource. :param pulumi.Input[str] compute_platform: The destination platform type for the deployment (Lambda, Server, or ECS). :param pulumi.Input[str] deployment_config_name: A name for the deployment configuration. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the deployment configuration name. For more information, see Name Type. :param pulumi.Input['DeploymentConfigMinimumHealthyHostsArgs'] minimum_healthy_hosts: The minimum number of healthy instances that should be available at any time during the deployment. There are two parameters expected in the input: type and value. :param pulumi.Input['DeploymentConfigTrafficRoutingConfigArgs'] traffic_routing_config: The configuration that specifies how the deployment traffic is routed. + :param pulumi.Input['DeploymentConfigZonalConfigArgs'] zonal_config: The zonal deployment config that specifies how the zonal deployment behaves """ if compute_platform is not None: pulumi.set(__self__, "compute_platform", compute_platform) @@ -35,6 +37,8 @@ def __init__(__self__, *, pulumi.set(__self__, "minimum_healthy_hosts", minimum_healthy_hosts) if traffic_routing_config is not None: pulumi.set(__self__, "traffic_routing_config", traffic_routing_config) + if zonal_config is not None: + pulumi.set(__self__, "zonal_config", zonal_config) @property @pulumi.getter(name="computePlatform") @@ -84,6 +88,18 @@ def traffic_routing_config(self) -> Optional[pulumi.Input['DeploymentConfigTraff def traffic_routing_config(self, value: Optional[pulumi.Input['DeploymentConfigTrafficRoutingConfigArgs']]): pulumi.set(self, "traffic_routing_config", value) + @property + @pulumi.getter(name="zonalConfig") + def zonal_config(self) -> Optional[pulumi.Input['DeploymentConfigZonalConfigArgs']]: + """ + The zonal deployment config that specifies how the zonal deployment behaves + """ + return pulumi.get(self, "zonal_config") + + @zonal_config.setter + def zonal_config(self, value: Optional[pulumi.Input['DeploymentConfigZonalConfigArgs']]): + pulumi.set(self, "zonal_config", value) + class DeploymentConfig(pulumi.CustomResource): @overload @@ -94,6 +110,7 @@ def __init__(__self__, deployment_config_name: Optional[pulumi.Input[str]] = None, minimum_healthy_hosts: Optional[pulumi.Input[pulumi.InputType['DeploymentConfigMinimumHealthyHostsArgs']]] = None, traffic_routing_config: Optional[pulumi.Input[pulumi.InputType['DeploymentConfigTrafficRoutingConfigArgs']]] = None, + zonal_config: Optional[pulumi.Input[pulumi.InputType['DeploymentConfigZonalConfigArgs']]] = None, __props__=None): """ Resource Type definition for AWS::CodeDeploy::DeploymentConfig @@ -104,6 +121,7 @@ def __init__(__self__, :param pulumi.Input[str] deployment_config_name: A name for the deployment configuration. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the deployment configuration name. For more information, see Name Type. :param pulumi.Input[pulumi.InputType['DeploymentConfigMinimumHealthyHostsArgs']] minimum_healthy_hosts: The minimum number of healthy instances that should be available at any time during the deployment. There are two parameters expected in the input: type and value. :param pulumi.Input[pulumi.InputType['DeploymentConfigTrafficRoutingConfigArgs']] traffic_routing_config: The configuration that specifies how the deployment traffic is routed. + :param pulumi.Input[pulumi.InputType['DeploymentConfigZonalConfigArgs']] zonal_config: The zonal deployment config that specifies how the zonal deployment behaves """ ... @overload @@ -133,6 +151,7 @@ def _internal_init(__self__, deployment_config_name: Optional[pulumi.Input[str]] = None, minimum_healthy_hosts: Optional[pulumi.Input[pulumi.InputType['DeploymentConfigMinimumHealthyHostsArgs']]] = None, traffic_routing_config: Optional[pulumi.Input[pulumi.InputType['DeploymentConfigTrafficRoutingConfigArgs']]] = None, + zonal_config: Optional[pulumi.Input[pulumi.InputType['DeploymentConfigZonalConfigArgs']]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -146,7 +165,8 @@ def _internal_init(__self__, __props__.__dict__["deployment_config_name"] = deployment_config_name __props__.__dict__["minimum_healthy_hosts"] = minimum_healthy_hosts __props__.__dict__["traffic_routing_config"] = traffic_routing_config - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["compute_platform", "deployment_config_name", "minimum_healthy_hosts", "traffic_routing_config"]) + __props__.__dict__["zonal_config"] = zonal_config + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["compute_platform", "deployment_config_name", "minimum_healthy_hosts", "traffic_routing_config", "zonal_config"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(DeploymentConfig, __self__).__init__( 'aws-native:codedeploy:DeploymentConfig', @@ -174,6 +194,7 @@ def get(resource_name: str, __props__.__dict__["deployment_config_name"] = None __props__.__dict__["minimum_healthy_hosts"] = None __props__.__dict__["traffic_routing_config"] = None + __props__.__dict__["zonal_config"] = None return DeploymentConfig(resource_name, opts=opts, __props__=__props__) @property @@ -208,3 +229,11 @@ def traffic_routing_config(self) -> pulumi.Output[Optional['outputs.DeploymentCo """ return pulumi.get(self, "traffic_routing_config") + @property + @pulumi.getter(name="zonalConfig") + def zonal_config(self) -> pulumi.Output[Optional['outputs.DeploymentConfigZonalConfig']]: + """ + The zonal deployment config that specifies how the zonal deployment behaves + """ + return pulumi.get(self, "zonal_config") + diff --git a/sdk/python/pulumi_aws_native/codedeploy/deployment_group.py b/sdk/python/pulumi_aws_native/codedeploy/deployment_group.py index edbebfad62..373bd41617 100644 --- a/sdk/python/pulumi_aws_native/codedeploy/deployment_group.py +++ b/sdk/python/pulumi_aws_native/codedeploy/deployment_group.py @@ -34,6 +34,7 @@ def __init__(__self__, *, on_premises_tag_set: Optional[pulumi.Input['DeploymentGroupOnPremisesTagSetArgs']] = None, outdated_instances_strategy: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentGroupTagArgs']]]] = None, + termination_hook_enabled: Optional[pulumi.Input[bool]] = None, trigger_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentGroupTriggerConfigArgs']]]] = None): """ The set of arguments for constructing a DeploymentGroup resource. @@ -72,6 +73,8 @@ def __init__(__self__, *, pulumi.set(__self__, "outdated_instances_strategy", outdated_instances_strategy) if tags is not None: pulumi.set(__self__, "tags", tags) + if termination_hook_enabled is not None: + pulumi.set(__self__, "termination_hook_enabled", termination_hook_enabled) if trigger_configurations is not None: pulumi.set(__self__, "trigger_configurations", trigger_configurations) @@ -237,6 +240,15 @@ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentGroupTa def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentGroupTagArgs']]]]): pulumi.set(self, "tags", value) + @property + @pulumi.getter(name="terminationHookEnabled") + def termination_hook_enabled(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "termination_hook_enabled") + + @termination_hook_enabled.setter + def termination_hook_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "termination_hook_enabled", value) + @property @pulumi.getter(name="triggerConfigurations") def trigger_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeploymentGroupTriggerConfigArgs']]]]: @@ -275,6 +287,7 @@ def __init__(__self__, outdated_instances_strategy: Optional[pulumi.Input[str]] = None, service_role_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeploymentGroupTagArgs']]]]] = None, + termination_hook_enabled: Optional[pulumi.Input[bool]] = None, trigger_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeploymentGroupTriggerConfigArgs']]]]] = None, __props__=None): """ @@ -325,6 +338,7 @@ def _internal_init(__self__, outdated_instances_strategy: Optional[pulumi.Input[str]] = None, service_role_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeploymentGroupTagArgs']]]]] = None, + termination_hook_enabled: Optional[pulumi.Input[bool]] = None, trigger_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeploymentGroupTriggerConfigArgs']]]]] = None, __props__=None): pulumi.log.warn("""DeploymentGroup is deprecated: DeploymentGroup is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") @@ -358,6 +372,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'service_role_arn'") __props__.__dict__["service_role_arn"] = service_role_arn __props__.__dict__["tags"] = tags + __props__.__dict__["termination_hook_enabled"] = termination_hook_enabled __props__.__dict__["trigger_configurations"] = trigger_configurations replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["application_name", "deployment_group_name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) @@ -401,6 +416,7 @@ def get(resource_name: str, __props__.__dict__["outdated_instances_strategy"] = None __props__.__dict__["service_role_arn"] = None __props__.__dict__["tags"] = None + __props__.__dict__["termination_hook_enabled"] = None __props__.__dict__["trigger_configurations"] = None return DeploymentGroup(resource_name, opts=opts, __props__=__props__) @@ -494,6 +510,11 @@ def service_role_arn(self) -> pulumi.Output[str]: def tags(self) -> pulumi.Output[Optional[Sequence['outputs.DeploymentGroupTag']]]: return pulumi.get(self, "tags") + @property + @pulumi.getter(name="terminationHookEnabled") + def termination_hook_enabled(self) -> pulumi.Output[Optional[bool]]: + return pulumi.get(self, "termination_hook_enabled") + @property @pulumi.getter(name="triggerConfigurations") def trigger_configurations(self) -> pulumi.Output[Optional[Sequence['outputs.DeploymentGroupTriggerConfig']]]: diff --git a/sdk/python/pulumi_aws_native/codedeploy/get_deployment_group.py b/sdk/python/pulumi_aws_native/codedeploy/get_deployment_group.py index cc985f2866..69529a3324 100644 --- a/sdk/python/pulumi_aws_native/codedeploy/get_deployment_group.py +++ b/sdk/python/pulumi_aws_native/codedeploy/get_deployment_group.py @@ -19,7 +19,7 @@ @pulumi.output_type class GetDeploymentGroupResult: - def __init__(__self__, alarm_configuration=None, auto_rollback_configuration=None, auto_scaling_groups=None, blue_green_deployment_configuration=None, deployment=None, deployment_config_name=None, deployment_style=None, ec2_tag_filters=None, ec2_tag_set=None, ecs_services=None, id=None, load_balancer_info=None, on_premises_instance_tag_filters=None, on_premises_tag_set=None, outdated_instances_strategy=None, service_role_arn=None, tags=None, trigger_configurations=None): + def __init__(__self__, alarm_configuration=None, auto_rollback_configuration=None, auto_scaling_groups=None, blue_green_deployment_configuration=None, deployment=None, deployment_config_name=None, deployment_style=None, ec2_tag_filters=None, ec2_tag_set=None, ecs_services=None, id=None, load_balancer_info=None, on_premises_instance_tag_filters=None, on_premises_tag_set=None, outdated_instances_strategy=None, service_role_arn=None, tags=None, termination_hook_enabled=None, trigger_configurations=None): if alarm_configuration and not isinstance(alarm_configuration, dict): raise TypeError("Expected argument 'alarm_configuration' to be a dict") pulumi.set(__self__, "alarm_configuration", alarm_configuration) @@ -71,6 +71,9 @@ def __init__(__self__, alarm_configuration=None, auto_rollback_configuration=Non if tags and not isinstance(tags, list): raise TypeError("Expected argument 'tags' to be a list") pulumi.set(__self__, "tags", tags) + if termination_hook_enabled and not isinstance(termination_hook_enabled, bool): + raise TypeError("Expected argument 'termination_hook_enabled' to be a bool") + pulumi.set(__self__, "termination_hook_enabled", termination_hook_enabled) if trigger_configurations and not isinstance(trigger_configurations, list): raise TypeError("Expected argument 'trigger_configurations' to be a list") pulumi.set(__self__, "trigger_configurations", trigger_configurations) @@ -160,6 +163,11 @@ def service_role_arn(self) -> Optional[str]: def tags(self) -> Optional[Sequence['outputs.DeploymentGroupTag']]: return pulumi.get(self, "tags") + @property + @pulumi.getter(name="terminationHookEnabled") + def termination_hook_enabled(self) -> Optional[bool]: + return pulumi.get(self, "termination_hook_enabled") + @property @pulumi.getter(name="triggerConfigurations") def trigger_configurations(self) -> Optional[Sequence['outputs.DeploymentGroupTriggerConfig']]: @@ -189,6 +197,7 @@ def __await__(self): outdated_instances_strategy=self.outdated_instances_strategy, service_role_arn=self.service_role_arn, tags=self.tags, + termination_hook_enabled=self.termination_hook_enabled, trigger_configurations=self.trigger_configurations) @@ -220,6 +229,7 @@ def get_deployment_group(id: Optional[str] = None, outdated_instances_strategy=pulumi.get(__ret__, 'outdated_instances_strategy'), service_role_arn=pulumi.get(__ret__, 'service_role_arn'), tags=pulumi.get(__ret__, 'tags'), + termination_hook_enabled=pulumi.get(__ret__, 'termination_hook_enabled'), trigger_configurations=pulumi.get(__ret__, 'trigger_configurations')) diff --git a/sdk/python/pulumi_aws_native/codedeploy/outputs.py b/sdk/python/pulumi_aws_native/codedeploy/outputs.py index 1d18c0e078..1a92a2cda4 100644 --- a/sdk/python/pulumi_aws_native/codedeploy/outputs.py +++ b/sdk/python/pulumi_aws_native/codedeploy/outputs.py @@ -13,9 +13,11 @@ __all__ = [ 'ApplicationTag', 'DeploymentConfigMinimumHealthyHosts', + 'DeploymentConfigMinimumHealthyHostsPerZone', 'DeploymentConfigTimeBasedCanary', 'DeploymentConfigTimeBasedLinear', 'DeploymentConfigTrafficRoutingConfig', + 'DeploymentConfigZonalConfig', 'DeploymentGroupAlarm', 'DeploymentGroupAlarmConfiguration', 'DeploymentGroupAutoRollbackConfiguration', @@ -82,6 +84,25 @@ def value(self) -> int: return pulumi.get(self, "value") +@pulumi.output_type +class DeploymentConfigMinimumHealthyHostsPerZone(dict): + def __init__(__self__, *, + type: str, + value: int): + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def type(self) -> str: + return pulumi.get(self, "type") + + @property + @pulumi.getter + def value(self) -> int: + return pulumi.get(self, "value") + + @pulumi.output_type class DeploymentConfigTimeBasedCanary(dict): @staticmethod @@ -205,6 +226,56 @@ def time_based_linear(self) -> Optional['outputs.DeploymentConfigTimeBasedLinear return pulumi.get(self, "time_based_linear") +@pulumi.output_type +class DeploymentConfigZonalConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "firstZoneMonitorDurationInSeconds": + suggest = "first_zone_monitor_duration_in_seconds" + elif key == "minimumHealthyHostsPerZone": + suggest = "minimum_healthy_hosts_per_zone" + elif key == "monitorDurationInSeconds": + suggest = "monitor_duration_in_seconds" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DeploymentConfigZonalConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DeploymentConfigZonalConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DeploymentConfigZonalConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + first_zone_monitor_duration_in_seconds: Optional[int] = None, + minimum_healthy_hosts_per_zone: Optional['outputs.DeploymentConfigMinimumHealthyHostsPerZone'] = None, + monitor_duration_in_seconds: Optional[int] = None): + if first_zone_monitor_duration_in_seconds is not None: + pulumi.set(__self__, "first_zone_monitor_duration_in_seconds", first_zone_monitor_duration_in_seconds) + if minimum_healthy_hosts_per_zone is not None: + pulumi.set(__self__, "minimum_healthy_hosts_per_zone", minimum_healthy_hosts_per_zone) + if monitor_duration_in_seconds is not None: + pulumi.set(__self__, "monitor_duration_in_seconds", monitor_duration_in_seconds) + + @property + @pulumi.getter(name="firstZoneMonitorDurationInSeconds") + def first_zone_monitor_duration_in_seconds(self) -> Optional[int]: + return pulumi.get(self, "first_zone_monitor_duration_in_seconds") + + @property + @pulumi.getter(name="minimumHealthyHostsPerZone") + def minimum_healthy_hosts_per_zone(self) -> Optional['outputs.DeploymentConfigMinimumHealthyHostsPerZone']: + return pulumi.get(self, "minimum_healthy_hosts_per_zone") + + @property + @pulumi.getter(name="monitorDurationInSeconds") + def monitor_duration_in_seconds(self) -> Optional[int]: + return pulumi.get(self, "monitor_duration_in_seconds") + + @pulumi.output_type class DeploymentGroupAlarm(dict): def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/codepipeline/_inputs.py b/sdk/python/pulumi_aws_native/codepipeline/_inputs.py index a09fb65b48..1316ac94c9 100644 --- a/sdk/python/pulumi_aws_native/codepipeline/_inputs.py +++ b/sdk/python/pulumi_aws_native/codepipeline/_inputs.py @@ -20,11 +20,16 @@ 'PipelineArtifactStoreArgs', 'PipelineBlockerDeclarationArgs', 'PipelineEncryptionKeyArgs', + 'PipelineGitConfigurationArgs', + 'PipelineGitPushFilterArgs', + 'PipelineGitTagFilterCriteriaArgs', 'PipelineInputArtifactArgs', 'PipelineOutputArtifactArgs', 'PipelineStageDeclarationArgs', 'PipelineStageTransitionArgs', 'PipelineTagArgs', + 'PipelineTriggerDeclarationArgs', + 'PipelineVariableDeclarationArgs', 'WebhookAuthConfigurationArgs', 'WebhookFilterRuleArgs', ] @@ -562,6 +567,80 @@ def type(self, value: pulumi.Input[str]): pulumi.set(self, "type", value) +@pulumi.input_type +class PipelineGitConfigurationArgs: + def __init__(__self__, *, + source_action_name: pulumi.Input[str], + push: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineGitPushFilterArgs']]]] = None): + pulumi.set(__self__, "source_action_name", source_action_name) + if push is not None: + pulumi.set(__self__, "push", push) + + @property + @pulumi.getter(name="sourceActionName") + def source_action_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "source_action_name") + + @source_action_name.setter + def source_action_name(self, value: pulumi.Input[str]): + pulumi.set(self, "source_action_name", value) + + @property + @pulumi.getter + def push(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PipelineGitPushFilterArgs']]]]: + return pulumi.get(self, "push") + + @push.setter + def push(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineGitPushFilterArgs']]]]): + pulumi.set(self, "push", value) + + +@pulumi.input_type +class PipelineGitPushFilterArgs: + def __init__(__self__, *, + tags: Optional[pulumi.Input['PipelineGitTagFilterCriteriaArgs']] = None): + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input['PipelineGitTagFilterCriteriaArgs']]: + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input['PipelineGitTagFilterCriteriaArgs']]): + pulumi.set(self, "tags", value) + + +@pulumi.input_type +class PipelineGitTagFilterCriteriaArgs: + def __init__(__self__, *, + excludes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + includes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + if excludes is not None: + pulumi.set(__self__, "excludes", excludes) + if includes is not None: + pulumi.set(__self__, "includes", includes) + + @property + @pulumi.getter + def excludes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "excludes") + + @excludes.setter + def excludes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "excludes", value) + + @property + @pulumi.getter + def includes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "includes") + + @includes.setter + def includes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "includes", value) + + @pulumi.input_type class PipelineInputArtifactArgs: def __init__(__self__, *, @@ -687,6 +766,74 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class PipelineTriggerDeclarationArgs: + def __init__(__self__, *, + provider_type: pulumi.Input[str], + git_configuration: Optional[pulumi.Input['PipelineGitConfigurationArgs']] = None): + pulumi.set(__self__, "provider_type", provider_type) + if git_configuration is not None: + pulumi.set(__self__, "git_configuration", git_configuration) + + @property + @pulumi.getter(name="providerType") + def provider_type(self) -> pulumi.Input[str]: + return pulumi.get(self, "provider_type") + + @provider_type.setter + def provider_type(self, value: pulumi.Input[str]): + pulumi.set(self, "provider_type", value) + + @property + @pulumi.getter(name="gitConfiguration") + def git_configuration(self) -> Optional[pulumi.Input['PipelineGitConfigurationArgs']]: + return pulumi.get(self, "git_configuration") + + @git_configuration.setter + def git_configuration(self, value: Optional[pulumi.Input['PipelineGitConfigurationArgs']]): + pulumi.set(self, "git_configuration", value) + + +@pulumi.input_type +class PipelineVariableDeclarationArgs: + def __init__(__self__, *, + name: pulumi.Input[str], + default_value: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None): + pulumi.set(__self__, "name", name) + if default_value is not None: + pulumi.set(__self__, "default_value", default_value) + if description is not None: + pulumi.set(__self__, "description", description) + + @property + @pulumi.getter + def name(self) -> pulumi.Input[str]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: pulumi.Input[str]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="defaultValue") + def default_value(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "default_value") + + @default_value.setter + def default_value(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "default_value", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @pulumi.input_type class WebhookAuthConfigurationArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/codepipeline/get_pipeline.py b/sdk/python/pulumi_aws_native/codepipeline/get_pipeline.py index c4404afeaa..61dff4e84b 100644 --- a/sdk/python/pulumi_aws_native/codepipeline/get_pipeline.py +++ b/sdk/python/pulumi_aws_native/codepipeline/get_pipeline.py @@ -19,7 +19,7 @@ @pulumi.output_type class GetPipelineResult: - def __init__(__self__, artifact_store=None, artifact_stores=None, disable_inbound_stage_transitions=None, id=None, restart_execution_on_update=None, role_arn=None, stages=None, tags=None, version=None): + def __init__(__self__, artifact_store=None, artifact_stores=None, disable_inbound_stage_transitions=None, id=None, pipeline_type=None, restart_execution_on_update=None, role_arn=None, stages=None, tags=None, triggers=None, variables=None, version=None): if artifact_store and not isinstance(artifact_store, dict): raise TypeError("Expected argument 'artifact_store' to be a dict") pulumi.set(__self__, "artifact_store", artifact_store) @@ -32,6 +32,9 @@ def __init__(__self__, artifact_store=None, artifact_stores=None, disable_inboun if id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) + if pipeline_type and not isinstance(pipeline_type, str): + raise TypeError("Expected argument 'pipeline_type' to be a str") + pulumi.set(__self__, "pipeline_type", pipeline_type) if restart_execution_on_update and not isinstance(restart_execution_on_update, bool): raise TypeError("Expected argument 'restart_execution_on_update' to be a bool") pulumi.set(__self__, "restart_execution_on_update", restart_execution_on_update) @@ -44,6 +47,12 @@ def __init__(__self__, artifact_store=None, artifact_stores=None, disable_inboun if tags and not isinstance(tags, list): raise TypeError("Expected argument 'tags' to be a list") pulumi.set(__self__, "tags", tags) + if triggers and not isinstance(triggers, list): + raise TypeError("Expected argument 'triggers' to be a list") + pulumi.set(__self__, "triggers", triggers) + if variables and not isinstance(variables, list): + raise TypeError("Expected argument 'variables' to be a list") + pulumi.set(__self__, "variables", variables) if version and not isinstance(version, str): raise TypeError("Expected argument 'version' to be a str") pulumi.set(__self__, "version", version) @@ -68,6 +77,11 @@ def disable_inbound_stage_transitions(self) -> Optional[Sequence['outputs.Pipeli def id(self) -> Optional[str]: return pulumi.get(self, "id") + @property + @pulumi.getter(name="pipelineType") + def pipeline_type(self) -> Optional[str]: + return pulumi.get(self, "pipeline_type") + @property @pulumi.getter(name="restartExecutionOnUpdate") def restart_execution_on_update(self) -> Optional[bool]: @@ -88,6 +102,16 @@ def stages(self) -> Optional[Sequence['outputs.PipelineStageDeclaration']]: def tags(self) -> Optional[Sequence['outputs.PipelineTag']]: return pulumi.get(self, "tags") + @property + @pulumi.getter + def triggers(self) -> Optional[Sequence['outputs.PipelineTriggerDeclaration']]: + return pulumi.get(self, "triggers") + + @property + @pulumi.getter + def variables(self) -> Optional[Sequence['outputs.PipelineVariableDeclaration']]: + return pulumi.get(self, "variables") + @property @pulumi.getter def version(self) -> Optional[str]: @@ -104,10 +128,13 @@ def __await__(self): artifact_stores=self.artifact_stores, disable_inbound_stage_transitions=self.disable_inbound_stage_transitions, id=self.id, + pipeline_type=self.pipeline_type, restart_execution_on_update=self.restart_execution_on_update, role_arn=self.role_arn, stages=self.stages, tags=self.tags, + triggers=self.triggers, + variables=self.variables, version=self.version) @@ -126,10 +153,13 @@ def get_pipeline(id: Optional[str] = None, artifact_stores=pulumi.get(__ret__, 'artifact_stores'), disable_inbound_stage_transitions=pulumi.get(__ret__, 'disable_inbound_stage_transitions'), id=pulumi.get(__ret__, 'id'), + pipeline_type=pulumi.get(__ret__, 'pipeline_type'), restart_execution_on_update=pulumi.get(__ret__, 'restart_execution_on_update'), role_arn=pulumi.get(__ret__, 'role_arn'), stages=pulumi.get(__ret__, 'stages'), tags=pulumi.get(__ret__, 'tags'), + triggers=pulumi.get(__ret__, 'triggers'), + variables=pulumi.get(__ret__, 'variables'), version=pulumi.get(__ret__, 'version')) diff --git a/sdk/python/pulumi_aws_native/codepipeline/outputs.py b/sdk/python/pulumi_aws_native/codepipeline/outputs.py index 7fb1e6a69d..8994132158 100644 --- a/sdk/python/pulumi_aws_native/codepipeline/outputs.py +++ b/sdk/python/pulumi_aws_native/codepipeline/outputs.py @@ -21,11 +21,16 @@ 'PipelineArtifactStoreMap', 'PipelineBlockerDeclaration', 'PipelineEncryptionKey', + 'PipelineGitConfiguration', + 'PipelineGitPushFilter', + 'PipelineGitTagFilterCriteria', 'PipelineInputArtifact', 'PipelineOutputArtifact', 'PipelineStageDeclaration', 'PipelineStageTransition', 'PipelineTag', + 'PipelineTriggerDeclaration', + 'PipelineVariableDeclaration', 'WebhookAuthConfiguration', 'WebhookFilterRule', ] @@ -525,6 +530,77 @@ def type(self) -> str: return pulumi.get(self, "type") +@pulumi.output_type +class PipelineGitConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "sourceActionName": + suggest = "source_action_name" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in PipelineGitConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + PipelineGitConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + PipelineGitConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + source_action_name: str, + push: Optional[Sequence['outputs.PipelineGitPushFilter']] = None): + pulumi.set(__self__, "source_action_name", source_action_name) + if push is not None: + pulumi.set(__self__, "push", push) + + @property + @pulumi.getter(name="sourceActionName") + def source_action_name(self) -> str: + return pulumi.get(self, "source_action_name") + + @property + @pulumi.getter + def push(self) -> Optional[Sequence['outputs.PipelineGitPushFilter']]: + return pulumi.get(self, "push") + + +@pulumi.output_type +class PipelineGitPushFilter(dict): + def __init__(__self__, *, + tags: Optional['outputs.PipelineGitTagFilterCriteria'] = None): + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter + def tags(self) -> Optional['outputs.PipelineGitTagFilterCriteria']: + return pulumi.get(self, "tags") + + +@pulumi.output_type +class PipelineGitTagFilterCriteria(dict): + def __init__(__self__, *, + excludes: Optional[Sequence[str]] = None, + includes: Optional[Sequence[str]] = None): + if excludes is not None: + pulumi.set(__self__, "excludes", excludes) + if includes is not None: + pulumi.set(__self__, "includes", includes) + + @property + @pulumi.getter + def excludes(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "excludes") + + @property + @pulumi.getter + def includes(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "includes") + + @pulumi.output_type class PipelineInputArtifact(dict): def __init__(__self__, *, @@ -631,6 +707,90 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class PipelineTriggerDeclaration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "providerType": + suggest = "provider_type" + elif key == "gitConfiguration": + suggest = "git_configuration" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in PipelineTriggerDeclaration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + PipelineTriggerDeclaration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + PipelineTriggerDeclaration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + provider_type: str, + git_configuration: Optional['outputs.PipelineGitConfiguration'] = None): + pulumi.set(__self__, "provider_type", provider_type) + if git_configuration is not None: + pulumi.set(__self__, "git_configuration", git_configuration) + + @property + @pulumi.getter(name="providerType") + def provider_type(self) -> str: + return pulumi.get(self, "provider_type") + + @property + @pulumi.getter(name="gitConfiguration") + def git_configuration(self) -> Optional['outputs.PipelineGitConfiguration']: + return pulumi.get(self, "git_configuration") + + +@pulumi.output_type +class PipelineVariableDeclaration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultValue": + suggest = "default_value" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in PipelineVariableDeclaration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + PipelineVariableDeclaration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + PipelineVariableDeclaration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + name: str, + default_value: Optional[str] = None, + description: Optional[str] = None): + pulumi.set(__self__, "name", name) + if default_value is not None: + pulumi.set(__self__, "default_value", default_value) + if description is not None: + pulumi.set(__self__, "description", description) + + @property + @pulumi.getter + def name(self) -> str: + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="defaultValue") + def default_value(self) -> Optional[str]: + return pulumi.get(self, "default_value") + + @property + @pulumi.getter + def description(self) -> Optional[str]: + return pulumi.get(self, "description") + + @pulumi.output_type class WebhookAuthConfiguration(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/codepipeline/pipeline.py b/sdk/python/pulumi_aws_native/codepipeline/pipeline.py index 094915e817..43a6297383 100644 --- a/sdk/python/pulumi_aws_native/codepipeline/pipeline.py +++ b/sdk/python/pulumi_aws_native/codepipeline/pipeline.py @@ -22,8 +22,11 @@ def __init__(__self__, *, artifact_stores: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineArtifactStoreMapArgs']]]] = None, disable_inbound_stage_transitions: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineStageTransitionArgs']]]] = None, name: Optional[pulumi.Input[str]] = None, + pipeline_type: Optional[pulumi.Input[str]] = None, restart_execution_on_update: Optional[pulumi.Input[bool]] = None, - tags: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineTagArgs']]]] = None): + tags: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineTagArgs']]]] = None, + triggers: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineTriggerDeclarationArgs']]]] = None, + variables: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineVariableDeclarationArgs']]]] = None): """ The set of arguments for constructing a Pipeline resource. """ @@ -37,10 +40,16 @@ def __init__(__self__, *, pulumi.set(__self__, "disable_inbound_stage_transitions", disable_inbound_stage_transitions) if name is not None: pulumi.set(__self__, "name", name) + if pipeline_type is not None: + pulumi.set(__self__, "pipeline_type", pipeline_type) if restart_execution_on_update is not None: pulumi.set(__self__, "restart_execution_on_update", restart_execution_on_update) if tags is not None: pulumi.set(__self__, "tags", tags) + if triggers is not None: + pulumi.set(__self__, "triggers", triggers) + if variables is not None: + pulumi.set(__self__, "variables", variables) @property @pulumi.getter(name="roleArn") @@ -96,6 +105,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="pipelineType") + def pipeline_type(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "pipeline_type") + + @pipeline_type.setter + def pipeline_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "pipeline_type", value) + @property @pulumi.getter(name="restartExecutionOnUpdate") def restart_execution_on_update(self) -> Optional[pulumi.Input[bool]]: @@ -114,6 +132,24 @@ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PipelineTagArgs'] def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineTagArgs']]]]): pulumi.set(self, "tags", value) + @property + @pulumi.getter + def triggers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PipelineTriggerDeclarationArgs']]]]: + return pulumi.get(self, "triggers") + + @triggers.setter + def triggers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineTriggerDeclarationArgs']]]]): + pulumi.set(self, "triggers", value) + + @property + @pulumi.getter + def variables(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PipelineVariableDeclarationArgs']]]]: + return pulumi.get(self, "variables") + + @variables.setter + def variables(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineVariableDeclarationArgs']]]]): + pulumi.set(self, "variables", value) + warnings.warn("""Pipeline is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) @@ -129,10 +165,13 @@ def __init__(__self__, artifact_stores: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineArtifactStoreMapArgs']]]]] = None, disable_inbound_stage_transitions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineStageTransitionArgs']]]]] = None, name: Optional[pulumi.Input[str]] = None, + pipeline_type: Optional[pulumi.Input[str]] = None, restart_execution_on_update: Optional[pulumi.Input[bool]] = None, role_arn: Optional[pulumi.Input[str]] = None, stages: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineStageDeclarationArgs']]]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineTagArgs']]]]] = None, + triggers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineTriggerDeclarationArgs']]]]] = None, + variables: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineVariableDeclarationArgs']]]]] = None, __props__=None): """ Resource Type definition for AWS::CodePipeline::Pipeline @@ -168,10 +207,13 @@ def _internal_init(__self__, artifact_stores: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineArtifactStoreMapArgs']]]]] = None, disable_inbound_stage_transitions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineStageTransitionArgs']]]]] = None, name: Optional[pulumi.Input[str]] = None, + pipeline_type: Optional[pulumi.Input[str]] = None, restart_execution_on_update: Optional[pulumi.Input[bool]] = None, role_arn: Optional[pulumi.Input[str]] = None, stages: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineStageDeclarationArgs']]]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineTagArgs']]]]] = None, + triggers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineTriggerDeclarationArgs']]]]] = None, + variables: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['PipelineVariableDeclarationArgs']]]]] = None, __props__=None): pulumi.log.warn("""Pipeline is deprecated: Pipeline is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -186,6 +228,7 @@ def _internal_init(__self__, __props__.__dict__["artifact_stores"] = artifact_stores __props__.__dict__["disable_inbound_stage_transitions"] = disable_inbound_stage_transitions __props__.__dict__["name"] = name + __props__.__dict__["pipeline_type"] = pipeline_type __props__.__dict__["restart_execution_on_update"] = restart_execution_on_update if role_arn is None and not opts.urn: raise TypeError("Missing required property 'role_arn'") @@ -194,6 +237,8 @@ def _internal_init(__self__, raise TypeError("Missing required property 'stages'") __props__.__dict__["stages"] = stages __props__.__dict__["tags"] = tags + __props__.__dict__["triggers"] = triggers + __props__.__dict__["variables"] = variables __props__.__dict__["version"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) @@ -223,10 +268,13 @@ def get(resource_name: str, __props__.__dict__["artifact_stores"] = None __props__.__dict__["disable_inbound_stage_transitions"] = None __props__.__dict__["name"] = None + __props__.__dict__["pipeline_type"] = None __props__.__dict__["restart_execution_on_update"] = None __props__.__dict__["role_arn"] = None __props__.__dict__["stages"] = None __props__.__dict__["tags"] = None + __props__.__dict__["triggers"] = None + __props__.__dict__["variables"] = None __props__.__dict__["version"] = None return Pipeline(resource_name, opts=opts, __props__=__props__) @@ -250,6 +298,11 @@ def disable_inbound_stage_transitions(self) -> pulumi.Output[Optional[Sequence[' def name(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "name") + @property + @pulumi.getter(name="pipelineType") + def pipeline_type(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "pipeline_type") + @property @pulumi.getter(name="restartExecutionOnUpdate") def restart_execution_on_update(self) -> pulumi.Output[Optional[bool]]: @@ -270,6 +323,16 @@ def stages(self) -> pulumi.Output[Sequence['outputs.PipelineStageDeclaration']]: def tags(self) -> pulumi.Output[Optional[Sequence['outputs.PipelineTag']]]: return pulumi.get(self, "tags") + @property + @pulumi.getter + def triggers(self) -> pulumi.Output[Optional[Sequence['outputs.PipelineTriggerDeclaration']]]: + return pulumi.get(self, "triggers") + + @property + @pulumi.getter + def variables(self) -> pulumi.Output[Optional[Sequence['outputs.PipelineVariableDeclaration']]]: + return pulumi.get(self, "variables") + @property @pulumi.getter def version(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/configuration/_inputs.py b/sdk/python/pulumi_aws_native/configuration/_inputs.py index 07c711a124..debce2b94e 100644 --- a/sdk/python/pulumi_aws_native/configuration/_inputs.py +++ b/sdk/python/pulumi_aws_native/configuration/_inputs.py @@ -22,6 +22,8 @@ 'ConfigurationAggregatorTagArgs', 'ConfigurationRecorderExclusionByResourceTypesArgs', 'ConfigurationRecorderRecordingGroupArgs', + 'ConfigurationRecorderRecordingModeOverrideArgs', + 'ConfigurationRecorderRecordingModeArgs', 'ConfigurationRecorderRecordingStrategyArgs', 'ConformancePackInputParameterArgs', 'DeliveryChannelConfigSnapshotDeliveryPropertiesArgs', @@ -573,6 +575,73 @@ def resource_types(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str] pulumi.set(self, "resource_types", value) +@pulumi.input_type +class ConfigurationRecorderRecordingModeOverrideArgs: + def __init__(__self__, *, + recording_frequency: pulumi.Input[str], + resource_types: pulumi.Input[Sequence[pulumi.Input[str]]], + description: Optional[pulumi.Input[str]] = None): + pulumi.set(__self__, "recording_frequency", recording_frequency) + pulumi.set(__self__, "resource_types", resource_types) + if description is not None: + pulumi.set(__self__, "description", description) + + @property + @pulumi.getter(name="recordingFrequency") + def recording_frequency(self) -> pulumi.Input[str]: + return pulumi.get(self, "recording_frequency") + + @recording_frequency.setter + def recording_frequency(self, value: pulumi.Input[str]): + pulumi.set(self, "recording_frequency", value) + + @property + @pulumi.getter(name="resourceTypes") + def resource_types(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "resource_types") + + @resource_types.setter + def resource_types(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "resource_types", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + +@pulumi.input_type +class ConfigurationRecorderRecordingModeArgs: + def __init__(__self__, *, + recording_frequency: pulumi.Input[str], + recording_mode_overrides: Optional[pulumi.Input[Sequence[pulumi.Input['ConfigurationRecorderRecordingModeOverrideArgs']]]] = None): + pulumi.set(__self__, "recording_frequency", recording_frequency) + if recording_mode_overrides is not None: + pulumi.set(__self__, "recording_mode_overrides", recording_mode_overrides) + + @property + @pulumi.getter(name="recordingFrequency") + def recording_frequency(self) -> pulumi.Input[str]: + return pulumi.get(self, "recording_frequency") + + @recording_frequency.setter + def recording_frequency(self, value: pulumi.Input[str]): + pulumi.set(self, "recording_frequency", value) + + @property + @pulumi.getter(name="recordingModeOverrides") + def recording_mode_overrides(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ConfigurationRecorderRecordingModeOverrideArgs']]]]: + return pulumi.get(self, "recording_mode_overrides") + + @recording_mode_overrides.setter + def recording_mode_overrides(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ConfigurationRecorderRecordingModeOverrideArgs']]]]): + pulumi.set(self, "recording_mode_overrides", value) + + @pulumi.input_type class ConfigurationRecorderRecordingStrategyArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/configuration/configuration_recorder.py b/sdk/python/pulumi_aws_native/configuration/configuration_recorder.py index 262617a541..dc83bbf4ff 100644 --- a/sdk/python/pulumi_aws_native/configuration/configuration_recorder.py +++ b/sdk/python/pulumi_aws_native/configuration/configuration_recorder.py @@ -18,7 +18,8 @@ class ConfigurationRecorderArgs: def __init__(__self__, *, role_arn: pulumi.Input[str], name: Optional[pulumi.Input[str]] = None, - recording_group: Optional[pulumi.Input['ConfigurationRecorderRecordingGroupArgs']] = None): + recording_group: Optional[pulumi.Input['ConfigurationRecorderRecordingGroupArgs']] = None, + recording_mode: Optional[pulumi.Input['ConfigurationRecorderRecordingModeArgs']] = None): """ The set of arguments for constructing a ConfigurationRecorder resource. """ @@ -27,6 +28,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if recording_group is not None: pulumi.set(__self__, "recording_group", recording_group) + if recording_mode is not None: + pulumi.set(__self__, "recording_mode", recording_mode) @property @pulumi.getter(name="roleArn") @@ -55,6 +58,15 @@ def recording_group(self) -> Optional[pulumi.Input['ConfigurationRecorderRecordi def recording_group(self, value: Optional[pulumi.Input['ConfigurationRecorderRecordingGroupArgs']]): pulumi.set(self, "recording_group", value) + @property + @pulumi.getter(name="recordingMode") + def recording_mode(self) -> Optional[pulumi.Input['ConfigurationRecorderRecordingModeArgs']]: + return pulumi.get(self, "recording_mode") + + @recording_mode.setter + def recording_mode(self, value: Optional[pulumi.Input['ConfigurationRecorderRecordingModeArgs']]): + pulumi.set(self, "recording_mode", value) + warnings.warn("""ConfigurationRecorder is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) @@ -68,6 +80,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, name: Optional[pulumi.Input[str]] = None, recording_group: Optional[pulumi.Input[pulumi.InputType['ConfigurationRecorderRecordingGroupArgs']]] = None, + recording_mode: Optional[pulumi.Input[pulumi.InputType['ConfigurationRecorderRecordingModeArgs']]] = None, role_arn: Optional[pulumi.Input[str]] = None, __props__=None): """ @@ -102,6 +115,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, name: Optional[pulumi.Input[str]] = None, recording_group: Optional[pulumi.Input[pulumi.InputType['ConfigurationRecorderRecordingGroupArgs']]] = None, + recording_mode: Optional[pulumi.Input[pulumi.InputType['ConfigurationRecorderRecordingModeArgs']]] = None, role_arn: Optional[pulumi.Input[str]] = None, __props__=None): pulumi.log.warn("""ConfigurationRecorder is deprecated: ConfigurationRecorder is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") @@ -115,6 +129,7 @@ def _internal_init(__self__, __props__.__dict__["name"] = name __props__.__dict__["recording_group"] = recording_group + __props__.__dict__["recording_mode"] = recording_mode if role_arn is None and not opts.urn: raise TypeError("Missing required property 'role_arn'") __props__.__dict__["role_arn"] = role_arn @@ -144,6 +159,7 @@ def get(resource_name: str, __props__.__dict__["name"] = None __props__.__dict__["recording_group"] = None + __props__.__dict__["recording_mode"] = None __props__.__dict__["role_arn"] = None return ConfigurationRecorder(resource_name, opts=opts, __props__=__props__) @@ -157,6 +173,11 @@ def name(self) -> pulumi.Output[Optional[str]]: def recording_group(self) -> pulumi.Output[Optional['outputs.ConfigurationRecorderRecordingGroup']]: return pulumi.get(self, "recording_group") + @property + @pulumi.getter(name="recordingMode") + def recording_mode(self) -> pulumi.Output[Optional['outputs.ConfigurationRecorderRecordingMode']]: + return pulumi.get(self, "recording_mode") + @property @pulumi.getter(name="roleArn") def role_arn(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/configuration/get_configuration_recorder.py b/sdk/python/pulumi_aws_native/configuration/get_configuration_recorder.py index 08bacf4d61..d81f77d631 100644 --- a/sdk/python/pulumi_aws_native/configuration/get_configuration_recorder.py +++ b/sdk/python/pulumi_aws_native/configuration/get_configuration_recorder.py @@ -19,13 +19,16 @@ @pulumi.output_type class GetConfigurationRecorderResult: - def __init__(__self__, id=None, recording_group=None, role_arn=None): + def __init__(__self__, id=None, recording_group=None, recording_mode=None, role_arn=None): if id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) if recording_group and not isinstance(recording_group, dict): raise TypeError("Expected argument 'recording_group' to be a dict") pulumi.set(__self__, "recording_group", recording_group) + if recording_mode and not isinstance(recording_mode, dict): + raise TypeError("Expected argument 'recording_mode' to be a dict") + pulumi.set(__self__, "recording_mode", recording_mode) if role_arn and not isinstance(role_arn, str): raise TypeError("Expected argument 'role_arn' to be a str") pulumi.set(__self__, "role_arn", role_arn) @@ -40,6 +43,11 @@ def id(self) -> Optional[str]: def recording_group(self) -> Optional['outputs.ConfigurationRecorderRecordingGroup']: return pulumi.get(self, "recording_group") + @property + @pulumi.getter(name="recordingMode") + def recording_mode(self) -> Optional['outputs.ConfigurationRecorderRecordingMode']: + return pulumi.get(self, "recording_mode") + @property @pulumi.getter(name="roleArn") def role_arn(self) -> Optional[str]: @@ -54,6 +62,7 @@ def __await__(self): return GetConfigurationRecorderResult( id=self.id, recording_group=self.recording_group, + recording_mode=self.recording_mode, role_arn=self.role_arn) @@ -70,6 +79,7 @@ def get_configuration_recorder(id: Optional[str] = None, return AwaitableGetConfigurationRecorderResult( id=pulumi.get(__ret__, 'id'), recording_group=pulumi.get(__ret__, 'recording_group'), + recording_mode=pulumi.get(__ret__, 'recording_mode'), role_arn=pulumi.get(__ret__, 'role_arn')) diff --git a/sdk/python/pulumi_aws_native/configuration/outputs.py b/sdk/python/pulumi_aws_native/configuration/outputs.py index c833581787..caea930e9f 100644 --- a/sdk/python/pulumi_aws_native/configuration/outputs.py +++ b/sdk/python/pulumi_aws_native/configuration/outputs.py @@ -23,6 +23,8 @@ 'ConfigurationAggregatorTag', 'ConfigurationRecorderExclusionByResourceTypes', 'ConfigurationRecorderRecordingGroup', + 'ConfigurationRecorderRecordingMode', + 'ConfigurationRecorderRecordingModeOverride', 'ConfigurationRecorderRecordingStrategy', 'ConformancePackInputParameter', 'DeliveryChannelConfigSnapshotDeliveryProperties', @@ -640,6 +642,91 @@ def resource_types(self) -> Optional[Sequence[str]]: return pulumi.get(self, "resource_types") +@pulumi.output_type +class ConfigurationRecorderRecordingMode(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "recordingFrequency": + suggest = "recording_frequency" + elif key == "recordingModeOverrides": + suggest = "recording_mode_overrides" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ConfigurationRecorderRecordingMode. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ConfigurationRecorderRecordingMode.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ConfigurationRecorderRecordingMode.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + recording_frequency: str, + recording_mode_overrides: Optional[Sequence['outputs.ConfigurationRecorderRecordingModeOverride']] = None): + pulumi.set(__self__, "recording_frequency", recording_frequency) + if recording_mode_overrides is not None: + pulumi.set(__self__, "recording_mode_overrides", recording_mode_overrides) + + @property + @pulumi.getter(name="recordingFrequency") + def recording_frequency(self) -> str: + return pulumi.get(self, "recording_frequency") + + @property + @pulumi.getter(name="recordingModeOverrides") + def recording_mode_overrides(self) -> Optional[Sequence['outputs.ConfigurationRecorderRecordingModeOverride']]: + return pulumi.get(self, "recording_mode_overrides") + + +@pulumi.output_type +class ConfigurationRecorderRecordingModeOverride(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "recordingFrequency": + suggest = "recording_frequency" + elif key == "resourceTypes": + suggest = "resource_types" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ConfigurationRecorderRecordingModeOverride. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ConfigurationRecorderRecordingModeOverride.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ConfigurationRecorderRecordingModeOverride.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + recording_frequency: str, + resource_types: Sequence[str], + description: Optional[str] = None): + pulumi.set(__self__, "recording_frequency", recording_frequency) + pulumi.set(__self__, "resource_types", resource_types) + if description is not None: + pulumi.set(__self__, "description", description) + + @property + @pulumi.getter(name="recordingFrequency") + def recording_frequency(self) -> str: + return pulumi.get(self, "recording_frequency") + + @property + @pulumi.getter(name="resourceTypes") + def resource_types(self) -> Sequence[str]: + return pulumi.get(self, "resource_types") + + @property + @pulumi.getter + def description(self) -> Optional[str]: + return pulumi.get(self, "description") + + @pulumi.output_type class ConfigurationRecorderRecordingStrategy(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/connect/_enums.py b/sdk/python/pulumi_aws_native/connect/_enums.py index 4d925e7739..7c9938817a 100644 --- a/sdk/python/pulumi_aws_native/connect/_enums.py +++ b/sdk/python/pulumi_aws_native/connect/_enums.py @@ -190,6 +190,7 @@ class IntegrationAssociationIntegrationType(str, Enum): """ LEX_BOT = "LEX_BOT" LAMBDA_FUNCTION = "LAMBDA_FUNCTION" + APPLICATION = "APPLICATION" class QueueStatus(str, Enum): @@ -277,6 +278,8 @@ class RuleTriggerEventSourceEventSourceName(str, Enum): ON_ZENDESK_TICKET_STATUS_UPDATE = "OnZendeskTicketStatusUpdate" ON_SALESFORCE_CASE_CREATE = "OnSalesforceCaseCreate" ON_METRIC_DATA_UPDATE = "OnMetricDataUpdate" + ON_CASE_CREATE = "OnCaseCreate" + ON_CASES_UPDATE = "OnCasesUpdate" class TaskTemplateFieldType(str, Enum): diff --git a/sdk/python/pulumi_aws_native/connect/_inputs.py b/sdk/python/pulumi_aws_native/connect/_inputs.py index 4241bf7de7..3eadd71c9c 100644 --- a/sdk/python/pulumi_aws_native/connect/_inputs.py +++ b/sdk/python/pulumi_aws_native/connect/_inputs.py @@ -39,6 +39,7 @@ 'InstanceStorageConfigKinesisStreamConfigArgs', 'InstanceStorageConfigKinesisVideoStreamConfigArgs', 'InstanceStorageConfigS3ConfigArgs', + 'InstanceTagArgs', 'PhoneNumberTagArgs', 'PromptTagArgs', 'QueueOutboundCallerConfigArgs', @@ -55,12 +56,17 @@ 'RoutingProfileTagArgs', 'RuleActionsArgs', 'RuleAssignContactCategoryActionArgs', + 'RuleCreateCaseActionArgs', + 'RuleEndAssociatedTasksActionArgs', 'RuleEventBridgeActionArgs', + 'RuleFieldValueArgs', + 'RuleFieldArgs', 'RuleNotificationRecipientTypeArgs', 'RuleSendNotificationActionArgs', 'RuleTagArgs', 'RuleTaskActionArgs', 'RuleTriggerEventSourceArgs', + 'RuleUpdateCaseActionArgs', 'SecurityProfileTagArgs', 'TaskTemplateDefaultFieldValueArgs', 'TaskTemplateFieldIdentifierArgs', @@ -1283,13 +1289,21 @@ def stream_arn(self, value: pulumi.Input[str]): @pulumi.input_type class InstanceStorageConfigKinesisVideoStreamConfigArgs: def __init__(__self__, *, + encryption_config: pulumi.Input['InstanceStorageConfigEncryptionConfigArgs'], prefix: pulumi.Input[str], - retention_period_hours: pulumi.Input[float], - encryption_config: Optional[pulumi.Input['InstanceStorageConfigEncryptionConfigArgs']] = None): + retention_period_hours: pulumi.Input[float]): + pulumi.set(__self__, "encryption_config", encryption_config) pulumi.set(__self__, "prefix", prefix) pulumi.set(__self__, "retention_period_hours", retention_period_hours) - if encryption_config is not None: - pulumi.set(__self__, "encryption_config", encryption_config) + + @property + @pulumi.getter(name="encryptionConfig") + def encryption_config(self) -> pulumi.Input['InstanceStorageConfigEncryptionConfigArgs']: + return pulumi.get(self, "encryption_config") + + @encryption_config.setter + def encryption_config(self, value: pulumi.Input['InstanceStorageConfigEncryptionConfigArgs']): + pulumi.set(self, "encryption_config", value) @property @pulumi.getter @@ -1309,15 +1323,6 @@ def retention_period_hours(self) -> pulumi.Input[float]: def retention_period_hours(self, value: pulumi.Input[float]): pulumi.set(self, "retention_period_hours", value) - @property - @pulumi.getter(name="encryptionConfig") - def encryption_config(self) -> Optional[pulumi.Input['InstanceStorageConfigEncryptionConfigArgs']]: - return pulumi.get(self, "encryption_config") - - @encryption_config.setter - def encryption_config(self, value: Optional[pulumi.Input['InstanceStorageConfigEncryptionConfigArgs']]): - pulumi.set(self, "encryption_config", value) - @pulumi.input_type class InstanceStorageConfigS3ConfigArgs: @@ -1358,6 +1363,44 @@ def encryption_config(self, value: Optional[pulumi.Input['InstanceStorageConfigE pulumi.set(self, "encryption_config", value) +@pulumi.input_type +class InstanceTagArgs: + 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) + + @pulumi.input_type class PhoneNumberTagArgs: def __init__(__self__, *, @@ -1854,20 +1897,29 @@ def value(self, value: pulumi.Input[str]): class RuleActionsArgs: def __init__(__self__, *, assign_contact_category_actions: Optional[pulumi.Input[Sequence[pulumi.Input['RuleAssignContactCategoryActionArgs']]]] = None, + create_case_actions: Optional[pulumi.Input[Sequence[pulumi.Input['RuleCreateCaseActionArgs']]]] = None, + end_associated_task_actions: Optional[pulumi.Input[Sequence[pulumi.Input['RuleEndAssociatedTasksActionArgs']]]] = None, event_bridge_actions: Optional[pulumi.Input[Sequence[pulumi.Input['RuleEventBridgeActionArgs']]]] = None, send_notification_actions: Optional[pulumi.Input[Sequence[pulumi.Input['RuleSendNotificationActionArgs']]]] = None, - task_actions: Optional[pulumi.Input[Sequence[pulumi.Input['RuleTaskActionArgs']]]] = None): + 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. """ if assign_contact_category_actions is not None: pulumi.set(__self__, "assign_contact_category_actions", assign_contact_category_actions) + if create_case_actions is not None: + pulumi.set(__self__, "create_case_actions", create_case_actions) + if end_associated_task_actions is not None: + pulumi.set(__self__, "end_associated_task_actions", end_associated_task_actions) if event_bridge_actions is not None: pulumi.set(__self__, "event_bridge_actions", event_bridge_actions) if send_notification_actions is not None: pulumi.set(__self__, "send_notification_actions", send_notification_actions) if task_actions is not None: pulumi.set(__self__, "task_actions", task_actions) + if update_case_actions is not None: + pulumi.set(__self__, "update_case_actions", update_case_actions) @property @pulumi.getter(name="assignContactCategoryActions") @@ -1878,6 +1930,24 @@ def assign_contact_category_actions(self) -> Optional[pulumi.Input[Sequence[pulu def assign_contact_category_actions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RuleAssignContactCategoryActionArgs']]]]): pulumi.set(self, "assign_contact_category_actions", value) + @property + @pulumi.getter(name="createCaseActions") + def create_case_actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleCreateCaseActionArgs']]]]: + return pulumi.get(self, "create_case_actions") + + @create_case_actions.setter + def create_case_actions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RuleCreateCaseActionArgs']]]]): + pulumi.set(self, "create_case_actions", value) + + @property + @pulumi.getter(name="endAssociatedTaskActions") + def end_associated_task_actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleEndAssociatedTasksActionArgs']]]]: + return pulumi.get(self, "end_associated_task_actions") + + @end_associated_task_actions.setter + def end_associated_task_actions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RuleEndAssociatedTasksActionArgs']]]]): + pulumi.set(self, "end_associated_task_actions", value) + @property @pulumi.getter(name="eventBridgeActions") def event_bridge_actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleEventBridgeActionArgs']]]]: @@ -1905,6 +1975,15 @@ def task_actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleTaskA def task_actions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RuleTaskActionArgs']]]]): pulumi.set(self, "task_actions", value) + @property + @pulumi.getter(name="updateCaseActions") + def update_case_actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RuleUpdateCaseActionArgs']]]]: + return pulumi.get(self, "update_case_actions") + + @update_case_actions.setter + def update_case_actions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RuleUpdateCaseActionArgs']]]]): + pulumi.set(self, "update_case_actions", value) + @pulumi.input_type class RuleAssignContactCategoryActionArgs: @@ -1915,6 +1994,49 @@ def __init__(__self__): pass +@pulumi.input_type +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) + + @property + @pulumi.getter + def fields(self) -> pulumi.Input[Sequence[pulumi.Input['RuleFieldArgs']]]: + return pulumi.get(self, "fields") + + @fields.setter + def fields(self, value: pulumi.Input[Sequence[pulumi.Input['RuleFieldArgs']]]): + pulumi.set(self, "fields", value) + + @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 + def template_id(self, value: pulumi.Input[str]): + pulumi.set(self, "template_id", value) + + +@pulumi.input_type +class RuleEndAssociatedTasksActionArgs: + def __init__(__self__): + """ + The definition for ending associated task action. + """ + pass + + @pulumi.input_type class RuleEventBridgeActionArgs: def __init__(__self__, *, @@ -1938,6 +2060,96 @@ def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) +@pulumi.input_type +class RuleFieldValueArgs: + def __init__(__self__, *, + boolean_value: Optional[pulumi.Input[bool]] = None, + double_value: Optional[pulumi.Input[float]] = None, + empty_value: Optional[Any] = None, + string_value: Optional[pulumi.Input[str]] = None): + """ + The value of the field. + """ + if boolean_value is not None: + pulumi.set(__self__, "boolean_value", boolean_value) + if double_value is not None: + pulumi.set(__self__, "double_value", double_value) + if empty_value is not None: + pulumi.set(__self__, "empty_value", empty_value) + if string_value is not None: + pulumi.set(__self__, "string_value", string_value) + + @property + @pulumi.getter(name="booleanValue") + def boolean_value(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "boolean_value") + + @boolean_value.setter + def boolean_value(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "boolean_value", value) + + @property + @pulumi.getter(name="doubleValue") + def double_value(self) -> Optional[pulumi.Input[float]]: + return pulumi.get(self, "double_value") + + @double_value.setter + def double_value(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "double_value", value) + + @property + @pulumi.getter(name="emptyValue") + def empty_value(self) -> Optional[Any]: + return pulumi.get(self, "empty_value") + + @empty_value.setter + def empty_value(self, value: Optional[Any]): + pulumi.set(self, "empty_value", value) + + @property + @pulumi.getter(name="stringValue") + def string_value(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "string_value") + + @string_value.setter + def string_value(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "string_value", value) + + +@pulumi.input_type +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 + def id(self, value: pulumi.Input[str]): + pulumi.set(self, "id", value) + + @property + @pulumi.getter + def value(self) -> pulumi.Input['RuleFieldValueArgs']: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: pulumi.Input['RuleFieldValueArgs']): + pulumi.set(self, "value", value) + + @pulumi.input_type class RuleNotificationRecipientTypeArgs: def __init__(__self__, *, @@ -2205,6 +2417,25 @@ def integration_association_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "integration_association_arn", value) +@pulumi.input_type +class RuleUpdateCaseActionArgs: + def __init__(__self__, *, + fields: pulumi.Input[Sequence[pulumi.Input['RuleFieldArgs']]]): + """ + The definition for update case action. + """ + pulumi.set(__self__, "fields", fields) + + @property + @pulumi.getter + def fields(self) -> pulumi.Input[Sequence[pulumi.Input['RuleFieldArgs']]]: + return pulumi.get(self, "fields") + + @fields.setter + def fields(self, value: pulumi.Input[Sequence[pulumi.Input['RuleFieldArgs']]]): + pulumi.set(self, "fields", value) + + @pulumi.input_type class SecurityProfileTagArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/connect/get_instance.py b/sdk/python/pulumi_aws_native/connect/get_instance.py index 2025616512..f77f58d66e 100644 --- a/sdk/python/pulumi_aws_native/connect/get_instance.py +++ b/sdk/python/pulumi_aws_native/connect/get_instance.py @@ -20,7 +20,7 @@ @pulumi.output_type class GetInstanceResult: - def __init__(__self__, arn=None, attributes=None, created_time=None, id=None, instance_status=None, service_role=None): + def __init__(__self__, arn=None, attributes=None, created_time=None, id=None, instance_status=None, service_role=None, tags=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -39,6 +39,9 @@ def __init__(__self__, arn=None, attributes=None, created_time=None, id=None, in if service_role and not isinstance(service_role, str): raise TypeError("Expected argument 'service_role' to be a str") pulumi.set(__self__, "service_role", service_role) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) @property @pulumi.getter @@ -88,6 +91,14 @@ def service_role(self) -> Optional[str]: """ return pulumi.get(self, "service_role") + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.InstanceTag']]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + class AwaitableGetInstanceResult(GetInstanceResult): # pylint: disable=using-constant-test @@ -100,7 +111,8 @@ def __await__(self): created_time=self.created_time, id=self.id, instance_status=self.instance_status, - service_role=self.service_role) + service_role=self.service_role, + tags=self.tags) def get_instance(arn: Optional[str] = None, @@ -122,7 +134,8 @@ def get_instance(arn: Optional[str] = None, created_time=pulumi.get(__ret__, 'created_time'), id=pulumi.get(__ret__, 'id'), instance_status=pulumi.get(__ret__, 'instance_status'), - service_role=pulumi.get(__ret__, 'service_role')) + service_role=pulumi.get(__ret__, 'service_role'), + tags=pulumi.get(__ret__, 'tags')) @_utilities.lift_output_func(get_instance) diff --git a/sdk/python/pulumi_aws_native/connect/instance.py b/sdk/python/pulumi_aws_native/connect/instance.py index 408f6934b9..b585f3d25b 100644 --- a/sdk/python/pulumi_aws_native/connect/instance.py +++ b/sdk/python/pulumi_aws_native/connect/instance.py @@ -20,13 +20,15 @@ def __init__(__self__, *, attributes: pulumi.Input['InstanceAttributesArgs'], identity_management_type: pulumi.Input['InstanceIdentityManagementType'], directory_id: Optional[pulumi.Input[str]] = None, - instance_alias: Optional[pulumi.Input[str]] = None): + instance_alias: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceTagArgs']]]] = None): """ The set of arguments for constructing a Instance resource. :param pulumi.Input['InstanceAttributesArgs'] attributes: The attributes for the instance. :param pulumi.Input['InstanceIdentityManagementType'] identity_management_type: Specifies the type of directory integration for new instance. :param pulumi.Input[str] directory_id: Existing directoryId user wants to map to the new Connect instance. :param pulumi.Input[str] instance_alias: Alias of the new directory created as part of new instance creation. + :param pulumi.Input[Sequence[pulumi.Input['InstanceTagArgs']]] tags: An array of key-value pairs to apply to this resource. """ pulumi.set(__self__, "attributes", attributes) pulumi.set(__self__, "identity_management_type", identity_management_type) @@ -34,6 +36,8 @@ def __init__(__self__, *, pulumi.set(__self__, "directory_id", directory_id) if instance_alias is not None: pulumi.set(__self__, "instance_alias", instance_alias) + if tags is not None: + pulumi.set(__self__, "tags", tags) @property @pulumi.getter @@ -83,6 +87,18 @@ def instance_alias(self) -> Optional[pulumi.Input[str]]: def instance_alias(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "instance_alias", value) + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceTagArgs']]]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceTagArgs']]]]): + pulumi.set(self, "tags", value) + class Instance(pulumi.CustomResource): @overload @@ -93,6 +109,7 @@ def __init__(__self__, directory_id: Optional[pulumi.Input[str]] = None, identity_management_type: Optional[pulumi.Input['InstanceIdentityManagementType']] = None, instance_alias: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['InstanceTagArgs']]]]] = None, __props__=None): """ Resource Type definition for AWS::Connect::Instance @@ -103,6 +120,7 @@ def __init__(__self__, :param pulumi.Input[str] directory_id: Existing directoryId user wants to map to the new Connect instance. :param pulumi.Input['InstanceIdentityManagementType'] identity_management_type: Specifies the type of directory integration for new instance. :param pulumi.Input[str] instance_alias: Alias of the new directory created as part of new instance creation. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['InstanceTagArgs']]]] tags: An array of key-value pairs to apply to this resource. """ ... @overload @@ -132,6 +150,7 @@ def _internal_init(__self__, directory_id: Optional[pulumi.Input[str]] = None, identity_management_type: Optional[pulumi.Input['InstanceIdentityManagementType']] = None, instance_alias: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['InstanceTagArgs']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -149,6 +168,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'identity_management_type'") __props__.__dict__["identity_management_type"] = identity_management_type __props__.__dict__["instance_alias"] = instance_alias + __props__.__dict__["tags"] = tags __props__.__dict__["arn"] = None __props__.__dict__["created_time"] = None __props__.__dict__["instance_status"] = None @@ -185,6 +205,7 @@ def get(resource_name: str, __props__.__dict__["instance_alias"] = None __props__.__dict__["instance_status"] = None __props__.__dict__["service_role"] = None + __props__.__dict__["tags"] = None return Instance(resource_name, opts=opts, __props__=__props__) @property @@ -251,3 +272,11 @@ def service_role(self) -> pulumi.Output[str]: """ return pulumi.get(self, "service_role") + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceTag']]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + diff --git a/sdk/python/pulumi_aws_native/connect/outputs.py b/sdk/python/pulumi_aws_native/connect/outputs.py index fc83a10159..6da7e94161 100644 --- a/sdk/python/pulumi_aws_native/connect/outputs.py +++ b/sdk/python/pulumi_aws_native/connect/outputs.py @@ -40,6 +40,7 @@ 'InstanceStorageConfigKinesisStreamConfig', 'InstanceStorageConfigKinesisVideoStreamConfig', 'InstanceStorageConfigS3Config', + 'InstanceTag', 'PhoneNumberTag', 'PromptTag', 'QueueOutboundCallerConfig', @@ -56,12 +57,17 @@ 'RoutingProfileTag', 'RuleActions', 'RuleAssignContactCategoryAction', + 'RuleCreateCaseAction', + 'RuleEndAssociatedTasksAction', 'RuleEventBridgeAction', + 'RuleField', + 'RuleFieldValue', 'RuleNotificationRecipientType', 'RuleSendNotificationAction', 'RuleTag', 'RuleTaskAction', 'RuleTriggerEventSource', + 'RuleUpdateCaseAction', 'SecurityProfileTag', 'TaskTemplateDefaultFieldValue', 'TaskTemplateField', @@ -1399,10 +1405,10 @@ class InstanceStorageConfigKinesisVideoStreamConfig(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "retentionPeriodHours": - suggest = "retention_period_hours" - elif key == "encryptionConfig": + if key == "encryptionConfig": suggest = "encryption_config" + elif key == "retentionPeriodHours": + suggest = "retention_period_hours" if suggest: pulumi.log.warn(f"Key '{key}' not found in InstanceStorageConfigKinesisVideoStreamConfig. Access the value via the '{suggest}' property getter instead.") @@ -1416,13 +1422,17 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, + encryption_config: 'outputs.InstanceStorageConfigEncryptionConfig', prefix: str, - retention_period_hours: float, - encryption_config: Optional['outputs.InstanceStorageConfigEncryptionConfig'] = None): + retention_period_hours: float): + pulumi.set(__self__, "encryption_config", encryption_config) pulumi.set(__self__, "prefix", prefix) pulumi.set(__self__, "retention_period_hours", retention_period_hours) - if encryption_config is not None: - pulumi.set(__self__, "encryption_config", encryption_config) + + @property + @pulumi.getter(name="encryptionConfig") + def encryption_config(self) -> 'outputs.InstanceStorageConfigEncryptionConfig': + return pulumi.get(self, "encryption_config") @property @pulumi.getter @@ -1434,11 +1444,6 @@ def prefix(self) -> str: def retention_period_hours(self) -> float: return pulumi.get(self, "retention_period_hours") - @property - @pulumi.getter(name="encryptionConfig") - def encryption_config(self) -> Optional['outputs.InstanceStorageConfigEncryptionConfig']: - return pulumi.get(self, "encryption_config") - @pulumi.output_type class InstanceStorageConfigS3Config(dict): @@ -1488,6 +1493,39 @@ def encryption_config(self) -> Optional['outputs.InstanceStorageConfigEncryption return pulumi.get(self, "encryption_config") +@pulumi.output_type +class InstanceTag(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 PhoneNumberTag(dict): """ @@ -2075,12 +2113,18 @@ def __key_warning(key: str): suggest = None if key == "assignContactCategoryActions": suggest = "assign_contact_category_actions" + elif key == "createCaseActions": + suggest = "create_case_actions" + elif key == "endAssociatedTaskActions": + suggest = "end_associated_task_actions" elif key == "eventBridgeActions": suggest = "event_bridge_actions" elif key == "sendNotificationActions": suggest = "send_notification_actions" elif key == "taskActions": suggest = "task_actions" + elif key == "updateCaseActions": + suggest = "update_case_actions" if suggest: pulumi.log.warn(f"Key '{key}' not found in RuleActions. Access the value via the '{suggest}' property getter instead.") @@ -2095,26 +2139,45 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, assign_contact_category_actions: Optional[Sequence['outputs.RuleAssignContactCategoryAction']] = None, + create_case_actions: Optional[Sequence['outputs.RuleCreateCaseAction']] = None, + end_associated_task_actions: Optional[Sequence['outputs.RuleEndAssociatedTasksAction']] = None, event_bridge_actions: Optional[Sequence['outputs.RuleEventBridgeAction']] = None, send_notification_actions: Optional[Sequence['outputs.RuleSendNotificationAction']] = None, - task_actions: Optional[Sequence['outputs.RuleTaskAction']] = None): + 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. """ if assign_contact_category_actions is not None: pulumi.set(__self__, "assign_contact_category_actions", assign_contact_category_actions) + if create_case_actions is not None: + pulumi.set(__self__, "create_case_actions", create_case_actions) + if end_associated_task_actions is not None: + pulumi.set(__self__, "end_associated_task_actions", end_associated_task_actions) if event_bridge_actions is not None: pulumi.set(__self__, "event_bridge_actions", event_bridge_actions) if send_notification_actions is not None: pulumi.set(__self__, "send_notification_actions", send_notification_actions) if task_actions is not None: pulumi.set(__self__, "task_actions", task_actions) + if update_case_actions is not None: + pulumi.set(__self__, "update_case_actions", update_case_actions) @property @pulumi.getter(name="assignContactCategoryActions") def assign_contact_category_actions(self) -> Optional[Sequence['outputs.RuleAssignContactCategoryAction']]: return pulumi.get(self, "assign_contact_category_actions") + @property + @pulumi.getter(name="createCaseActions") + def create_case_actions(self) -> Optional[Sequence['outputs.RuleCreateCaseAction']]: + return pulumi.get(self, "create_case_actions") + + @property + @pulumi.getter(name="endAssociatedTaskActions") + def end_associated_task_actions(self) -> Optional[Sequence['outputs.RuleEndAssociatedTasksAction']]: + return pulumi.get(self, "end_associated_task_actions") + @property @pulumi.getter(name="eventBridgeActions") def event_bridge_actions(self) -> Optional[Sequence['outputs.RuleEventBridgeAction']]: @@ -2130,6 +2193,11 @@ def send_notification_actions(self) -> Optional[Sequence['outputs.RuleSendNotifi def task_actions(self) -> Optional[Sequence['outputs.RuleTaskAction']]: return pulumi.get(self, "task_actions") + @property + @pulumi.getter(name="updateCaseActions") + def update_case_actions(self) -> Optional[Sequence['outputs.RuleUpdateCaseAction']]: + return pulumi.get(self, "update_case_actions") + @pulumi.output_type class RuleAssignContactCategoryAction(dict): @@ -2143,6 +2211,64 @@ def __init__(__self__): pass +@pulumi.output_type +class RuleCreateCaseAction(dict): + """ + The definition for create case action. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "templateId": + suggest = "template_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in RuleCreateCaseAction. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + RuleCreateCaseAction.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + RuleCreateCaseAction.__key_warning(key) + return super().get(key, default) + + 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) + + @property + @pulumi.getter + def fields(self) -> Sequence['outputs.RuleField']: + return pulumi.get(self, "fields") + + @property + @pulumi.getter(name="templateId") + def template_id(self) -> str: + """ + The Id of template. + """ + return pulumi.get(self, "template_id") + + +@pulumi.output_type +class RuleEndAssociatedTasksAction(dict): + """ + The definition for ending associated task action. + """ + def __init__(__self__): + """ + The definition for ending associated task action. + """ + pass + + @pulumi.output_type class RuleEventBridgeAction(dict): """ @@ -2165,6 +2291,101 @@ def name(self) -> str: 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 + @pulumi.getter + def value(self) -> 'outputs.RuleFieldValue': + return pulumi.get(self, "value") + + +@pulumi.output_type +class RuleFieldValue(dict): + """ + The value of the field. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "booleanValue": + suggest = "boolean_value" + elif key == "doubleValue": + suggest = "double_value" + elif key == "emptyValue": + suggest = "empty_value" + elif key == "stringValue": + suggest = "string_value" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in RuleFieldValue. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + RuleFieldValue.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + RuleFieldValue.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + boolean_value: Optional[bool] = None, + double_value: Optional[float] = None, + empty_value: Optional[Any] = None, + string_value: Optional[str] = None): + """ + The value of the field. + """ + if boolean_value is not None: + pulumi.set(__self__, "boolean_value", boolean_value) + if double_value is not None: + pulumi.set(__self__, "double_value", double_value) + if empty_value is not None: + pulumi.set(__self__, "empty_value", empty_value) + if string_value is not None: + pulumi.set(__self__, "string_value", string_value) + + @property + @pulumi.getter(name="booleanValue") + def boolean_value(self) -> Optional[bool]: + return pulumi.get(self, "boolean_value") + + @property + @pulumi.getter(name="doubleValue") + def double_value(self) -> Optional[float]: + return pulumi.get(self, "double_value") + + @property + @pulumi.getter(name="emptyValue") + def empty_value(self) -> Optional[Any]: + return pulumi.get(self, "empty_value") + + @property + @pulumi.getter(name="stringValue") + def string_value(self) -> Optional[str]: + return pulumi.get(self, "string_value") + + @pulumi.output_type class RuleNotificationRecipientType(dict): """ @@ -2461,6 +2682,24 @@ def integration_association_arn(self) -> Optional[str]: 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 + @pulumi.getter + def fields(self) -> Sequence['outputs.RuleField']: + return pulumi.get(self, "fields") + + @pulumi.output_type class SecurityProfileTag(dict): """ diff --git a/sdk/python/pulumi_aws_native/dms/__init__.py b/sdk/python/pulumi_aws_native/dms/__init__.py index 9ab063658a..678a919c11 100644 --- a/sdk/python/pulumi_aws_native/dms/__init__.py +++ b/sdk/python/pulumi_aws_native/dms/__init__.py @@ -7,15 +7,21 @@ # Export this package's modules as members: from ._enums import * from .certificate import * +from .data_provider import * from .endpoint import * from .event_subscription import * from .get_certificate import * +from .get_data_provider import * from .get_endpoint import * from .get_event_subscription import * +from .get_instance_profile import * +from .get_migration_project import * from .get_replication_config import * from .get_replication_instance import * from .get_replication_subnet_group import * from .get_replication_task import * +from .instance_profile import * +from .migration_project import * from .replication_config import * from .replication_instance import * from .replication_subnet_group import * diff --git a/sdk/python/pulumi_aws_native/dms/_enums.py b/sdk/python/pulumi_aws_native/dms/_enums.py index 63dbf7dd99..2707b9b4a0 100644 --- a/sdk/python/pulumi_aws_native/dms/_enums.py +++ b/sdk/python/pulumi_aws_native/dms/_enums.py @@ -5,10 +5,41 @@ from enum import Enum __all__ = [ + 'DataProviderDmsSslModeValue', + 'DataProviderEngine', + 'InstanceProfileNetworkType', 'ReplicationConfigReplicationType', ] +class DataProviderDmsSslModeValue(str, Enum): + NONE = "none" + REQUIRE = "require" + VERIFY_CA = "verify_ca" + VERIFY_FULL = "verify_full" + + +class DataProviderEngine(str, Enum): + """ + The property describes a data engine for the data provider. + """ + POSTGRESQL = "postgresql" + MYSQL = "mysql" + ORACLE = "oracle" + SQLSERVER = "sqlserver" + AURORA = "aurora" + AURORA_POSTGRESQL = "aurora_postgresql" + + +class InstanceProfileNetworkType(str, Enum): + """ + The property describes a network type for the instance profile. + """ + IPV4 = "IPV4" + IPV6 = "IPV6" + DUAL = "DUAL" + + class ReplicationConfigReplicationType(str, Enum): """ The type of AWS DMS Serverless replication to provision using this replication configuration diff --git a/sdk/python/pulumi_aws_native/dms/_inputs.py b/sdk/python/pulumi_aws_native/dms/_inputs.py index d83fe83493..d02d0e737f 100644 --- a/sdk/python/pulumi_aws_native/dms/_inputs.py +++ b/sdk/python/pulumi_aws_native/dms/_inputs.py @@ -11,6 +11,7 @@ from ._enums import * __all__ = [ + 'DataProviderTagArgs', 'EndpointDocDbSettingsArgs', 'EndpointDynamoDbSettingsArgs', 'EndpointElasticsearchSettingsArgs', @@ -30,13 +31,63 @@ 'EndpointSybaseSettingsArgs', 'EndpointTagArgs', 'EventSubscriptionTagArgs', + 'InstanceProfileTagArgs', + 'MigrationProjectDataProviderDescriptorArgs', + 'MigrationProjectTagArgs', 'ReplicationConfigComputeConfigArgs', 'ReplicationConfigTagArgs', 'ReplicationInstanceTagArgs', 'ReplicationSubnetGroupTagArgs', 'ReplicationTaskTagArgs', + 'SchemaConversionApplicationAttributesPropertiesArgs', + 'Settings0PropertiesPostgreSqlSettingsPropertiesArgs', + 'Settings0PropertiesArgs', + 'Settings1PropertiesMySqlSettingsPropertiesArgs', + 'Settings1PropertiesArgs', + 'Settings2PropertiesOracleSettingsPropertiesArgs', + 'Settings2PropertiesArgs', + 'Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs', + 'Settings3PropertiesArgs', ] +@pulumi.input_type +class DataProviderTagArgs: + 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) + + @pulumi.input_type class EndpointDocDbSettingsArgs: def __init__(__self__, *, @@ -337,12 +388,22 @@ def username(self, value: Optional[pulumi.Input[str]]): class EndpointIbmDb2SettingsArgs: def __init__(__self__, *, current_lsn: Optional[pulumi.Input[str]] = None, + keep_csv_files: Optional[pulumi.Input[bool]] = None, + load_timeout: Optional[pulumi.Input[int]] = None, + max_file_size: Optional[pulumi.Input[int]] = None, max_k_bytes_per_read: Optional[pulumi.Input[int]] = None, secrets_manager_access_role_arn: Optional[pulumi.Input[str]] = None, secrets_manager_secret_id: Optional[pulumi.Input[str]] = None, - set_data_capture_changes: Optional[pulumi.Input[bool]] = None): + set_data_capture_changes: Optional[pulumi.Input[bool]] = None, + write_buffer_size: Optional[pulumi.Input[int]] = None): if current_lsn is not None: pulumi.set(__self__, "current_lsn", current_lsn) + if keep_csv_files is not None: + pulumi.set(__self__, "keep_csv_files", keep_csv_files) + if load_timeout is not None: + pulumi.set(__self__, "load_timeout", load_timeout) + if max_file_size is not None: + pulumi.set(__self__, "max_file_size", max_file_size) if max_k_bytes_per_read is not None: pulumi.set(__self__, "max_k_bytes_per_read", max_k_bytes_per_read) if secrets_manager_access_role_arn is not None: @@ -351,6 +412,8 @@ def __init__(__self__, *, pulumi.set(__self__, "secrets_manager_secret_id", secrets_manager_secret_id) if set_data_capture_changes is not None: pulumi.set(__self__, "set_data_capture_changes", set_data_capture_changes) + if write_buffer_size is not None: + pulumi.set(__self__, "write_buffer_size", write_buffer_size) @property @pulumi.getter(name="currentLsn") @@ -361,6 +424,33 @@ def current_lsn(self) -> Optional[pulumi.Input[str]]: def current_lsn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "current_lsn", value) + @property + @pulumi.getter(name="keepCsvFiles") + def keep_csv_files(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "keep_csv_files") + + @keep_csv_files.setter + def keep_csv_files(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "keep_csv_files", value) + + @property + @pulumi.getter(name="loadTimeout") + def load_timeout(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "load_timeout") + + @load_timeout.setter + def load_timeout(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "load_timeout", value) + + @property + @pulumi.getter(name="maxFileSize") + def max_file_size(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "max_file_size") + + @max_file_size.setter + def max_file_size(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_file_size", value) + @property @pulumi.getter(name="maxKBytesPerRead") def max_k_bytes_per_read(self) -> Optional[pulumi.Input[int]]: @@ -397,6 +487,15 @@ def set_data_capture_changes(self) -> Optional[pulumi.Input[bool]]: def set_data_capture_changes(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "set_data_capture_changes", value) + @property + @pulumi.getter(name="writeBufferSize") + def write_buffer_size(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "write_buffer_size") + + @write_buffer_size.setter + def write_buffer_size(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "write_buffer_size", value) + @pulumi.input_type class EndpointKafkaSettingsArgs: @@ -2924,6 +3023,150 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class InstanceProfileTagArgs: + 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) + + +@pulumi.input_type +class MigrationProjectDataProviderDescriptorArgs: + def __init__(__self__, *, + data_provider_arn: Optional[pulumi.Input[str]] = None, + data_provider_identifier: Optional[pulumi.Input[str]] = None, + data_provider_name: Optional[pulumi.Input[str]] = None, + secrets_manager_access_role_arn: Optional[pulumi.Input[str]] = None, + secrets_manager_secret_id: Optional[pulumi.Input[str]] = None): + """ + It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject + """ + if data_provider_arn is not None: + pulumi.set(__self__, "data_provider_arn", data_provider_arn) + if data_provider_identifier is not None: + pulumi.set(__self__, "data_provider_identifier", data_provider_identifier) + if data_provider_name is not None: + pulumi.set(__self__, "data_provider_name", data_provider_name) + if secrets_manager_access_role_arn is not None: + pulumi.set(__self__, "secrets_manager_access_role_arn", secrets_manager_access_role_arn) + if secrets_manager_secret_id is not None: + pulumi.set(__self__, "secrets_manager_secret_id", secrets_manager_secret_id) + + @property + @pulumi.getter(name="dataProviderArn") + def data_provider_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "data_provider_arn") + + @data_provider_arn.setter + def data_provider_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_provider_arn", value) + + @property + @pulumi.getter(name="dataProviderIdentifier") + def data_provider_identifier(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "data_provider_identifier") + + @data_provider_identifier.setter + def data_provider_identifier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_provider_identifier", value) + + @property + @pulumi.getter(name="dataProviderName") + def data_provider_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "data_provider_name") + + @data_provider_name.setter + def data_provider_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_provider_name", value) + + @property + @pulumi.getter(name="secretsManagerAccessRoleArn") + def secrets_manager_access_role_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "secrets_manager_access_role_arn") + + @secrets_manager_access_role_arn.setter + def secrets_manager_access_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "secrets_manager_access_role_arn", value) + + @property + @pulumi.getter(name="secretsManagerSecretId") + def secrets_manager_secret_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "secrets_manager_secret_id") + + @secrets_manager_secret_id.setter + def secrets_manager_secret_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "secrets_manager_secret_id", value) + + +@pulumi.input_type +class MigrationProjectTagArgs: + 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) + + @pulumi.input_type class ReplicationConfigComputeConfigArgs: def __init__(__self__, *, @@ -3159,3 +3402,423 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class SchemaConversionApplicationAttributesPropertiesArgs: + def __init__(__self__, *, + s3_bucket_path: Optional[pulumi.Input[str]] = None, + s3_bucket_role_arn: Optional[pulumi.Input[str]] = None): + """ + The property describes schema conversion application attributes for the migration project. + """ + if s3_bucket_path is not None: + pulumi.set(__self__, "s3_bucket_path", s3_bucket_path) + if s3_bucket_role_arn is not None: + pulumi.set(__self__, "s3_bucket_role_arn", s3_bucket_role_arn) + + @property + @pulumi.getter(name="s3BucketPath") + def s3_bucket_path(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "s3_bucket_path") + + @s3_bucket_path.setter + def s3_bucket_path(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "s3_bucket_path", value) + + @property + @pulumi.getter(name="s3BucketRoleArn") + def s3_bucket_role_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "s3_bucket_role_arn") + + @s3_bucket_role_arn.setter + def s3_bucket_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "s3_bucket_role_arn", value) + + +@pulumi.input_type +class Settings0PropertiesPostgreSqlSettingsPropertiesArgs: + def __init__(__self__, *, + certificate_arn: Optional[pulumi.Input[str]] = None, + database_name: Optional[pulumi.Input[str]] = None, + port: Optional[pulumi.Input[int]] = None, + server_name: Optional[pulumi.Input[str]] = None, + ssl_mode: Optional[pulumi.Input['DataProviderDmsSslModeValue']] = None): + if certificate_arn is not None: + pulumi.set(__self__, "certificate_arn", certificate_arn) + if database_name is not None: + pulumi.set(__self__, "database_name", database_name) + if port is not None: + pulumi.set(__self__, "port", port) + if server_name is not None: + pulumi.set(__self__, "server_name", server_name) + if ssl_mode is not None: + pulumi.set(__self__, "ssl_mode", ssl_mode) + + @property + @pulumi.getter(name="certificateArn") + def certificate_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "certificate_arn") + + @certificate_arn.setter + def certificate_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_arn", value) + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "database_name") + + @database_name.setter + def database_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "database_name", value) + + @property + @pulumi.getter + def port(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "port") + + @port.setter + def port(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "port", value) + + @property + @pulumi.getter(name="serverName") + def server_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "server_name") + + @server_name.setter + def server_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "server_name", value) + + @property + @pulumi.getter(name="sslMode") + def ssl_mode(self) -> Optional[pulumi.Input['DataProviderDmsSslModeValue']]: + return pulumi.get(self, "ssl_mode") + + @ssl_mode.setter + def ssl_mode(self, value: Optional[pulumi.Input['DataProviderDmsSslModeValue']]): + pulumi.set(self, "ssl_mode", value) + + +@pulumi.input_type +class Settings0PropertiesArgs: + def __init__(__self__, *, + postgre_sql_settings: Optional[pulumi.Input['Settings0PropertiesPostgreSqlSettingsPropertiesArgs']] = None): + """ + PostgreSqlSettings property identifier. + """ + if postgre_sql_settings is not None: + pulumi.set(__self__, "postgre_sql_settings", postgre_sql_settings) + + @property + @pulumi.getter(name="postgreSqlSettings") + def postgre_sql_settings(self) -> Optional[pulumi.Input['Settings0PropertiesPostgreSqlSettingsPropertiesArgs']]: + return pulumi.get(self, "postgre_sql_settings") + + @postgre_sql_settings.setter + def postgre_sql_settings(self, value: Optional[pulumi.Input['Settings0PropertiesPostgreSqlSettingsPropertiesArgs']]): + pulumi.set(self, "postgre_sql_settings", value) + + +@pulumi.input_type +class Settings1PropertiesMySqlSettingsPropertiesArgs: + def __init__(__self__, *, + certificate_arn: Optional[pulumi.Input[str]] = None, + port: Optional[pulumi.Input[int]] = None, + server_name: Optional[pulumi.Input[str]] = None, + ssl_mode: Optional[pulumi.Input['DataProviderDmsSslModeValue']] = None): + if certificate_arn is not None: + pulumi.set(__self__, "certificate_arn", certificate_arn) + if port is not None: + pulumi.set(__self__, "port", port) + if server_name is not None: + pulumi.set(__self__, "server_name", server_name) + if ssl_mode is not None: + pulumi.set(__self__, "ssl_mode", ssl_mode) + + @property + @pulumi.getter(name="certificateArn") + def certificate_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "certificate_arn") + + @certificate_arn.setter + def certificate_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_arn", value) + + @property + @pulumi.getter + def port(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "port") + + @port.setter + def port(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "port", value) + + @property + @pulumi.getter(name="serverName") + def server_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "server_name") + + @server_name.setter + def server_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "server_name", value) + + @property + @pulumi.getter(name="sslMode") + def ssl_mode(self) -> Optional[pulumi.Input['DataProviderDmsSslModeValue']]: + return pulumi.get(self, "ssl_mode") + + @ssl_mode.setter + def ssl_mode(self, value: Optional[pulumi.Input['DataProviderDmsSslModeValue']]): + pulumi.set(self, "ssl_mode", value) + + +@pulumi.input_type +class Settings1PropertiesArgs: + def __init__(__self__, *, + my_sql_settings: Optional[pulumi.Input['Settings1PropertiesMySqlSettingsPropertiesArgs']] = None): + """ + MySqlSettings property identifier. + """ + if my_sql_settings is not None: + pulumi.set(__self__, "my_sql_settings", my_sql_settings) + + @property + @pulumi.getter(name="mySqlSettings") + def my_sql_settings(self) -> Optional[pulumi.Input['Settings1PropertiesMySqlSettingsPropertiesArgs']]: + return pulumi.get(self, "my_sql_settings") + + @my_sql_settings.setter + def my_sql_settings(self, value: Optional[pulumi.Input['Settings1PropertiesMySqlSettingsPropertiesArgs']]): + pulumi.set(self, "my_sql_settings", value) + + +@pulumi.input_type +class Settings2PropertiesOracleSettingsPropertiesArgs: + def __init__(__self__, *, + asm_server: Optional[pulumi.Input[str]] = None, + certificate_arn: Optional[pulumi.Input[str]] = None, + database_name: Optional[pulumi.Input[str]] = None, + port: Optional[pulumi.Input[int]] = None, + secrets_manager_oracle_asm_access_role_arn: Optional[pulumi.Input[str]] = None, + secrets_manager_oracle_asm_secret_id: Optional[pulumi.Input[str]] = None, + secrets_manager_security_db_encryption_access_role_arn: Optional[pulumi.Input[str]] = None, + secrets_manager_security_db_encryption_secret_id: Optional[pulumi.Input[str]] = None, + server_name: Optional[pulumi.Input[str]] = None, + ssl_mode: Optional[pulumi.Input['DataProviderDmsSslModeValue']] = None): + if asm_server is not None: + pulumi.set(__self__, "asm_server", asm_server) + if certificate_arn is not None: + pulumi.set(__self__, "certificate_arn", certificate_arn) + if database_name is not None: + pulumi.set(__self__, "database_name", database_name) + if port is not None: + pulumi.set(__self__, "port", port) + if secrets_manager_oracle_asm_access_role_arn is not None: + pulumi.set(__self__, "secrets_manager_oracle_asm_access_role_arn", secrets_manager_oracle_asm_access_role_arn) + if secrets_manager_oracle_asm_secret_id is not None: + pulumi.set(__self__, "secrets_manager_oracle_asm_secret_id", secrets_manager_oracle_asm_secret_id) + if secrets_manager_security_db_encryption_access_role_arn is not None: + pulumi.set(__self__, "secrets_manager_security_db_encryption_access_role_arn", secrets_manager_security_db_encryption_access_role_arn) + if secrets_manager_security_db_encryption_secret_id is not None: + pulumi.set(__self__, "secrets_manager_security_db_encryption_secret_id", secrets_manager_security_db_encryption_secret_id) + if server_name is not None: + pulumi.set(__self__, "server_name", server_name) + if ssl_mode is not None: + pulumi.set(__self__, "ssl_mode", ssl_mode) + + @property + @pulumi.getter(name="asmServer") + def asm_server(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "asm_server") + + @asm_server.setter + def asm_server(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "asm_server", value) + + @property + @pulumi.getter(name="certificateArn") + def certificate_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "certificate_arn") + + @certificate_arn.setter + def certificate_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_arn", value) + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "database_name") + + @database_name.setter + def database_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "database_name", value) + + @property + @pulumi.getter + def port(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "port") + + @port.setter + def port(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "port", value) + + @property + @pulumi.getter(name="secretsManagerOracleAsmAccessRoleArn") + def secrets_manager_oracle_asm_access_role_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "secrets_manager_oracle_asm_access_role_arn") + + @secrets_manager_oracle_asm_access_role_arn.setter + def secrets_manager_oracle_asm_access_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "secrets_manager_oracle_asm_access_role_arn", value) + + @property + @pulumi.getter(name="secretsManagerOracleAsmSecretId") + def secrets_manager_oracle_asm_secret_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "secrets_manager_oracle_asm_secret_id") + + @secrets_manager_oracle_asm_secret_id.setter + def secrets_manager_oracle_asm_secret_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "secrets_manager_oracle_asm_secret_id", value) + + @property + @pulumi.getter(name="secretsManagerSecurityDbEncryptionAccessRoleArn") + def secrets_manager_security_db_encryption_access_role_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "secrets_manager_security_db_encryption_access_role_arn") + + @secrets_manager_security_db_encryption_access_role_arn.setter + def secrets_manager_security_db_encryption_access_role_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "secrets_manager_security_db_encryption_access_role_arn", value) + + @property + @pulumi.getter(name="secretsManagerSecurityDbEncryptionSecretId") + def secrets_manager_security_db_encryption_secret_id(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "secrets_manager_security_db_encryption_secret_id") + + @secrets_manager_security_db_encryption_secret_id.setter + def secrets_manager_security_db_encryption_secret_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "secrets_manager_security_db_encryption_secret_id", value) + + @property + @pulumi.getter(name="serverName") + def server_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "server_name") + + @server_name.setter + def server_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "server_name", value) + + @property + @pulumi.getter(name="sslMode") + def ssl_mode(self) -> Optional[pulumi.Input['DataProviderDmsSslModeValue']]: + return pulumi.get(self, "ssl_mode") + + @ssl_mode.setter + def ssl_mode(self, value: Optional[pulumi.Input['DataProviderDmsSslModeValue']]): + pulumi.set(self, "ssl_mode", value) + + +@pulumi.input_type +class Settings2PropertiesArgs: + def __init__(__self__, *, + oracle_settings: Optional[pulumi.Input['Settings2PropertiesOracleSettingsPropertiesArgs']] = None): + """ + OracleSettings property identifier. + """ + if oracle_settings is not None: + pulumi.set(__self__, "oracle_settings", oracle_settings) + + @property + @pulumi.getter(name="oracleSettings") + def oracle_settings(self) -> Optional[pulumi.Input['Settings2PropertiesOracleSettingsPropertiesArgs']]: + return pulumi.get(self, "oracle_settings") + + @oracle_settings.setter + def oracle_settings(self, value: Optional[pulumi.Input['Settings2PropertiesOracleSettingsPropertiesArgs']]): + pulumi.set(self, "oracle_settings", value) + + +@pulumi.input_type +class Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs: + def __init__(__self__, *, + certificate_arn: Optional[pulumi.Input[str]] = None, + database_name: Optional[pulumi.Input[str]] = None, + port: Optional[pulumi.Input[int]] = None, + server_name: Optional[pulumi.Input[str]] = None, + ssl_mode: Optional[pulumi.Input['DataProviderDmsSslModeValue']] = None): + if certificate_arn is not None: + pulumi.set(__self__, "certificate_arn", certificate_arn) + if database_name is not None: + pulumi.set(__self__, "database_name", database_name) + if port is not None: + pulumi.set(__self__, "port", port) + if server_name is not None: + pulumi.set(__self__, "server_name", server_name) + if ssl_mode is not None: + pulumi.set(__self__, "ssl_mode", ssl_mode) + + @property + @pulumi.getter(name="certificateArn") + def certificate_arn(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "certificate_arn") + + @certificate_arn.setter + def certificate_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_arn", value) + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "database_name") + + @database_name.setter + def database_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "database_name", value) + + @property + @pulumi.getter + def port(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "port") + + @port.setter + def port(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "port", value) + + @property + @pulumi.getter(name="serverName") + def server_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "server_name") + + @server_name.setter + def server_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "server_name", value) + + @property + @pulumi.getter(name="sslMode") + def ssl_mode(self) -> Optional[pulumi.Input['DataProviderDmsSslModeValue']]: + return pulumi.get(self, "ssl_mode") + + @ssl_mode.setter + def ssl_mode(self, value: Optional[pulumi.Input['DataProviderDmsSslModeValue']]): + pulumi.set(self, "ssl_mode", value) + + +@pulumi.input_type +class Settings3PropertiesArgs: + def __init__(__self__, *, + microsoft_sql_server_settings: Optional[pulumi.Input['Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs']] = None): + """ + MicrosoftSqlServerSettings property identifier. + """ + if microsoft_sql_server_settings is not None: + pulumi.set(__self__, "microsoft_sql_server_settings", microsoft_sql_server_settings) + + @property + @pulumi.getter(name="microsoftSqlServerSettings") + def microsoft_sql_server_settings(self) -> Optional[pulumi.Input['Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs']]: + return pulumi.get(self, "microsoft_sql_server_settings") + + @microsoft_sql_server_settings.setter + def microsoft_sql_server_settings(self, value: Optional[pulumi.Input['Settings3PropertiesMicrosoftSqlServerSettingsPropertiesArgs']]): + pulumi.set(self, "microsoft_sql_server_settings", value) + + diff --git a/sdk/python/pulumi_aws_native/dms/data_provider.py b/sdk/python/pulumi_aws_native/dms/data_provider.py new file mode 100644 index 0000000000..9e319ce05a --- /dev/null +++ b/sdk/python/pulumi_aws_native/dms/data_provider.py @@ -0,0 +1,317 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['DataProviderArgs', 'DataProvider'] + +@pulumi.input_type +class DataProviderArgs: + def __init__(__self__, *, + engine: pulumi.Input['DataProviderEngine'], + data_provider_identifier: Optional[pulumi.Input[str]] = None, + data_provider_name: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + exact_settings: Optional[pulumi.Input[bool]] = None, + settings: Optional[pulumi.Input[Union['Settings0PropertiesArgs', 'Settings1PropertiesArgs', 'Settings2PropertiesArgs', 'Settings3PropertiesArgs']]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['DataProviderTagArgs']]]] = None): + """ + The set of arguments for constructing a DataProvider resource. + :param pulumi.Input['DataProviderEngine'] engine: The property describes a data engine for the data provider. + :param pulumi.Input[str] data_provider_identifier: The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + :param pulumi.Input[str] data_provider_name: The property describes a name to identify the data provider. + :param pulumi.Input[str] description: The optional description of the data provider. + :param pulumi.Input[bool] exact_settings: The property describes the exact settings which can be modified + :param pulumi.Input[Union['Settings0PropertiesArgs', 'Settings1PropertiesArgs', 'Settings2PropertiesArgs', 'Settings3PropertiesArgs']] settings: The property identifies the exact type of settings for the data provider. + :param pulumi.Input[Sequence[pulumi.Input['DataProviderTagArgs']]] tags: An array of key-value pairs to apply to this resource. + """ + pulumi.set(__self__, "engine", engine) + if data_provider_identifier is not None: + pulumi.set(__self__, "data_provider_identifier", data_provider_identifier) + if data_provider_name is not None: + pulumi.set(__self__, "data_provider_name", data_provider_name) + if description is not None: + pulumi.set(__self__, "description", description) + if exact_settings is not None: + pulumi.set(__self__, "exact_settings", exact_settings) + if settings is not None: + pulumi.set(__self__, "settings", settings) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter + def engine(self) -> pulumi.Input['DataProviderEngine']: + """ + The property describes a data engine for the data provider. + """ + return pulumi.get(self, "engine") + + @engine.setter + def engine(self, value: pulumi.Input['DataProviderEngine']): + pulumi.set(self, "engine", value) + + @property + @pulumi.getter(name="dataProviderIdentifier") + def data_provider_identifier(self) -> Optional[pulumi.Input[str]]: + """ + The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + """ + return pulumi.get(self, "data_provider_identifier") + + @data_provider_identifier.setter + def data_provider_identifier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_provider_identifier", value) + + @property + @pulumi.getter(name="dataProviderName") + def data_provider_name(self) -> Optional[pulumi.Input[str]]: + """ + The property describes a name to identify the data provider. + """ + return pulumi.get(self, "data_provider_name") + + @data_provider_name.setter + def data_provider_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data_provider_name", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + The optional description of the data provider. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="exactSettings") + def exact_settings(self) -> Optional[pulumi.Input[bool]]: + """ + The property describes the exact settings which can be modified + """ + return pulumi.get(self, "exact_settings") + + @exact_settings.setter + def exact_settings(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "exact_settings", value) + + @property + @pulumi.getter + def settings(self) -> Optional[pulumi.Input[Union['Settings0PropertiesArgs', 'Settings1PropertiesArgs', 'Settings2PropertiesArgs', 'Settings3PropertiesArgs']]]: + """ + The property identifies the exact type of settings for the data provider. + """ + return pulumi.get(self, "settings") + + @settings.setter + def settings(self, value: Optional[pulumi.Input[Union['Settings0PropertiesArgs', 'Settings1PropertiesArgs', 'Settings2PropertiesArgs', 'Settings3PropertiesArgs']]]): + pulumi.set(self, "settings", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DataProviderTagArgs']]]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DataProviderTagArgs']]]]): + pulumi.set(self, "tags", value) + + +class DataProvider(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + data_provider_identifier: Optional[pulumi.Input[str]] = None, + data_provider_name: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + engine: Optional[pulumi.Input['DataProviderEngine']] = None, + exact_settings: Optional[pulumi.Input[bool]] = None, + settings: Optional[pulumi.Input[Union[pulumi.InputType['Settings0PropertiesArgs'], pulumi.InputType['Settings1PropertiesArgs'], pulumi.InputType['Settings2PropertiesArgs'], pulumi.InputType['Settings3PropertiesArgs']]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DataProviderTagArgs']]]]] = None, + __props__=None): + """ + Resource schema for AWS::DMS::DataProvider + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] data_provider_identifier: The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + :param pulumi.Input[str] data_provider_name: The property describes a name to identify the data provider. + :param pulumi.Input[str] description: The optional description of the data provider. + :param pulumi.Input['DataProviderEngine'] engine: The property describes a data engine for the data provider. + :param pulumi.Input[bool] exact_settings: The property describes the exact settings which can be modified + :param pulumi.Input[Union[pulumi.InputType['Settings0PropertiesArgs'], pulumi.InputType['Settings1PropertiesArgs'], pulumi.InputType['Settings2PropertiesArgs'], pulumi.InputType['Settings3PropertiesArgs']]] settings: The property identifies the exact type of settings for the data provider. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DataProviderTagArgs']]]] tags: An array of key-value pairs to apply to this resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: DataProviderArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource schema for AWS::DMS::DataProvider + + :param str resource_name: The name of the resource. + :param DataProviderArgs 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(DataProviderArgs, 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, + data_provider_identifier: Optional[pulumi.Input[str]] = None, + data_provider_name: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + engine: Optional[pulumi.Input['DataProviderEngine']] = None, + exact_settings: Optional[pulumi.Input[bool]] = None, + settings: Optional[pulumi.Input[Union[pulumi.InputType['Settings0PropertiesArgs'], pulumi.InputType['Settings1PropertiesArgs'], pulumi.InputType['Settings2PropertiesArgs'], pulumi.InputType['Settings3PropertiesArgs']]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DataProviderTagArgs']]]]] = 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__ = DataProviderArgs.__new__(DataProviderArgs) + + __props__.__dict__["data_provider_identifier"] = data_provider_identifier + __props__.__dict__["data_provider_name"] = data_provider_name + __props__.__dict__["description"] = description + if engine is None and not opts.urn: + raise TypeError("Missing required property 'engine'") + __props__.__dict__["engine"] = engine + __props__.__dict__["exact_settings"] = exact_settings + __props__.__dict__["settings"] = settings + __props__.__dict__["tags"] = tags + __props__.__dict__["data_provider_arn"] = None + __props__.__dict__["data_provider_creation_time"] = None + super(DataProvider, __self__).__init__( + 'aws-native:dms:DataProvider', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'DataProvider': + """ + Get an existing DataProvider 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__ = DataProviderArgs.__new__(DataProviderArgs) + + __props__.__dict__["data_provider_arn"] = None + __props__.__dict__["data_provider_creation_time"] = None + __props__.__dict__["data_provider_identifier"] = None + __props__.__dict__["data_provider_name"] = None + __props__.__dict__["description"] = None + __props__.__dict__["engine"] = None + __props__.__dict__["exact_settings"] = None + __props__.__dict__["settings"] = None + __props__.__dict__["tags"] = None + return DataProvider(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="dataProviderArn") + def data_provider_arn(self) -> pulumi.Output[str]: + """ + The data provider ARN. + """ + return pulumi.get(self, "data_provider_arn") + + @property + @pulumi.getter(name="dataProviderCreationTime") + def data_provider_creation_time(self) -> pulumi.Output[str]: + """ + The data provider creation time. + """ + return pulumi.get(self, "data_provider_creation_time") + + @property + @pulumi.getter(name="dataProviderIdentifier") + def data_provider_identifier(self) -> pulumi.Output[Optional[str]]: + """ + The property describes an identifier for the data provider. It is used for describing/deleting/modifying can be name/arn + """ + return pulumi.get(self, "data_provider_identifier") + + @property + @pulumi.getter(name="dataProviderName") + def data_provider_name(self) -> pulumi.Output[Optional[str]]: + """ + The property describes a name to identify the data provider. + """ + return pulumi.get(self, "data_provider_name") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + """ + The optional description of the data provider. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter + def engine(self) -> pulumi.Output['DataProviderEngine']: + """ + The property describes a data engine for the data provider. + """ + return pulumi.get(self, "engine") + + @property + @pulumi.getter(name="exactSettings") + def exact_settings(self) -> pulumi.Output[Optional[bool]]: + """ + The property describes the exact settings which can be modified + """ + return pulumi.get(self, "exact_settings") + + @property + @pulumi.getter + def settings(self) -> pulumi.Output[Optional[Any]]: + """ + The property identifies the exact type of settings for the data provider. + """ + return pulumi.get(self, "settings") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.DataProviderTag']]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + diff --git a/sdk/python/pulumi_aws_native/dms/get_data_provider.py b/sdk/python/pulumi_aws_native/dms/get_data_provider.py new file mode 100644 index 0000000000..581bd4f445 --- /dev/null +++ b/sdk/python/pulumi_aws_native/dms/get_data_provider.py @@ -0,0 +1,150 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * + +__all__ = [ + 'GetDataProviderResult', + 'AwaitableGetDataProviderResult', + 'get_data_provider', + 'get_data_provider_output', +] + +@pulumi.output_type +class GetDataProviderResult: + def __init__(__self__, data_provider_arn=None, data_provider_creation_time=None, data_provider_name=None, description=None, engine=None, settings=None, tags=None): + if data_provider_arn and not isinstance(data_provider_arn, str): + raise TypeError("Expected argument 'data_provider_arn' to be a str") + pulumi.set(__self__, "data_provider_arn", data_provider_arn) + if data_provider_creation_time and not isinstance(data_provider_creation_time, str): + raise TypeError("Expected argument 'data_provider_creation_time' to be a str") + pulumi.set(__self__, "data_provider_creation_time", data_provider_creation_time) + if data_provider_name and not isinstance(data_provider_name, str): + raise TypeError("Expected argument 'data_provider_name' to be a str") + pulumi.set(__self__, "data_provider_name", data_provider_name) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if engine and not isinstance(engine, str): + raise TypeError("Expected argument 'engine' to be a str") + pulumi.set(__self__, "engine", engine) + if settings and not isinstance(settings, dict): + raise TypeError("Expected argument 'settings' to be a dict") + pulumi.set(__self__, "settings", settings) + 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="dataProviderArn") + def data_provider_arn(self) -> Optional[str]: + """ + The data provider ARN. + """ + return pulumi.get(self, "data_provider_arn") + + @property + @pulumi.getter(name="dataProviderCreationTime") + def data_provider_creation_time(self) -> Optional[str]: + """ + The data provider creation time. + """ + return pulumi.get(self, "data_provider_creation_time") + + @property + @pulumi.getter(name="dataProviderName") + def data_provider_name(self) -> Optional[str]: + """ + The property describes a name to identify the data provider. + """ + return pulumi.get(self, "data_provider_name") + + @property + @pulumi.getter + def description(self) -> Optional[str]: + """ + The optional description of the data provider. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter + def engine(self) -> Optional['DataProviderEngine']: + """ + The property describes a data engine for the data provider. + """ + return pulumi.get(self, "engine") + + @property + @pulumi.getter + def settings(self) -> Optional[Any]: + """ + The property identifies the exact type of settings for the data provider. + """ + return pulumi.get(self, "settings") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.DataProviderTag']]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + +class AwaitableGetDataProviderResult(GetDataProviderResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetDataProviderResult( + data_provider_arn=self.data_provider_arn, + data_provider_creation_time=self.data_provider_creation_time, + data_provider_name=self.data_provider_name, + description=self.description, + engine=self.engine, + settings=self.settings, + tags=self.tags) + + +def get_data_provider(data_provider_arn: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDataProviderResult: + """ + Resource schema for AWS::DMS::DataProvider + + + :param str data_provider_arn: The data provider ARN. + """ + __args__ = dict() + __args__['dataProviderArn'] = data_provider_arn + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:dms:getDataProvider', __args__, opts=opts, typ=GetDataProviderResult).value + + return AwaitableGetDataProviderResult( + data_provider_arn=pulumi.get(__ret__, 'data_provider_arn'), + data_provider_creation_time=pulumi.get(__ret__, 'data_provider_creation_time'), + data_provider_name=pulumi.get(__ret__, 'data_provider_name'), + description=pulumi.get(__ret__, 'description'), + engine=pulumi.get(__ret__, 'engine'), + settings=pulumi.get(__ret__, 'settings'), + tags=pulumi.get(__ret__, 'tags')) + + +@_utilities.lift_output_func(get_data_provider) +def get_data_provider_output(data_provider_arn: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDataProviderResult]: + """ + Resource schema for AWS::DMS::DataProvider + + + :param str data_provider_arn: The data provider ARN. + """ + ... diff --git a/sdk/python/pulumi_aws_native/dms/get_instance_profile.py b/sdk/python/pulumi_aws_native/dms/get_instance_profile.py new file mode 100644 index 0000000000..0c01482f70 --- /dev/null +++ b/sdk/python/pulumi_aws_native/dms/get_instance_profile.py @@ -0,0 +1,202 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * + +__all__ = [ + 'GetInstanceProfileResult', + 'AwaitableGetInstanceProfileResult', + 'get_instance_profile', + 'get_instance_profile_output', +] + +@pulumi.output_type +class GetInstanceProfileResult: + def __init__(__self__, availability_zone=None, description=None, instance_profile_arn=None, instance_profile_creation_time=None, instance_profile_name=None, kms_key_arn=None, network_type=None, publicly_accessible=None, subnet_group_identifier=None, tags=None, vpc_security_groups=None): + if availability_zone and not isinstance(availability_zone, str): + raise TypeError("Expected argument 'availability_zone' to be a str") + pulumi.set(__self__, "availability_zone", availability_zone) + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if instance_profile_arn and not isinstance(instance_profile_arn, str): + raise TypeError("Expected argument 'instance_profile_arn' to be a str") + pulumi.set(__self__, "instance_profile_arn", instance_profile_arn) + if instance_profile_creation_time and not isinstance(instance_profile_creation_time, str): + raise TypeError("Expected argument 'instance_profile_creation_time' to be a str") + pulumi.set(__self__, "instance_profile_creation_time", instance_profile_creation_time) + if instance_profile_name and not isinstance(instance_profile_name, str): + raise TypeError("Expected argument 'instance_profile_name' to be a str") + pulumi.set(__self__, "instance_profile_name", instance_profile_name) + if kms_key_arn and not isinstance(kms_key_arn, str): + raise TypeError("Expected argument 'kms_key_arn' to be a str") + pulumi.set(__self__, "kms_key_arn", kms_key_arn) + if network_type and not isinstance(network_type, str): + raise TypeError("Expected argument 'network_type' to be a str") + pulumi.set(__self__, "network_type", network_type) + if publicly_accessible and not isinstance(publicly_accessible, bool): + raise TypeError("Expected argument 'publicly_accessible' to be a bool") + pulumi.set(__self__, "publicly_accessible", publicly_accessible) + if subnet_group_identifier and not isinstance(subnet_group_identifier, str): + raise TypeError("Expected argument 'subnet_group_identifier' to be a str") + pulumi.set(__self__, "subnet_group_identifier", subnet_group_identifier) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) + if vpc_security_groups and not isinstance(vpc_security_groups, list): + raise TypeError("Expected argument 'vpc_security_groups' to be a list") + pulumi.set(__self__, "vpc_security_groups", vpc_security_groups) + + @property + @pulumi.getter(name="availabilityZone") + def availability_zone(self) -> Optional[str]: + """ + The property describes an availability zone of the instance profile. + """ + return pulumi.get(self, "availability_zone") + + @property + @pulumi.getter + def description(self) -> Optional[str]: + """ + The optional description of the instance profile. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="instanceProfileArn") + def instance_profile_arn(self) -> Optional[str]: + """ + The property describes an ARN of the instance profile. + """ + return pulumi.get(self, "instance_profile_arn") + + @property + @pulumi.getter(name="instanceProfileCreationTime") + def instance_profile_creation_time(self) -> Optional[str]: + """ + The property describes a creating time of the instance profile. + """ + return pulumi.get(self, "instance_profile_creation_time") + + @property + @pulumi.getter(name="instanceProfileName") + def instance_profile_name(self) -> Optional[str]: + """ + The property describes a name for the instance profile. + """ + return pulumi.get(self, "instance_profile_name") + + @property + @pulumi.getter(name="kmsKeyArn") + def kms_key_arn(self) -> Optional[str]: + """ + The property describes kms key arn for the instance profile. + """ + return pulumi.get(self, "kms_key_arn") + + @property + @pulumi.getter(name="networkType") + def network_type(self) -> Optional['InstanceProfileNetworkType']: + """ + The property describes a network type for the instance profile. + """ + return pulumi.get(self, "network_type") + + @property + @pulumi.getter(name="publiclyAccessible") + def publicly_accessible(self) -> Optional[bool]: + """ + The property describes the publicly accessible of the instance profile + """ + return pulumi.get(self, "publicly_accessible") + + @property + @pulumi.getter(name="subnetGroupIdentifier") + def subnet_group_identifier(self) -> Optional[str]: + """ + The property describes a subnet group identifier for the instance profile. + """ + return pulumi.get(self, "subnet_group_identifier") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.InstanceProfileTag']]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="vpcSecurityGroups") + def vpc_security_groups(self) -> Optional[Sequence[str]]: + """ + The property describes vps security groups for the instance profile. + """ + return pulumi.get(self, "vpc_security_groups") + + +class AwaitableGetInstanceProfileResult(GetInstanceProfileResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetInstanceProfileResult( + availability_zone=self.availability_zone, + description=self.description, + instance_profile_arn=self.instance_profile_arn, + instance_profile_creation_time=self.instance_profile_creation_time, + instance_profile_name=self.instance_profile_name, + kms_key_arn=self.kms_key_arn, + network_type=self.network_type, + publicly_accessible=self.publicly_accessible, + subnet_group_identifier=self.subnet_group_identifier, + tags=self.tags, + vpc_security_groups=self.vpc_security_groups) + + +def get_instance_profile(instance_profile_arn: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetInstanceProfileResult: + """ + Resource schema for AWS::DMS::InstanceProfile. + + + :param str instance_profile_arn: The property describes an ARN of the instance profile. + """ + __args__ = dict() + __args__['instanceProfileArn'] = instance_profile_arn + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:dms:getInstanceProfile', __args__, opts=opts, typ=GetInstanceProfileResult).value + + return AwaitableGetInstanceProfileResult( + availability_zone=pulumi.get(__ret__, 'availability_zone'), + description=pulumi.get(__ret__, 'description'), + instance_profile_arn=pulumi.get(__ret__, 'instance_profile_arn'), + instance_profile_creation_time=pulumi.get(__ret__, 'instance_profile_creation_time'), + instance_profile_name=pulumi.get(__ret__, 'instance_profile_name'), + kms_key_arn=pulumi.get(__ret__, 'kms_key_arn'), + network_type=pulumi.get(__ret__, 'network_type'), + publicly_accessible=pulumi.get(__ret__, 'publicly_accessible'), + subnet_group_identifier=pulumi.get(__ret__, 'subnet_group_identifier'), + tags=pulumi.get(__ret__, 'tags'), + vpc_security_groups=pulumi.get(__ret__, 'vpc_security_groups')) + + +@_utilities.lift_output_func(get_instance_profile) +def get_instance_profile_output(instance_profile_arn: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetInstanceProfileResult]: + """ + Resource schema for AWS::DMS::InstanceProfile. + + + :param str instance_profile_arn: The property describes an ARN of the instance profile. + """ + ... diff --git a/sdk/python/pulumi_aws_native/dms/get_migration_project.py b/sdk/python/pulumi_aws_native/dms/get_migration_project.py new file mode 100644 index 0000000000..1c57247bed --- /dev/null +++ b/sdk/python/pulumi_aws_native/dms/get_migration_project.py @@ -0,0 +1,201 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs + +__all__ = [ + 'GetMigrationProjectResult', + 'AwaitableGetMigrationProjectResult', + 'get_migration_project', + 'get_migration_project_output', +] + +@pulumi.output_type +class GetMigrationProjectResult: + def __init__(__self__, description=None, instance_profile_arn=None, instance_profile_name=None, migration_project_arn=None, migration_project_creation_time=None, migration_project_name=None, schema_conversion_application_attributes=None, source_data_provider_descriptors=None, tags=None, target_data_provider_descriptors=None, transformation_rules=None): + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if instance_profile_arn and not isinstance(instance_profile_arn, str): + raise TypeError("Expected argument 'instance_profile_arn' to be a str") + pulumi.set(__self__, "instance_profile_arn", instance_profile_arn) + if instance_profile_name and not isinstance(instance_profile_name, str): + raise TypeError("Expected argument 'instance_profile_name' to be a str") + pulumi.set(__self__, "instance_profile_name", instance_profile_name) + if migration_project_arn and not isinstance(migration_project_arn, str): + raise TypeError("Expected argument 'migration_project_arn' to be a str") + pulumi.set(__self__, "migration_project_arn", migration_project_arn) + if migration_project_creation_time and not isinstance(migration_project_creation_time, str): + raise TypeError("Expected argument 'migration_project_creation_time' to be a str") + pulumi.set(__self__, "migration_project_creation_time", migration_project_creation_time) + if migration_project_name and not isinstance(migration_project_name, str): + raise TypeError("Expected argument 'migration_project_name' to be a str") + pulumi.set(__self__, "migration_project_name", migration_project_name) + if schema_conversion_application_attributes and not isinstance(schema_conversion_application_attributes, dict): + raise TypeError("Expected argument 'schema_conversion_application_attributes' to be a dict") + pulumi.set(__self__, "schema_conversion_application_attributes", schema_conversion_application_attributes) + if source_data_provider_descriptors and not isinstance(source_data_provider_descriptors, list): + raise TypeError("Expected argument 'source_data_provider_descriptors' to be a list") + pulumi.set(__self__, "source_data_provider_descriptors", source_data_provider_descriptors) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) + if target_data_provider_descriptors and not isinstance(target_data_provider_descriptors, list): + raise TypeError("Expected argument 'target_data_provider_descriptors' to be a list") + pulumi.set(__self__, "target_data_provider_descriptors", target_data_provider_descriptors) + if transformation_rules and not isinstance(transformation_rules, str): + raise TypeError("Expected argument 'transformation_rules' to be a str") + pulumi.set(__self__, "transformation_rules", transformation_rules) + + @property + @pulumi.getter + def description(self) -> Optional[str]: + """ + The optional description of the migration project. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="instanceProfileArn") + def instance_profile_arn(self) -> Optional[str]: + """ + The property describes an instance profile arn for the migration project. For read + """ + return pulumi.get(self, "instance_profile_arn") + + @property + @pulumi.getter(name="instanceProfileName") + def instance_profile_name(self) -> Optional[str]: + """ + The property describes an instance profile name for the migration project. For read + """ + return pulumi.get(self, "instance_profile_name") + + @property + @pulumi.getter(name="migrationProjectArn") + def migration_project_arn(self) -> Optional[str]: + """ + The property describes an ARN of the migration project. + """ + return pulumi.get(self, "migration_project_arn") + + @property + @pulumi.getter(name="migrationProjectCreationTime") + def migration_project_creation_time(self) -> Optional[str]: + """ + The property describes a creating time of the migration project. + """ + return pulumi.get(self, "migration_project_creation_time") + + @property + @pulumi.getter(name="migrationProjectName") + def migration_project_name(self) -> Optional[str]: + """ + The property describes a name to identify the migration project. + """ + return pulumi.get(self, "migration_project_name") + + @property + @pulumi.getter(name="schemaConversionApplicationAttributes") + def schema_conversion_application_attributes(self) -> Optional['outputs.SchemaConversionApplicationAttributesProperties']: + """ + The property describes schema conversion application attributes for the migration project. + """ + return pulumi.get(self, "schema_conversion_application_attributes") + + @property + @pulumi.getter(name="sourceDataProviderDescriptors") + def source_data_provider_descriptors(self) -> Optional[Sequence['outputs.MigrationProjectDataProviderDescriptor']]: + """ + The property describes source data provider descriptors for the migration project. + """ + return pulumi.get(self, "source_data_provider_descriptors") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.MigrationProjectTag']]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="targetDataProviderDescriptors") + def target_data_provider_descriptors(self) -> Optional[Sequence['outputs.MigrationProjectDataProviderDescriptor']]: + """ + The property describes target data provider descriptors for the migration project. + """ + return pulumi.get(self, "target_data_provider_descriptors") + + @property + @pulumi.getter(name="transformationRules") + def transformation_rules(self) -> Optional[str]: + """ + The property describes transformation rules for the migration project. + """ + return pulumi.get(self, "transformation_rules") + + +class AwaitableGetMigrationProjectResult(GetMigrationProjectResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetMigrationProjectResult( + description=self.description, + instance_profile_arn=self.instance_profile_arn, + instance_profile_name=self.instance_profile_name, + migration_project_arn=self.migration_project_arn, + migration_project_creation_time=self.migration_project_creation_time, + migration_project_name=self.migration_project_name, + schema_conversion_application_attributes=self.schema_conversion_application_attributes, + source_data_provider_descriptors=self.source_data_provider_descriptors, + tags=self.tags, + target_data_provider_descriptors=self.target_data_provider_descriptors, + transformation_rules=self.transformation_rules) + + +def get_migration_project(migration_project_arn: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetMigrationProjectResult: + """ + Resource schema for AWS::DMS::MigrationProject + + + :param str migration_project_arn: The property describes an ARN of the migration project. + """ + __args__ = dict() + __args__['migrationProjectArn'] = migration_project_arn + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:dms:getMigrationProject', __args__, opts=opts, typ=GetMigrationProjectResult).value + + return AwaitableGetMigrationProjectResult( + description=pulumi.get(__ret__, 'description'), + instance_profile_arn=pulumi.get(__ret__, 'instance_profile_arn'), + instance_profile_name=pulumi.get(__ret__, 'instance_profile_name'), + migration_project_arn=pulumi.get(__ret__, 'migration_project_arn'), + migration_project_creation_time=pulumi.get(__ret__, 'migration_project_creation_time'), + migration_project_name=pulumi.get(__ret__, 'migration_project_name'), + schema_conversion_application_attributes=pulumi.get(__ret__, 'schema_conversion_application_attributes'), + source_data_provider_descriptors=pulumi.get(__ret__, 'source_data_provider_descriptors'), + tags=pulumi.get(__ret__, 'tags'), + target_data_provider_descriptors=pulumi.get(__ret__, 'target_data_provider_descriptors'), + transformation_rules=pulumi.get(__ret__, 'transformation_rules')) + + +@_utilities.lift_output_func(get_migration_project) +def get_migration_project_output(migration_project_arn: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetMigrationProjectResult]: + """ + Resource schema for AWS::DMS::MigrationProject + + + :param str migration_project_arn: The property describes an ARN of the migration project. + """ + ... diff --git a/sdk/python/pulumi_aws_native/dms/get_replication_config.py b/sdk/python/pulumi_aws_native/dms/get_replication_config.py index ba373aad70..1fc6d0b133 100644 --- a/sdk/python/pulumi_aws_native/dms/get_replication_config.py +++ b/sdk/python/pulumi_aws_native/dms/get_replication_config.py @@ -20,7 +20,7 @@ @pulumi.output_type class GetReplicationConfigResult: - def __init__(__self__, compute_config=None, replication_config_arn=None, replication_config_identifier=None, replication_settings=None, replication_type=None, resource_identifier=None, source_endpoint_arn=None, supplemental_settings=None, table_mappings=None, tags=None, target_endpoint_arn=None): + def __init__(__self__, compute_config=None, replication_config_arn=None, replication_config_identifier=None, replication_settings=None, replication_type=None, source_endpoint_arn=None, supplemental_settings=None, table_mappings=None, tags=None, target_endpoint_arn=None): if compute_config and not isinstance(compute_config, dict): raise TypeError("Expected argument 'compute_config' to be a dict") pulumi.set(__self__, "compute_config", compute_config) @@ -36,9 +36,6 @@ def __init__(__self__, compute_config=None, replication_config_arn=None, replica if replication_type and not isinstance(replication_type, str): raise TypeError("Expected argument 'replication_type' to be a str") pulumi.set(__self__, "replication_type", replication_type) - if resource_identifier and not isinstance(resource_identifier, str): - raise TypeError("Expected argument 'resource_identifier' to be a str") - pulumi.set(__self__, "resource_identifier", resource_identifier) if source_endpoint_arn and not isinstance(source_endpoint_arn, str): raise TypeError("Expected argument 'source_endpoint_arn' to be a str") pulumi.set(__self__, "source_endpoint_arn", source_endpoint_arn) @@ -92,14 +89,6 @@ def replication_type(self) -> Optional['ReplicationConfigReplicationType']: """ return pulumi.get(self, "replication_type") - @property - @pulumi.getter(name="resourceIdentifier") - def resource_identifier(self) -> Optional[str]: - """ - A unique value or name that you get set for a given resource that can be used to construct an Amazon Resource Name (ARN) for that resource - """ - return pulumi.get(self, "resource_identifier") - @property @pulumi.getter(name="sourceEndpointArn") def source_endpoint_arn(self) -> Optional[str]: @@ -152,7 +141,6 @@ def __await__(self): replication_config_identifier=self.replication_config_identifier, replication_settings=self.replication_settings, replication_type=self.replication_type, - resource_identifier=self.resource_identifier, source_endpoint_arn=self.source_endpoint_arn, supplemental_settings=self.supplemental_settings, table_mappings=self.table_mappings, @@ -179,7 +167,6 @@ def get_replication_config(replication_config_arn: Optional[str] = None, replication_config_identifier=pulumi.get(__ret__, 'replication_config_identifier'), replication_settings=pulumi.get(__ret__, 'replication_settings'), replication_type=pulumi.get(__ret__, 'replication_type'), - resource_identifier=pulumi.get(__ret__, 'resource_identifier'), source_endpoint_arn=pulumi.get(__ret__, 'source_endpoint_arn'), supplemental_settings=pulumi.get(__ret__, 'supplemental_settings'), table_mappings=pulumi.get(__ret__, 'table_mappings'), diff --git a/sdk/python/pulumi_aws_native/dms/instance_profile.py b/sdk/python/pulumi_aws_native/dms/instance_profile.py new file mode 100644 index 0000000000..867e904c41 --- /dev/null +++ b/sdk/python/pulumi_aws_native/dms/instance_profile.py @@ -0,0 +1,403 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['InstanceProfileArgs', 'InstanceProfile'] + +@pulumi.input_type +class InstanceProfileArgs: + def __init__(__self__, *, + availability_zone: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + instance_profile_identifier: Optional[pulumi.Input[str]] = None, + instance_profile_name: Optional[pulumi.Input[str]] = None, + kms_key_arn: Optional[pulumi.Input[str]] = None, + network_type: Optional[pulumi.Input['InstanceProfileNetworkType']] = None, + publicly_accessible: Optional[pulumi.Input[bool]] = None, + subnet_group_identifier: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceProfileTagArgs']]]] = None, + vpc_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + The set of arguments for constructing a InstanceProfile resource. + :param pulumi.Input[str] availability_zone: The property describes an availability zone of the instance profile. + :param pulumi.Input[str] description: The optional description of the instance profile. + :param pulumi.Input[str] instance_profile_identifier: The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + :param pulumi.Input[str] instance_profile_name: The property describes a name for the instance profile. + :param pulumi.Input[str] kms_key_arn: The property describes kms key arn for the instance profile. + :param pulumi.Input['InstanceProfileNetworkType'] network_type: The property describes a network type for the instance profile. + :param pulumi.Input[bool] publicly_accessible: The property describes the publicly accessible of the instance profile + :param pulumi.Input[str] subnet_group_identifier: The property describes a subnet group identifier for the instance profile. + :param pulumi.Input[Sequence[pulumi.Input['InstanceProfileTagArgs']]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] vpc_security_groups: The property describes vps security groups for the instance profile. + """ + if availability_zone is not None: + pulumi.set(__self__, "availability_zone", availability_zone) + if description is not None: + pulumi.set(__self__, "description", description) + if instance_profile_identifier is not None: + pulumi.set(__self__, "instance_profile_identifier", instance_profile_identifier) + if instance_profile_name is not None: + pulumi.set(__self__, "instance_profile_name", instance_profile_name) + if kms_key_arn is not None: + pulumi.set(__self__, "kms_key_arn", kms_key_arn) + if network_type is not None: + pulumi.set(__self__, "network_type", network_type) + if publicly_accessible is not None: + pulumi.set(__self__, "publicly_accessible", publicly_accessible) + if subnet_group_identifier is not None: + pulumi.set(__self__, "subnet_group_identifier", subnet_group_identifier) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if vpc_security_groups is not None: + pulumi.set(__self__, "vpc_security_groups", vpc_security_groups) + + @property + @pulumi.getter(name="availabilityZone") + def availability_zone(self) -> Optional[pulumi.Input[str]]: + """ + The property describes an availability zone of the instance profile. + """ + return pulumi.get(self, "availability_zone") + + @availability_zone.setter + def availability_zone(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "availability_zone", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + The optional description of the instance profile. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="instanceProfileIdentifier") + def instance_profile_identifier(self) -> Optional[pulumi.Input[str]]: + """ + The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + """ + return pulumi.get(self, "instance_profile_identifier") + + @instance_profile_identifier.setter + def instance_profile_identifier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "instance_profile_identifier", value) + + @property + @pulumi.getter(name="instanceProfileName") + def instance_profile_name(self) -> Optional[pulumi.Input[str]]: + """ + The property describes a name for the instance profile. + """ + return pulumi.get(self, "instance_profile_name") + + @instance_profile_name.setter + def instance_profile_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "instance_profile_name", value) + + @property + @pulumi.getter(name="kmsKeyArn") + def kms_key_arn(self) -> Optional[pulumi.Input[str]]: + """ + The property describes kms key arn for the instance profile. + """ + return pulumi.get(self, "kms_key_arn") + + @kms_key_arn.setter + def kms_key_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kms_key_arn", value) + + @property + @pulumi.getter(name="networkType") + def network_type(self) -> Optional[pulumi.Input['InstanceProfileNetworkType']]: + """ + The property describes a network type for the instance profile. + """ + return pulumi.get(self, "network_type") + + @network_type.setter + def network_type(self, value: Optional[pulumi.Input['InstanceProfileNetworkType']]): + pulumi.set(self, "network_type", value) + + @property + @pulumi.getter(name="publiclyAccessible") + def publicly_accessible(self) -> Optional[pulumi.Input[bool]]: + """ + The property describes the publicly accessible of the instance profile + """ + return pulumi.get(self, "publicly_accessible") + + @publicly_accessible.setter + def publicly_accessible(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "publicly_accessible", value) + + @property + @pulumi.getter(name="subnetGroupIdentifier") + def subnet_group_identifier(self) -> Optional[pulumi.Input[str]]: + """ + The property describes a subnet group identifier for the instance profile. + """ + return pulumi.get(self, "subnet_group_identifier") + + @subnet_group_identifier.setter + def subnet_group_identifier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "subnet_group_identifier", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['InstanceProfileTagArgs']]]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['InstanceProfileTagArgs']]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="vpcSecurityGroups") + def vpc_security_groups(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + The property describes vps security groups for the instance profile. + """ + return pulumi.get(self, "vpc_security_groups") + + @vpc_security_groups.setter + def vpc_security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "vpc_security_groups", value) + + +class InstanceProfile(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + availability_zone: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + instance_profile_identifier: Optional[pulumi.Input[str]] = None, + instance_profile_name: Optional[pulumi.Input[str]] = None, + kms_key_arn: Optional[pulumi.Input[str]] = None, + network_type: Optional[pulumi.Input['InstanceProfileNetworkType']] = None, + publicly_accessible: Optional[pulumi.Input[bool]] = None, + subnet_group_identifier: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['InstanceProfileTagArgs']]]]] = None, + vpc_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + __props__=None): + """ + Resource schema for AWS::DMS::InstanceProfile. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] availability_zone: The property describes an availability zone of the instance profile. + :param pulumi.Input[str] description: The optional description of the instance profile. + :param pulumi.Input[str] instance_profile_identifier: The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + :param pulumi.Input[str] instance_profile_name: The property describes a name for the instance profile. + :param pulumi.Input[str] kms_key_arn: The property describes kms key arn for the instance profile. + :param pulumi.Input['InstanceProfileNetworkType'] network_type: The property describes a network type for the instance profile. + :param pulumi.Input[bool] publicly_accessible: The property describes the publicly accessible of the instance profile + :param pulumi.Input[str] subnet_group_identifier: The property describes a subnet group identifier for the instance profile. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['InstanceProfileTagArgs']]]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[Sequence[pulumi.Input[str]]] vpc_security_groups: The property describes vps security groups for the instance profile. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: Optional[InstanceProfileArgs] = None, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource schema for AWS::DMS::InstanceProfile. + + :param str resource_name: The name of the resource. + :param InstanceProfileArgs 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(InstanceProfileArgs, 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, + availability_zone: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + instance_profile_identifier: Optional[pulumi.Input[str]] = None, + instance_profile_name: Optional[pulumi.Input[str]] = None, + kms_key_arn: Optional[pulumi.Input[str]] = None, + network_type: Optional[pulumi.Input['InstanceProfileNetworkType']] = None, + publicly_accessible: Optional[pulumi.Input[bool]] = None, + subnet_group_identifier: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['InstanceProfileTagArgs']]]]] = None, + vpc_security_groups: Optional[pulumi.Input[Sequence[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__ = InstanceProfileArgs.__new__(InstanceProfileArgs) + + __props__.__dict__["availability_zone"] = availability_zone + __props__.__dict__["description"] = description + __props__.__dict__["instance_profile_identifier"] = instance_profile_identifier + __props__.__dict__["instance_profile_name"] = instance_profile_name + __props__.__dict__["kms_key_arn"] = kms_key_arn + __props__.__dict__["network_type"] = network_type + __props__.__dict__["publicly_accessible"] = publicly_accessible + __props__.__dict__["subnet_group_identifier"] = subnet_group_identifier + __props__.__dict__["tags"] = tags + __props__.__dict__["vpc_security_groups"] = vpc_security_groups + __props__.__dict__["instance_profile_arn"] = None + __props__.__dict__["instance_profile_creation_time"] = None + super(InstanceProfile, __self__).__init__( + 'aws-native:dms:InstanceProfile', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'InstanceProfile': + """ + Get an existing InstanceProfile 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__ = InstanceProfileArgs.__new__(InstanceProfileArgs) + + __props__.__dict__["availability_zone"] = None + __props__.__dict__["description"] = None + __props__.__dict__["instance_profile_arn"] = None + __props__.__dict__["instance_profile_creation_time"] = None + __props__.__dict__["instance_profile_identifier"] = None + __props__.__dict__["instance_profile_name"] = None + __props__.__dict__["kms_key_arn"] = None + __props__.__dict__["network_type"] = None + __props__.__dict__["publicly_accessible"] = None + __props__.__dict__["subnet_group_identifier"] = None + __props__.__dict__["tags"] = None + __props__.__dict__["vpc_security_groups"] = None + return InstanceProfile(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="availabilityZone") + def availability_zone(self) -> pulumi.Output[Optional[str]]: + """ + The property describes an availability zone of the instance profile. + """ + return pulumi.get(self, "availability_zone") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + """ + The optional description of the instance profile. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="instanceProfileArn") + def instance_profile_arn(self) -> pulumi.Output[str]: + """ + The property describes an ARN of the instance profile. + """ + return pulumi.get(self, "instance_profile_arn") + + @property + @pulumi.getter(name="instanceProfileCreationTime") + def instance_profile_creation_time(self) -> pulumi.Output[str]: + """ + The property describes a creating time of the instance profile. + """ + return pulumi.get(self, "instance_profile_creation_time") + + @property + @pulumi.getter(name="instanceProfileIdentifier") + def instance_profile_identifier(self) -> pulumi.Output[Optional[str]]: + """ + The property describes an identifier for the instance profile. It is used for describing/deleting/modifying. Can be name/arn + """ + return pulumi.get(self, "instance_profile_identifier") + + @property + @pulumi.getter(name="instanceProfileName") + def instance_profile_name(self) -> pulumi.Output[Optional[str]]: + """ + The property describes a name for the instance profile. + """ + return pulumi.get(self, "instance_profile_name") + + @property + @pulumi.getter(name="kmsKeyArn") + def kms_key_arn(self) -> pulumi.Output[Optional[str]]: + """ + The property describes kms key arn for the instance profile. + """ + return pulumi.get(self, "kms_key_arn") + + @property + @pulumi.getter(name="networkType") + def network_type(self) -> pulumi.Output[Optional['InstanceProfileNetworkType']]: + """ + The property describes a network type for the instance profile. + """ + return pulumi.get(self, "network_type") + + @property + @pulumi.getter(name="publiclyAccessible") + def publicly_accessible(self) -> pulumi.Output[Optional[bool]]: + """ + The property describes the publicly accessible of the instance profile + """ + return pulumi.get(self, "publicly_accessible") + + @property + @pulumi.getter(name="subnetGroupIdentifier") + def subnet_group_identifier(self) -> pulumi.Output[Optional[str]]: + """ + The property describes a subnet group identifier for the instance profile. + """ + return pulumi.get(self, "subnet_group_identifier") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.InstanceProfileTag']]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="vpcSecurityGroups") + def vpc_security_groups(self) -> pulumi.Output[Optional[Sequence[str]]]: + """ + The property describes vps security groups for the instance profile. + """ + return pulumi.get(self, "vpc_security_groups") + diff --git a/sdk/python/pulumi_aws_native/dms/migration_project.py b/sdk/python/pulumi_aws_native/dms/migration_project.py new file mode 100644 index 0000000000..50a5766a64 --- /dev/null +++ b/sdk/python/pulumi_aws_native/dms/migration_project.py @@ -0,0 +1,450 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._inputs import * + +__all__ = ['MigrationProjectArgs', 'MigrationProject'] + +@pulumi.input_type +class MigrationProjectArgs: + def __init__(__self__, *, + description: Optional[pulumi.Input[str]] = None, + instance_profile_arn: Optional[pulumi.Input[str]] = None, + instance_profile_identifier: Optional[pulumi.Input[str]] = None, + instance_profile_name: Optional[pulumi.Input[str]] = None, + migration_project_creation_time: Optional[pulumi.Input[str]] = None, + migration_project_identifier: Optional[pulumi.Input[str]] = None, + migration_project_name: Optional[pulumi.Input[str]] = None, + schema_conversion_application_attributes: Optional[pulumi.Input['SchemaConversionApplicationAttributesPropertiesArgs']] = None, + source_data_provider_descriptors: Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectDataProviderDescriptorArgs']]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectTagArgs']]]] = None, + target_data_provider_descriptors: Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectDataProviderDescriptorArgs']]]] = None, + transformation_rules: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a MigrationProject resource. + :param pulumi.Input[str] description: The optional description of the migration project. + :param pulumi.Input[str] instance_profile_arn: The property describes an instance profile arn for the migration project. For read + :param pulumi.Input[str] instance_profile_identifier: The property describes an instance profile identifier for the migration project. For create + :param pulumi.Input[str] instance_profile_name: The property describes an instance profile name for the migration project. For read + :param pulumi.Input[str] migration_project_creation_time: The property describes a creating time of the migration project. + :param pulumi.Input[str] migration_project_identifier: The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + :param pulumi.Input[str] migration_project_name: The property describes a name to identify the migration project. + :param pulumi.Input['SchemaConversionApplicationAttributesPropertiesArgs'] schema_conversion_application_attributes: The property describes schema conversion application attributes for the migration project. + :param pulumi.Input[Sequence[pulumi.Input['MigrationProjectDataProviderDescriptorArgs']]] source_data_provider_descriptors: The property describes source data provider descriptors for the migration project. + :param pulumi.Input[Sequence[pulumi.Input['MigrationProjectTagArgs']]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[Sequence[pulumi.Input['MigrationProjectDataProviderDescriptorArgs']]] target_data_provider_descriptors: The property describes target data provider descriptors for the migration project. + :param pulumi.Input[str] transformation_rules: The property describes transformation rules for the migration project. + """ + if description is not None: + pulumi.set(__self__, "description", description) + if instance_profile_arn is not None: + pulumi.set(__self__, "instance_profile_arn", instance_profile_arn) + if instance_profile_identifier is not None: + pulumi.set(__self__, "instance_profile_identifier", instance_profile_identifier) + if instance_profile_name is not None: + pulumi.set(__self__, "instance_profile_name", instance_profile_name) + if migration_project_creation_time is not None: + pulumi.set(__self__, "migration_project_creation_time", migration_project_creation_time) + if migration_project_identifier is not None: + pulumi.set(__self__, "migration_project_identifier", migration_project_identifier) + if migration_project_name is not None: + pulumi.set(__self__, "migration_project_name", migration_project_name) + if schema_conversion_application_attributes is not None: + pulumi.set(__self__, "schema_conversion_application_attributes", schema_conversion_application_attributes) + if source_data_provider_descriptors is not None: + pulumi.set(__self__, "source_data_provider_descriptors", source_data_provider_descriptors) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if target_data_provider_descriptors is not None: + pulumi.set(__self__, "target_data_provider_descriptors", target_data_provider_descriptors) + if transformation_rules is not None: + pulumi.set(__self__, "transformation_rules", transformation_rules) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + The optional description of the migration project. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="instanceProfileArn") + def instance_profile_arn(self) -> Optional[pulumi.Input[str]]: + """ + The property describes an instance profile arn for the migration project. For read + """ + return pulumi.get(self, "instance_profile_arn") + + @instance_profile_arn.setter + def instance_profile_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "instance_profile_arn", value) + + @property + @pulumi.getter(name="instanceProfileIdentifier") + def instance_profile_identifier(self) -> Optional[pulumi.Input[str]]: + """ + The property describes an instance profile identifier for the migration project. For create + """ + return pulumi.get(self, "instance_profile_identifier") + + @instance_profile_identifier.setter + def instance_profile_identifier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "instance_profile_identifier", value) + + @property + @pulumi.getter(name="instanceProfileName") + def instance_profile_name(self) -> Optional[pulumi.Input[str]]: + """ + The property describes an instance profile name for the migration project. For read + """ + return pulumi.get(self, "instance_profile_name") + + @instance_profile_name.setter + def instance_profile_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "instance_profile_name", value) + + @property + @pulumi.getter(name="migrationProjectCreationTime") + def migration_project_creation_time(self) -> Optional[pulumi.Input[str]]: + """ + The property describes a creating time of the migration project. + """ + return pulumi.get(self, "migration_project_creation_time") + + @migration_project_creation_time.setter + def migration_project_creation_time(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "migration_project_creation_time", value) + + @property + @pulumi.getter(name="migrationProjectIdentifier") + def migration_project_identifier(self) -> Optional[pulumi.Input[str]]: + """ + The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + """ + return pulumi.get(self, "migration_project_identifier") + + @migration_project_identifier.setter + def migration_project_identifier(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "migration_project_identifier", value) + + @property + @pulumi.getter(name="migrationProjectName") + def migration_project_name(self) -> Optional[pulumi.Input[str]]: + """ + The property describes a name to identify the migration project. + """ + return pulumi.get(self, "migration_project_name") + + @migration_project_name.setter + def migration_project_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "migration_project_name", value) + + @property + @pulumi.getter(name="schemaConversionApplicationAttributes") + def schema_conversion_application_attributes(self) -> Optional[pulumi.Input['SchemaConversionApplicationAttributesPropertiesArgs']]: + """ + The property describes schema conversion application attributes for the migration project. + """ + return pulumi.get(self, "schema_conversion_application_attributes") + + @schema_conversion_application_attributes.setter + def schema_conversion_application_attributes(self, value: Optional[pulumi.Input['SchemaConversionApplicationAttributesPropertiesArgs']]): + pulumi.set(self, "schema_conversion_application_attributes", value) + + @property + @pulumi.getter(name="sourceDataProviderDescriptors") + def source_data_provider_descriptors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectDataProviderDescriptorArgs']]]]: + """ + The property describes source data provider descriptors for the migration project. + """ + return pulumi.get(self, "source_data_provider_descriptors") + + @source_data_provider_descriptors.setter + def source_data_provider_descriptors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectDataProviderDescriptorArgs']]]]): + pulumi.set(self, "source_data_provider_descriptors", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectTagArgs']]]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectTagArgs']]]]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter(name="targetDataProviderDescriptors") + def target_data_provider_descriptors(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectDataProviderDescriptorArgs']]]]: + """ + The property describes target data provider descriptors for the migration project. + """ + return pulumi.get(self, "target_data_provider_descriptors") + + @target_data_provider_descriptors.setter + def target_data_provider_descriptors(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['MigrationProjectDataProviderDescriptorArgs']]]]): + pulumi.set(self, "target_data_provider_descriptors", value) + + @property + @pulumi.getter(name="transformationRules") + def transformation_rules(self) -> Optional[pulumi.Input[str]]: + """ + The property describes transformation rules for the migration project. + """ + return pulumi.get(self, "transformation_rules") + + @transformation_rules.setter + def transformation_rules(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "transformation_rules", value) + + +class MigrationProject(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + description: Optional[pulumi.Input[str]] = None, + instance_profile_arn: Optional[pulumi.Input[str]] = None, + instance_profile_identifier: Optional[pulumi.Input[str]] = None, + instance_profile_name: Optional[pulumi.Input[str]] = None, + migration_project_creation_time: Optional[pulumi.Input[str]] = None, + migration_project_identifier: Optional[pulumi.Input[str]] = None, + migration_project_name: Optional[pulumi.Input[str]] = None, + schema_conversion_application_attributes: Optional[pulumi.Input[pulumi.InputType['SchemaConversionApplicationAttributesPropertiesArgs']]] = None, + source_data_provider_descriptors: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectDataProviderDescriptorArgs']]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectTagArgs']]]]] = None, + target_data_provider_descriptors: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectDataProviderDescriptorArgs']]]]] = None, + transformation_rules: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Resource schema for AWS::DMS::MigrationProject + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] description: The optional description of the migration project. + :param pulumi.Input[str] instance_profile_arn: The property describes an instance profile arn for the migration project. For read + :param pulumi.Input[str] instance_profile_identifier: The property describes an instance profile identifier for the migration project. For create + :param pulumi.Input[str] instance_profile_name: The property describes an instance profile name for the migration project. For read + :param pulumi.Input[str] migration_project_creation_time: The property describes a creating time of the migration project. + :param pulumi.Input[str] migration_project_identifier: The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + :param pulumi.Input[str] migration_project_name: The property describes a name to identify the migration project. + :param pulumi.Input[pulumi.InputType['SchemaConversionApplicationAttributesPropertiesArgs']] schema_conversion_application_attributes: The property describes schema conversion application attributes for the migration project. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectDataProviderDescriptorArgs']]]] source_data_provider_descriptors: The property describes source data provider descriptors for the migration project. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectTagArgs']]]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectDataProviderDescriptorArgs']]]] target_data_provider_descriptors: The property describes target data provider descriptors for the migration project. + :param pulumi.Input[str] transformation_rules: The property describes transformation rules for the migration project. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: Optional[MigrationProjectArgs] = None, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource schema for AWS::DMS::MigrationProject + + :param str resource_name: The name of the resource. + :param MigrationProjectArgs 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(MigrationProjectArgs, 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, + description: Optional[pulumi.Input[str]] = None, + instance_profile_arn: Optional[pulumi.Input[str]] = None, + instance_profile_identifier: Optional[pulumi.Input[str]] = None, + instance_profile_name: Optional[pulumi.Input[str]] = None, + migration_project_creation_time: Optional[pulumi.Input[str]] = None, + migration_project_identifier: Optional[pulumi.Input[str]] = None, + migration_project_name: Optional[pulumi.Input[str]] = None, + schema_conversion_application_attributes: Optional[pulumi.Input[pulumi.InputType['SchemaConversionApplicationAttributesPropertiesArgs']]] = None, + source_data_provider_descriptors: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectDataProviderDescriptorArgs']]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectTagArgs']]]]] = None, + target_data_provider_descriptors: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['MigrationProjectDataProviderDescriptorArgs']]]]] = None, + transformation_rules: 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__ = MigrationProjectArgs.__new__(MigrationProjectArgs) + + __props__.__dict__["description"] = description + __props__.__dict__["instance_profile_arn"] = instance_profile_arn + __props__.__dict__["instance_profile_identifier"] = instance_profile_identifier + __props__.__dict__["instance_profile_name"] = instance_profile_name + __props__.__dict__["migration_project_creation_time"] = migration_project_creation_time + __props__.__dict__["migration_project_identifier"] = migration_project_identifier + __props__.__dict__["migration_project_name"] = migration_project_name + __props__.__dict__["schema_conversion_application_attributes"] = schema_conversion_application_attributes + __props__.__dict__["source_data_provider_descriptors"] = source_data_provider_descriptors + __props__.__dict__["tags"] = tags + __props__.__dict__["target_data_provider_descriptors"] = target_data_provider_descriptors + __props__.__dict__["transformation_rules"] = transformation_rules + __props__.__dict__["migration_project_arn"] = None + super(MigrationProject, __self__).__init__( + 'aws-native:dms:MigrationProject', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'MigrationProject': + """ + Get an existing MigrationProject 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__ = MigrationProjectArgs.__new__(MigrationProjectArgs) + + __props__.__dict__["description"] = None + __props__.__dict__["instance_profile_arn"] = None + __props__.__dict__["instance_profile_identifier"] = None + __props__.__dict__["instance_profile_name"] = None + __props__.__dict__["migration_project_arn"] = None + __props__.__dict__["migration_project_creation_time"] = None + __props__.__dict__["migration_project_identifier"] = None + __props__.__dict__["migration_project_name"] = None + __props__.__dict__["schema_conversion_application_attributes"] = None + __props__.__dict__["source_data_provider_descriptors"] = None + __props__.__dict__["tags"] = None + __props__.__dict__["target_data_provider_descriptors"] = None + __props__.__dict__["transformation_rules"] = None + return MigrationProject(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + """ + The optional description of the migration project. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="instanceProfileArn") + def instance_profile_arn(self) -> pulumi.Output[Optional[str]]: + """ + The property describes an instance profile arn for the migration project. For read + """ + return pulumi.get(self, "instance_profile_arn") + + @property + @pulumi.getter(name="instanceProfileIdentifier") + def instance_profile_identifier(self) -> pulumi.Output[Optional[str]]: + """ + The property describes an instance profile identifier for the migration project. For create + """ + return pulumi.get(self, "instance_profile_identifier") + + @property + @pulumi.getter(name="instanceProfileName") + def instance_profile_name(self) -> pulumi.Output[Optional[str]]: + """ + The property describes an instance profile name for the migration project. For read + """ + return pulumi.get(self, "instance_profile_name") + + @property + @pulumi.getter(name="migrationProjectArn") + def migration_project_arn(self) -> pulumi.Output[str]: + """ + The property describes an ARN of the migration project. + """ + return pulumi.get(self, "migration_project_arn") + + @property + @pulumi.getter(name="migrationProjectCreationTime") + def migration_project_creation_time(self) -> pulumi.Output[Optional[str]]: + """ + The property describes a creating time of the migration project. + """ + return pulumi.get(self, "migration_project_creation_time") + + @property + @pulumi.getter(name="migrationProjectIdentifier") + def migration_project_identifier(self) -> pulumi.Output[Optional[str]]: + """ + The property describes an identifier for the migration project. It is used for describing/deleting/modifying can be name/arn + """ + return pulumi.get(self, "migration_project_identifier") + + @property + @pulumi.getter(name="migrationProjectName") + def migration_project_name(self) -> pulumi.Output[Optional[str]]: + """ + The property describes a name to identify the migration project. + """ + return pulumi.get(self, "migration_project_name") + + @property + @pulumi.getter(name="schemaConversionApplicationAttributes") + def schema_conversion_application_attributes(self) -> pulumi.Output[Optional['outputs.SchemaConversionApplicationAttributesProperties']]: + """ + The property describes schema conversion application attributes for the migration project. + """ + return pulumi.get(self, "schema_conversion_application_attributes") + + @property + @pulumi.getter(name="sourceDataProviderDescriptors") + def source_data_provider_descriptors(self) -> pulumi.Output[Optional[Sequence['outputs.MigrationProjectDataProviderDescriptor']]]: + """ + The property describes source data provider descriptors for the migration project. + """ + return pulumi.get(self, "source_data_provider_descriptors") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.MigrationProjectTag']]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter(name="targetDataProviderDescriptors") + def target_data_provider_descriptors(self) -> pulumi.Output[Optional[Sequence['outputs.MigrationProjectDataProviderDescriptor']]]: + """ + The property describes target data provider descriptors for the migration project. + """ + return pulumi.get(self, "target_data_provider_descriptors") + + @property + @pulumi.getter(name="transformationRules") + def transformation_rules(self) -> pulumi.Output[Optional[str]]: + """ + The property describes transformation rules for the migration project. + """ + return pulumi.get(self, "transformation_rules") + diff --git a/sdk/python/pulumi_aws_native/dms/outputs.py b/sdk/python/pulumi_aws_native/dms/outputs.py index 3919b42808..1b5edbe0cc 100644 --- a/sdk/python/pulumi_aws_native/dms/outputs.py +++ b/sdk/python/pulumi_aws_native/dms/outputs.py @@ -8,9 +8,11 @@ import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities +from . import outputs from ._enums import * __all__ = [ + 'DataProviderTag', 'EndpointDocDbSettings', 'EndpointDynamoDbSettings', 'EndpointElasticsearchSettings', @@ -30,13 +32,58 @@ 'EndpointSybaseSettings', 'EndpointTag', 'EventSubscriptionTag', + 'InstanceProfileTag', + 'MigrationProjectDataProviderDescriptor', + 'MigrationProjectTag', 'ReplicationConfigComputeConfig', 'ReplicationConfigTag', 'ReplicationInstanceTag', 'ReplicationSubnetGroupTag', 'ReplicationTaskTag', + 'SchemaConversionApplicationAttributesProperties', + 'Settings0Properties', + 'Settings0PropertiesPostgreSqlSettingsProperties', + 'Settings1Properties', + 'Settings1PropertiesMySqlSettingsProperties', + 'Settings2Properties', + 'Settings2PropertiesOracleSettingsProperties', + 'Settings3Properties', + 'Settings3PropertiesMicrosoftSqlServerSettingsProperties', ] +@pulumi.output_type +class DataProviderTag(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 EndpointDocDbSettings(dict): @staticmethod @@ -348,6 +395,12 @@ def __key_warning(key: str): suggest = None if key == "currentLsn": suggest = "current_lsn" + elif key == "keepCsvFiles": + suggest = "keep_csv_files" + elif key == "loadTimeout": + suggest = "load_timeout" + elif key == "maxFileSize": + suggest = "max_file_size" elif key == "maxKBytesPerRead": suggest = "max_k_bytes_per_read" elif key == "secretsManagerAccessRoleArn": @@ -356,6 +409,8 @@ def __key_warning(key: str): suggest = "secrets_manager_secret_id" elif key == "setDataCaptureChanges": suggest = "set_data_capture_changes" + elif key == "writeBufferSize": + suggest = "write_buffer_size" if suggest: pulumi.log.warn(f"Key '{key}' not found in EndpointIbmDb2Settings. Access the value via the '{suggest}' property getter instead.") @@ -370,12 +425,22 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, current_lsn: Optional[str] = None, + keep_csv_files: Optional[bool] = None, + load_timeout: Optional[int] = None, + max_file_size: Optional[int] = None, max_k_bytes_per_read: Optional[int] = None, secrets_manager_access_role_arn: Optional[str] = None, secrets_manager_secret_id: Optional[str] = None, - set_data_capture_changes: Optional[bool] = None): + set_data_capture_changes: Optional[bool] = None, + write_buffer_size: Optional[int] = None): if current_lsn is not None: pulumi.set(__self__, "current_lsn", current_lsn) + if keep_csv_files is not None: + pulumi.set(__self__, "keep_csv_files", keep_csv_files) + if load_timeout is not None: + pulumi.set(__self__, "load_timeout", load_timeout) + if max_file_size is not None: + pulumi.set(__self__, "max_file_size", max_file_size) if max_k_bytes_per_read is not None: pulumi.set(__self__, "max_k_bytes_per_read", max_k_bytes_per_read) if secrets_manager_access_role_arn is not None: @@ -384,12 +449,29 @@ def __init__(__self__, *, pulumi.set(__self__, "secrets_manager_secret_id", secrets_manager_secret_id) if set_data_capture_changes is not None: pulumi.set(__self__, "set_data_capture_changes", set_data_capture_changes) + if write_buffer_size is not None: + pulumi.set(__self__, "write_buffer_size", write_buffer_size) @property @pulumi.getter(name="currentLsn") def current_lsn(self) -> Optional[str]: return pulumi.get(self, "current_lsn") + @property + @pulumi.getter(name="keepCsvFiles") + def keep_csv_files(self) -> Optional[bool]: + return pulumi.get(self, "keep_csv_files") + + @property + @pulumi.getter(name="loadTimeout") + def load_timeout(self) -> Optional[int]: + return pulumi.get(self, "load_timeout") + + @property + @pulumi.getter(name="maxFileSize") + def max_file_size(self) -> Optional[int]: + return pulumi.get(self, "max_file_size") + @property @pulumi.getter(name="maxKBytesPerRead") def max_k_bytes_per_read(self) -> Optional[int]: @@ -410,6 +492,11 @@ def secrets_manager_secret_id(self) -> Optional[str]: def set_data_capture_changes(self) -> Optional[bool]: return pulumi.get(self, "set_data_capture_changes") + @property + @pulumi.getter(name="writeBufferSize") + def write_buffer_size(self) -> Optional[int]: + return pulumi.get(self, "write_buffer_size") + @pulumi.output_type class EndpointKafkaSettings(dict): @@ -2679,6 +2766,148 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class InstanceProfileTag(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 MigrationProjectDataProviderDescriptor(dict): + """ + It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "dataProviderArn": + suggest = "data_provider_arn" + elif key == "dataProviderIdentifier": + suggest = "data_provider_identifier" + elif key == "dataProviderName": + suggest = "data_provider_name" + elif key == "secretsManagerAccessRoleArn": + suggest = "secrets_manager_access_role_arn" + elif key == "secretsManagerSecretId": + suggest = "secrets_manager_secret_id" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in MigrationProjectDataProviderDescriptor. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + MigrationProjectDataProviderDescriptor.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + MigrationProjectDataProviderDescriptor.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + data_provider_arn: Optional[str] = None, + data_provider_identifier: Optional[str] = None, + data_provider_name: Optional[str] = None, + secrets_manager_access_role_arn: Optional[str] = None, + secrets_manager_secret_id: Optional[str] = None): + """ + It is an object that describes Source and Target DataProviders and credentials for connecting to databases that are used in MigrationProject + """ + if data_provider_arn is not None: + pulumi.set(__self__, "data_provider_arn", data_provider_arn) + if data_provider_identifier is not None: + pulumi.set(__self__, "data_provider_identifier", data_provider_identifier) + if data_provider_name is not None: + pulumi.set(__self__, "data_provider_name", data_provider_name) + if secrets_manager_access_role_arn is not None: + pulumi.set(__self__, "secrets_manager_access_role_arn", secrets_manager_access_role_arn) + if secrets_manager_secret_id is not None: + pulumi.set(__self__, "secrets_manager_secret_id", secrets_manager_secret_id) + + @property + @pulumi.getter(name="dataProviderArn") + def data_provider_arn(self) -> Optional[str]: + return pulumi.get(self, "data_provider_arn") + + @property + @pulumi.getter(name="dataProviderIdentifier") + def data_provider_identifier(self) -> Optional[str]: + return pulumi.get(self, "data_provider_identifier") + + @property + @pulumi.getter(name="dataProviderName") + def data_provider_name(self) -> Optional[str]: + return pulumi.get(self, "data_provider_name") + + @property + @pulumi.getter(name="secretsManagerAccessRoleArn") + def secrets_manager_access_role_arn(self) -> Optional[str]: + return pulumi.get(self, "secrets_manager_access_role_arn") + + @property + @pulumi.getter(name="secretsManagerSecretId") + def secrets_manager_secret_id(self) -> Optional[str]: + return pulumi.get(self, "secrets_manager_secret_id") + + +@pulumi.output_type +class MigrationProjectTag(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 ReplicationConfigComputeConfig(dict): """ @@ -2886,3 +3115,505 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class SchemaConversionApplicationAttributesProperties(dict): + """ + The property describes schema conversion application attributes for the migration project. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "s3BucketPath": + suggest = "s3_bucket_path" + elif key == "s3BucketRoleArn": + suggest = "s3_bucket_role_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in SchemaConversionApplicationAttributesProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + SchemaConversionApplicationAttributesProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + SchemaConversionApplicationAttributesProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + s3_bucket_path: Optional[str] = None, + s3_bucket_role_arn: Optional[str] = None): + """ + The property describes schema conversion application attributes for the migration project. + """ + if s3_bucket_path is not None: + pulumi.set(__self__, "s3_bucket_path", s3_bucket_path) + if s3_bucket_role_arn is not None: + pulumi.set(__self__, "s3_bucket_role_arn", s3_bucket_role_arn) + + @property + @pulumi.getter(name="s3BucketPath") + def s3_bucket_path(self) -> Optional[str]: + return pulumi.get(self, "s3_bucket_path") + + @property + @pulumi.getter(name="s3BucketRoleArn") + def s3_bucket_role_arn(self) -> Optional[str]: + return pulumi.get(self, "s3_bucket_role_arn") + + +@pulumi.output_type +class Settings0Properties(dict): + """ + PostgreSqlSettings property identifier. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "postgreSqlSettings": + suggest = "postgre_sql_settings" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in Settings0Properties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + Settings0Properties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + Settings0Properties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + postgre_sql_settings: Optional['outputs.Settings0PropertiesPostgreSqlSettingsProperties'] = None): + """ + PostgreSqlSettings property identifier. + """ + if postgre_sql_settings is not None: + pulumi.set(__self__, "postgre_sql_settings", postgre_sql_settings) + + @property + @pulumi.getter(name="postgreSqlSettings") + def postgre_sql_settings(self) -> Optional['outputs.Settings0PropertiesPostgreSqlSettingsProperties']: + return pulumi.get(self, "postgre_sql_settings") + + +@pulumi.output_type +class Settings0PropertiesPostgreSqlSettingsProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "certificateArn": + suggest = "certificate_arn" + elif key == "databaseName": + suggest = "database_name" + elif key == "serverName": + suggest = "server_name" + elif key == "sslMode": + suggest = "ssl_mode" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in Settings0PropertiesPostgreSqlSettingsProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + Settings0PropertiesPostgreSqlSettingsProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + Settings0PropertiesPostgreSqlSettingsProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + certificate_arn: Optional[str] = None, + database_name: Optional[str] = None, + port: Optional[int] = None, + server_name: Optional[str] = None, + ssl_mode: Optional['DataProviderDmsSslModeValue'] = None): + if certificate_arn is not None: + pulumi.set(__self__, "certificate_arn", certificate_arn) + if database_name is not None: + pulumi.set(__self__, "database_name", database_name) + if port is not None: + pulumi.set(__self__, "port", port) + if server_name is not None: + pulumi.set(__self__, "server_name", server_name) + if ssl_mode is not None: + pulumi.set(__self__, "ssl_mode", ssl_mode) + + @property + @pulumi.getter(name="certificateArn") + def certificate_arn(self) -> Optional[str]: + return pulumi.get(self, "certificate_arn") + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> Optional[str]: + return pulumi.get(self, "database_name") + + @property + @pulumi.getter + def port(self) -> Optional[int]: + return pulumi.get(self, "port") + + @property + @pulumi.getter(name="serverName") + def server_name(self) -> Optional[str]: + return pulumi.get(self, "server_name") + + @property + @pulumi.getter(name="sslMode") + def ssl_mode(self) -> Optional['DataProviderDmsSslModeValue']: + return pulumi.get(self, "ssl_mode") + + +@pulumi.output_type +class Settings1Properties(dict): + """ + MySqlSettings property identifier. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "mySqlSettings": + suggest = "my_sql_settings" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in Settings1Properties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + Settings1Properties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + Settings1Properties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + my_sql_settings: Optional['outputs.Settings1PropertiesMySqlSettingsProperties'] = None): + """ + MySqlSettings property identifier. + """ + if my_sql_settings is not None: + pulumi.set(__self__, "my_sql_settings", my_sql_settings) + + @property + @pulumi.getter(name="mySqlSettings") + def my_sql_settings(self) -> Optional['outputs.Settings1PropertiesMySqlSettingsProperties']: + return pulumi.get(self, "my_sql_settings") + + +@pulumi.output_type +class Settings1PropertiesMySqlSettingsProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "certificateArn": + suggest = "certificate_arn" + elif key == "serverName": + suggest = "server_name" + elif key == "sslMode": + suggest = "ssl_mode" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in Settings1PropertiesMySqlSettingsProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + Settings1PropertiesMySqlSettingsProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + Settings1PropertiesMySqlSettingsProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + certificate_arn: Optional[str] = None, + port: Optional[int] = None, + server_name: Optional[str] = None, + ssl_mode: Optional['DataProviderDmsSslModeValue'] = None): + if certificate_arn is not None: + pulumi.set(__self__, "certificate_arn", certificate_arn) + if port is not None: + pulumi.set(__self__, "port", port) + if server_name is not None: + pulumi.set(__self__, "server_name", server_name) + if ssl_mode is not None: + pulumi.set(__self__, "ssl_mode", ssl_mode) + + @property + @pulumi.getter(name="certificateArn") + def certificate_arn(self) -> Optional[str]: + return pulumi.get(self, "certificate_arn") + + @property + @pulumi.getter + def port(self) -> Optional[int]: + return pulumi.get(self, "port") + + @property + @pulumi.getter(name="serverName") + def server_name(self) -> Optional[str]: + return pulumi.get(self, "server_name") + + @property + @pulumi.getter(name="sslMode") + def ssl_mode(self) -> Optional['DataProviderDmsSslModeValue']: + return pulumi.get(self, "ssl_mode") + + +@pulumi.output_type +class Settings2Properties(dict): + """ + OracleSettings property identifier. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "oracleSettings": + suggest = "oracle_settings" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in Settings2Properties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + Settings2Properties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + Settings2Properties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + oracle_settings: Optional['outputs.Settings2PropertiesOracleSettingsProperties'] = None): + """ + OracleSettings property identifier. + """ + if oracle_settings is not None: + pulumi.set(__self__, "oracle_settings", oracle_settings) + + @property + @pulumi.getter(name="oracleSettings") + def oracle_settings(self) -> Optional['outputs.Settings2PropertiesOracleSettingsProperties']: + return pulumi.get(self, "oracle_settings") + + +@pulumi.output_type +class Settings2PropertiesOracleSettingsProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "asmServer": + suggest = "asm_server" + elif key == "certificateArn": + suggest = "certificate_arn" + elif key == "databaseName": + suggest = "database_name" + elif key == "secretsManagerOracleAsmAccessRoleArn": + suggest = "secrets_manager_oracle_asm_access_role_arn" + elif key == "secretsManagerOracleAsmSecretId": + suggest = "secrets_manager_oracle_asm_secret_id" + elif key == "secretsManagerSecurityDbEncryptionAccessRoleArn": + suggest = "secrets_manager_security_db_encryption_access_role_arn" + elif key == "secretsManagerSecurityDbEncryptionSecretId": + suggest = "secrets_manager_security_db_encryption_secret_id" + elif key == "serverName": + suggest = "server_name" + elif key == "sslMode": + suggest = "ssl_mode" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in Settings2PropertiesOracleSettingsProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + Settings2PropertiesOracleSettingsProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + Settings2PropertiesOracleSettingsProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + asm_server: Optional[str] = None, + certificate_arn: Optional[str] = None, + database_name: Optional[str] = None, + port: Optional[int] = None, + secrets_manager_oracle_asm_access_role_arn: Optional[str] = None, + secrets_manager_oracle_asm_secret_id: Optional[str] = None, + secrets_manager_security_db_encryption_access_role_arn: Optional[str] = None, + secrets_manager_security_db_encryption_secret_id: Optional[str] = None, + server_name: Optional[str] = None, + ssl_mode: Optional['DataProviderDmsSslModeValue'] = None): + if asm_server is not None: + pulumi.set(__self__, "asm_server", asm_server) + if certificate_arn is not None: + pulumi.set(__self__, "certificate_arn", certificate_arn) + if database_name is not None: + pulumi.set(__self__, "database_name", database_name) + if port is not None: + pulumi.set(__self__, "port", port) + if secrets_manager_oracle_asm_access_role_arn is not None: + pulumi.set(__self__, "secrets_manager_oracle_asm_access_role_arn", secrets_manager_oracle_asm_access_role_arn) + if secrets_manager_oracle_asm_secret_id is not None: + pulumi.set(__self__, "secrets_manager_oracle_asm_secret_id", secrets_manager_oracle_asm_secret_id) + if secrets_manager_security_db_encryption_access_role_arn is not None: + pulumi.set(__self__, "secrets_manager_security_db_encryption_access_role_arn", secrets_manager_security_db_encryption_access_role_arn) + if secrets_manager_security_db_encryption_secret_id is not None: + pulumi.set(__self__, "secrets_manager_security_db_encryption_secret_id", secrets_manager_security_db_encryption_secret_id) + if server_name is not None: + pulumi.set(__self__, "server_name", server_name) + if ssl_mode is not None: + pulumi.set(__self__, "ssl_mode", ssl_mode) + + @property + @pulumi.getter(name="asmServer") + def asm_server(self) -> Optional[str]: + return pulumi.get(self, "asm_server") + + @property + @pulumi.getter(name="certificateArn") + def certificate_arn(self) -> Optional[str]: + return pulumi.get(self, "certificate_arn") + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> Optional[str]: + return pulumi.get(self, "database_name") + + @property + @pulumi.getter + def port(self) -> Optional[int]: + return pulumi.get(self, "port") + + @property + @pulumi.getter(name="secretsManagerOracleAsmAccessRoleArn") + def secrets_manager_oracle_asm_access_role_arn(self) -> Optional[str]: + return pulumi.get(self, "secrets_manager_oracle_asm_access_role_arn") + + @property + @pulumi.getter(name="secretsManagerOracleAsmSecretId") + def secrets_manager_oracle_asm_secret_id(self) -> Optional[str]: + return pulumi.get(self, "secrets_manager_oracle_asm_secret_id") + + @property + @pulumi.getter(name="secretsManagerSecurityDbEncryptionAccessRoleArn") + def secrets_manager_security_db_encryption_access_role_arn(self) -> Optional[str]: + return pulumi.get(self, "secrets_manager_security_db_encryption_access_role_arn") + + @property + @pulumi.getter(name="secretsManagerSecurityDbEncryptionSecretId") + def secrets_manager_security_db_encryption_secret_id(self) -> Optional[str]: + return pulumi.get(self, "secrets_manager_security_db_encryption_secret_id") + + @property + @pulumi.getter(name="serverName") + def server_name(self) -> Optional[str]: + return pulumi.get(self, "server_name") + + @property + @pulumi.getter(name="sslMode") + def ssl_mode(self) -> Optional['DataProviderDmsSslModeValue']: + return pulumi.get(self, "ssl_mode") + + +@pulumi.output_type +class Settings3Properties(dict): + """ + MicrosoftSqlServerSettings property identifier. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "microsoftSqlServerSettings": + suggest = "microsoft_sql_server_settings" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in Settings3Properties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + Settings3Properties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + Settings3Properties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + microsoft_sql_server_settings: Optional['outputs.Settings3PropertiesMicrosoftSqlServerSettingsProperties'] = None): + """ + MicrosoftSqlServerSettings property identifier. + """ + if microsoft_sql_server_settings is not None: + pulumi.set(__self__, "microsoft_sql_server_settings", microsoft_sql_server_settings) + + @property + @pulumi.getter(name="microsoftSqlServerSettings") + def microsoft_sql_server_settings(self) -> Optional['outputs.Settings3PropertiesMicrosoftSqlServerSettingsProperties']: + return pulumi.get(self, "microsoft_sql_server_settings") + + +@pulumi.output_type +class Settings3PropertiesMicrosoftSqlServerSettingsProperties(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "certificateArn": + suggest = "certificate_arn" + elif key == "databaseName": + suggest = "database_name" + elif key == "serverName": + suggest = "server_name" + elif key == "sslMode": + suggest = "ssl_mode" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in Settings3PropertiesMicrosoftSqlServerSettingsProperties. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + Settings3PropertiesMicrosoftSqlServerSettingsProperties.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + Settings3PropertiesMicrosoftSqlServerSettingsProperties.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + certificate_arn: Optional[str] = None, + database_name: Optional[str] = None, + port: Optional[int] = None, + server_name: Optional[str] = None, + ssl_mode: Optional['DataProviderDmsSslModeValue'] = None): + if certificate_arn is not None: + pulumi.set(__self__, "certificate_arn", certificate_arn) + if database_name is not None: + pulumi.set(__self__, "database_name", database_name) + if port is not None: + pulumi.set(__self__, "port", port) + if server_name is not None: + pulumi.set(__self__, "server_name", server_name) + if ssl_mode is not None: + pulumi.set(__self__, "ssl_mode", ssl_mode) + + @property + @pulumi.getter(name="certificateArn") + def certificate_arn(self) -> Optional[str]: + return pulumi.get(self, "certificate_arn") + + @property + @pulumi.getter(name="databaseName") + def database_name(self) -> Optional[str]: + return pulumi.get(self, "database_name") + + @property + @pulumi.getter + def port(self) -> Optional[int]: + return pulumi.get(self, "port") + + @property + @pulumi.getter(name="serverName") + def server_name(self) -> Optional[str]: + return pulumi.get(self, "server_name") + + @property + @pulumi.getter(name="sslMode") + def ssl_mode(self) -> Optional['DataProviderDmsSslModeValue']: + return pulumi.get(self, "ssl_mode") + + diff --git a/sdk/python/pulumi_aws_native/dms/replication_config.py b/sdk/python/pulumi_aws_native/dms/replication_config.py index 446dae6b97..700d8a4869 100644 --- a/sdk/python/pulumi_aws_native/dms/replication_config.py +++ b/sdk/python/pulumi_aws_native/dms/replication_config.py @@ -282,6 +282,8 @@ def _internal_init(__self__, __props__.__dict__["table_mappings"] = table_mappings __props__.__dict__["tags"] = tags __props__.__dict__["target_endpoint_arn"] = target_endpoint_arn + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["resource_identifier"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(ReplicationConfig, __self__).__init__( 'aws-native:dms:ReplicationConfig', resource_name, diff --git a/sdk/python/pulumi_aws_native/ec2/__init__.py b/sdk/python/pulumi_aws_native/ec2/__init__.py index 8d96c361f1..2d86352fdf 100644 --- a/sdk/python/pulumi_aws_native/ec2/__init__.py +++ b/sdk/python/pulumi_aws_native/ec2/__init__.py @@ -72,6 +72,7 @@ from .get_security_group import * from .get_security_group_egress import * from .get_security_group_ingress import * +from .get_snapshot_block_public_access import * from .get_spot_fleet import * from .get_subnet import * from .get_subnet_cidr_block import * @@ -145,6 +146,7 @@ from .security_group import * from .security_group_egress import * from .security_group_ingress import * +from .snapshot_block_public_access import * from .spot_fleet import * from .subnet import * from .subnet_cidr_block import * diff --git a/sdk/python/pulumi_aws_native/ec2/_enums.py b/sdk/python/pulumi_aws_native/ec2/_enums.py index 1ddf3764b4..cfe900b39d 100644 --- a/sdk/python/pulumi_aws_native/ec2/_enums.py +++ b/sdk/python/pulumi_aws_native/ec2/_enums.py @@ -44,6 +44,7 @@ 'NetworkInsightsAnalysisStatus', 'NetworkInsightsPathProtocol', 'PrefixListAddressFamily', + 'SnapshotBlockPublicAccessState', 'SpotFleetEbsBlockDeviceVolumeType', 'SpotFleetInstanceRequirementsRequestAcceleratorManufacturersItem', 'SpotFleetInstanceRequirementsRequestAcceleratorNamesItem', @@ -377,6 +378,14 @@ class PrefixListAddressFamily(str, Enum): I_PV6 = "IPv6" +class SnapshotBlockPublicAccessState(str, Enum): + """ + The state of EBS Snapshot Block Public Access. + """ + BLOCK_ALL_SHARING = "block-all-sharing" + BLOCK_NEW_SHARING = "block-new-sharing" + + class SpotFleetEbsBlockDeviceVolumeType(str, Enum): GP2 = "gp2" GP3 = "gp3" diff --git a/sdk/python/pulumi_aws_native/ec2/_inputs.py b/sdk/python/pulumi_aws_native/ec2/_inputs.py index 75907f8d79..b34b13dec3 100644 --- a/sdk/python/pulumi_aws_native/ec2/_inputs.py +++ b/sdk/python/pulumi_aws_native/ec2/_inputs.py @@ -67,7 +67,6 @@ 'InstanceLaunchTemplateSpecificationArgs', 'InstanceLicenseSpecificationArgs', 'InstanceNetworkInterfaceArgs', - 'InstanceNoDeviceArgs', 'InstancePrivateDnsNameOptionsArgs', 'InstancePrivateIpAddressSpecificationArgs', 'InstanceSsmAssociationArgs', @@ -2070,7 +2069,7 @@ class InstanceBlockDeviceMappingArgs: def __init__(__self__, *, device_name: pulumi.Input[str], ebs: Optional[pulumi.Input['InstanceEbsArgs']] = None, - no_device: Optional[pulumi.Input['InstanceNoDeviceArgs']] = None, + no_device: Optional[Any] = None, virtual_name: Optional[pulumi.Input[str]] = None): pulumi.set(__self__, "device_name", device_name) if ebs is not None: @@ -2100,11 +2099,11 @@ def ebs(self, value: Optional[pulumi.Input['InstanceEbsArgs']]): @property @pulumi.getter(name="noDevice") - def no_device(self) -> Optional[pulumi.Input['InstanceNoDeviceArgs']]: + def no_device(self) -> Optional[Any]: return pulumi.get(self, "no_device") @no_device.setter - def no_device(self, value: Optional[pulumi.Input['InstanceNoDeviceArgs']]): + def no_device(self, value: Optional[Any]): pulumi.set(self, "no_device", value) @property @@ -2592,12 +2591,6 @@ def subnet_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "subnet_id", value) -@pulumi.input_type -class InstanceNoDeviceArgs: - def __init__(__self__): - pass - - @pulumi.input_type class InstancePrivateDnsNameOptionsArgs: def __init__(__self__, *, @@ -9928,14 +9921,30 @@ def verified_access_trust_provider_id(self, value: Optional[pulumi.Input[str]]): @pulumi.input_type class VerifiedAccessTrustProviderDeviceOptionsArgs: def __init__(__self__, *, + public_signing_key_url: Optional[pulumi.Input[str]] = None, tenant_id: Optional[pulumi.Input[str]] = None): """ The options for device identity based trust providers. + :param pulumi.Input[str] public_signing_key_url: URL Verified Access will use to verify authenticity of the device tokens. :param pulumi.Input[str] tenant_id: The ID of the tenant application with the device-identity provider. """ + if public_signing_key_url is not None: + pulumi.set(__self__, "public_signing_key_url", public_signing_key_url) if tenant_id is not None: pulumi.set(__self__, "tenant_id", tenant_id) + @property + @pulumi.getter(name="publicSigningKeyUrl") + def public_signing_key_url(self) -> Optional[pulumi.Input[str]]: + """ + URL Verified Access will use to verify authenticity of the device tokens. + """ + return pulumi.get(self, "public_signing_key_url") + + @public_signing_key_url.setter + def public_signing_key_url(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "public_signing_key_url", value) + @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[pulumi.Input[str]]: diff --git a/sdk/python/pulumi_aws_native/ec2/get_instance.py b/sdk/python/pulumi_aws_native/ec2/get_instance.py index 0ff56b2eb1..464c0935cc 100644 --- a/sdk/python/pulumi_aws_native/ec2/get_instance.py +++ b/sdk/python/pulumi_aws_native/ec2/get_instance.py @@ -19,7 +19,7 @@ @pulumi.output_type class GetInstanceResult: - def __init__(__self__, additional_info=None, affinity=None, block_device_mappings=None, credit_specification=None, disable_api_termination=None, ebs_optimized=None, host_id=None, iam_instance_profile=None, id=None, instance_initiated_shutdown_behavior=None, instance_type=None, kernel_id=None, monitoring=None, private_dns_name=None, private_dns_name_options=None, private_ip=None, propagate_tags_to_volume_on_creation=None, public_dns_name=None, public_ip=None, ramdisk_id=None, security_group_ids=None, source_dest_check=None, ssm_associations=None, tags=None, tenancy=None, user_data=None, volumes=None): + def __init__(__self__, additional_info=None, affinity=None, block_device_mappings=None, credit_specification=None, disable_api_termination=None, ebs_optimized=None, host_id=None, iam_instance_profile=None, instance_id=None, instance_initiated_shutdown_behavior=None, instance_type=None, kernel_id=None, monitoring=None, private_dns_name=None, private_dns_name_options=None, private_ip=None, propagate_tags_to_volume_on_creation=None, public_dns_name=None, public_ip=None, ramdisk_id=None, security_group_ids=None, source_dest_check=None, ssm_associations=None, tags=None, tenancy=None, user_data=None, volumes=None): if additional_info and not isinstance(additional_info, str): raise TypeError("Expected argument 'additional_info' to be a str") pulumi.set(__self__, "additional_info", additional_info) @@ -44,9 +44,9 @@ def __init__(__self__, additional_info=None, affinity=None, block_device_mapping if iam_instance_profile and not isinstance(iam_instance_profile, str): raise TypeError("Expected argument 'iam_instance_profile' to be a str") pulumi.set(__self__, "iam_instance_profile", iam_instance_profile) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) + if instance_id and not isinstance(instance_id, str): + raise TypeError("Expected argument 'instance_id' to be a str") + pulumi.set(__self__, "instance_id", instance_id) if instance_initiated_shutdown_behavior and not isinstance(instance_initiated_shutdown_behavior, str): raise TypeError("Expected argument 'instance_initiated_shutdown_behavior' to be a str") pulumi.set(__self__, "instance_initiated_shutdown_behavior", instance_initiated_shutdown_behavior) @@ -143,9 +143,9 @@ def iam_instance_profile(self) -> Optional[str]: return pulumi.get(self, "iam_instance_profile") @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") + @pulumi.getter(name="instanceId") + def instance_id(self) -> Optional[str]: + return pulumi.get(self, "instance_id") @property @pulumi.getter(name="instanceInitiatedShutdownBehavior") @@ -252,7 +252,7 @@ def __await__(self): ebs_optimized=self.ebs_optimized, host_id=self.host_id, iam_instance_profile=self.iam_instance_profile, - id=self.id, + instance_id=self.instance_id, instance_initiated_shutdown_behavior=self.instance_initiated_shutdown_behavior, instance_type=self.instance_type, kernel_id=self.kernel_id, @@ -273,13 +273,13 @@ def __await__(self): volumes=self.volumes) -def get_instance(id: Optional[str] = None, +def get_instance(instance_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetInstanceResult: """ Resource Type definition for AWS::EC2::Instance """ __args__ = dict() - __args__['id'] = id + __args__['instanceId'] = instance_id opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:ec2:getInstance', __args__, opts=opts, typ=GetInstanceResult).value @@ -292,7 +292,7 @@ def get_instance(id: Optional[str] = None, ebs_optimized=pulumi.get(__ret__, 'ebs_optimized'), host_id=pulumi.get(__ret__, 'host_id'), iam_instance_profile=pulumi.get(__ret__, 'iam_instance_profile'), - id=pulumi.get(__ret__, 'id'), + instance_id=pulumi.get(__ret__, 'instance_id'), instance_initiated_shutdown_behavior=pulumi.get(__ret__, 'instance_initiated_shutdown_behavior'), instance_type=pulumi.get(__ret__, 'instance_type'), kernel_id=pulumi.get(__ret__, 'kernel_id'), @@ -314,7 +314,7 @@ def get_instance(id: Optional[str] = None, @_utilities.lift_output_func(get_instance) -def get_instance_output(id: Optional[pulumi.Input[str]] = None, +def get_instance_output(instance_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetInstanceResult]: """ Resource Type definition for AWS::EC2::Instance diff --git a/sdk/python/pulumi_aws_native/ec2/get_route.py b/sdk/python/pulumi_aws_native/ec2/get_route.py index 08b13f1fa9..540b765e0d 100644 --- a/sdk/python/pulumi_aws_native/ec2/get_route.py +++ b/sdk/python/pulumi_aws_native/ec2/get_route.py @@ -18,13 +18,16 @@ @pulumi.output_type class GetRouteResult: - def __init__(__self__, carrier_gateway_id=None, cidr_block=None, egress_only_internet_gateway_id=None, gateway_id=None, instance_id=None, local_gateway_id=None, nat_gateway_id=None, network_interface_id=None, transit_gateway_id=None, vpc_endpoint_id=None, vpc_peering_connection_id=None): + def __init__(__self__, carrier_gateway_id=None, cidr_block=None, core_network_arn=None, egress_only_internet_gateway_id=None, gateway_id=None, instance_id=None, local_gateway_id=None, nat_gateway_id=None, network_interface_id=None, transit_gateway_id=None, vpc_endpoint_id=None, vpc_peering_connection_id=None): if carrier_gateway_id and not isinstance(carrier_gateway_id, str): raise TypeError("Expected argument 'carrier_gateway_id' to be a str") pulumi.set(__self__, "carrier_gateway_id", carrier_gateway_id) if cidr_block and not isinstance(cidr_block, str): raise TypeError("Expected argument 'cidr_block' to be a str") pulumi.set(__self__, "cidr_block", cidr_block) + 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 egress_only_internet_gateway_id and not isinstance(egress_only_internet_gateway_id, str): raise TypeError("Expected argument 'egress_only_internet_gateway_id' to be a str") pulumi.set(__self__, "egress_only_internet_gateway_id", egress_only_internet_gateway_id) @@ -69,6 +72,14 @@ def cidr_block(self) -> Optional[str]: """ return pulumi.get(self, "cidr_block") + @property + @pulumi.getter(name="coreNetworkArn") + def core_network_arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the core network. + """ + return pulumi.get(self, "core_network_arn") + @property @pulumi.getter(name="egressOnlyInternetGatewayId") def egress_only_internet_gateway_id(self) -> Optional[str]: @@ -150,6 +161,7 @@ def __await__(self): return GetRouteResult( carrier_gateway_id=self.carrier_gateway_id, cidr_block=self.cidr_block, + core_network_arn=self.core_network_arn, egress_only_internet_gateway_id=self.egress_only_internet_gateway_id, gateway_id=self.gateway_id, instance_id=self.instance_id, @@ -180,6 +192,7 @@ def get_route(cidr_block: Optional[str] = None, return AwaitableGetRouteResult( carrier_gateway_id=pulumi.get(__ret__, 'carrier_gateway_id'), cidr_block=pulumi.get(__ret__, 'cidr_block'), + core_network_arn=pulumi.get(__ret__, 'core_network_arn'), egress_only_internet_gateway_id=pulumi.get(__ret__, 'egress_only_internet_gateway_id'), gateway_id=pulumi.get(__ret__, 'gateway_id'), instance_id=pulumi.get(__ret__, 'instance_id'), diff --git a/sdk/python/pulumi_aws_native/ec2/get_security_group_egress.py b/sdk/python/pulumi_aws_native/ec2/get_security_group_egress.py index 919295837d..2256ec3f77 100644 --- a/sdk/python/pulumi_aws_native/ec2/get_security_group_egress.py +++ b/sdk/python/pulumi_aws_native/ec2/get_security_group_egress.py @@ -29,11 +29,17 @@ def __init__(__self__, description=None, id=None): @property @pulumi.getter def description(self) -> Optional[str]: + """ + Resource Type definition for an egress (outbound) security group rule. + """ return pulumi.get(self, "description") @property @pulumi.getter def id(self) -> Optional[str]: + """ + The Security Group Rule Id + """ return pulumi.get(self, "id") @@ -51,6 +57,9 @@ def get_security_group_egress(id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSecurityGroupEgressResult: """ Resource Type definition for AWS::EC2::SecurityGroupEgress + + + :param str id: The Security Group Rule Id """ __args__ = dict() __args__['id'] = id @@ -67,5 +76,8 @@ def get_security_group_egress_output(id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSecurityGroupEgressResult]: """ Resource Type definition for AWS::EC2::SecurityGroupEgress + + + :param str id: The Security Group Rule Id """ ... diff --git a/sdk/python/pulumi_aws_native/ec2/get_snapshot_block_public_access.py b/sdk/python/pulumi_aws_native/ec2/get_snapshot_block_public_access.py new file mode 100644 index 0000000000..b810612151 --- /dev/null +++ b/sdk/python/pulumi_aws_native/ec2/get_snapshot_block_public_access.py @@ -0,0 +1,84 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from ._enums import * + +__all__ = [ + 'GetSnapshotBlockPublicAccessResult', + 'AwaitableGetSnapshotBlockPublicAccessResult', + 'get_snapshot_block_public_access', + 'get_snapshot_block_public_access_output', +] + +@pulumi.output_type +class GetSnapshotBlockPublicAccessResult: + def __init__(__self__, account_id=None, state=None): + if account_id and not isinstance(account_id, str): + raise TypeError("Expected argument 'account_id' to be a str") + pulumi.set(__self__, "account_id", account_id) + if state and not isinstance(state, str): + raise TypeError("Expected argument 'state' to be a str") + pulumi.set(__self__, "state", state) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> Optional[str]: + """ + The identifier for the specified AWS account. + """ + return pulumi.get(self, "account_id") + + @property + @pulumi.getter + def state(self) -> Optional['SnapshotBlockPublicAccessState']: + """ + The state of EBS Snapshot Block Public Access. + """ + return pulumi.get(self, "state") + + +class AwaitableGetSnapshotBlockPublicAccessResult(GetSnapshotBlockPublicAccessResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetSnapshotBlockPublicAccessResult( + account_id=self.account_id, + state=self.state) + + +def get_snapshot_block_public_access(account_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSnapshotBlockPublicAccessResult: + """ + Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess + + + :param str account_id: The identifier for the specified AWS account. + """ + __args__ = dict() + __args__['accountId'] = account_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:ec2:getSnapshotBlockPublicAccess', __args__, opts=opts, typ=GetSnapshotBlockPublicAccessResult).value + + return AwaitableGetSnapshotBlockPublicAccessResult( + account_id=pulumi.get(__ret__, 'account_id'), + state=pulumi.get(__ret__, 'state')) + + +@_utilities.lift_output_func(get_snapshot_block_public_access) +def get_snapshot_block_public_access_output(account_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSnapshotBlockPublicAccessResult]: + """ + Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess + + + :param str account_id: The identifier for the specified AWS account. + """ + ... diff --git a/sdk/python/pulumi_aws_native/ec2/instance.py b/sdk/python/pulumi_aws_native/ec2/instance.py index c0e03ebde2..ae9a38fd65 100644 --- a/sdk/python/pulumi_aws_native/ec2/instance.py +++ b/sdk/python/pulumi_aws_native/ec2/instance.py @@ -672,6 +672,7 @@ def _internal_init(__self__, __props__.__dict__["tenancy"] = tenancy __props__.__dict__["user_data"] = user_data __props__.__dict__["volumes"] = volumes + __props__.__dict__["instance_id"] = None __props__.__dict__["private_dns_name"] = None __props__.__dict__["private_ip"] = None __props__.__dict__["public_dns_name"] = None @@ -716,6 +717,7 @@ def get(resource_name: str, __props__.__dict__["host_resource_group_arn"] = None __props__.__dict__["iam_instance_profile"] = None __props__.__dict__["image_id"] = None + __props__.__dict__["instance_id"] = None __props__.__dict__["instance_initiated_shutdown_behavior"] = None __props__.__dict__["instance_type"] = None __props__.__dict__["ipv6_address_count"] = None @@ -826,6 +828,11 @@ def iam_instance_profile(self) -> pulumi.Output[Optional[str]]: def image_id(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "image_id") + @property + @pulumi.getter(name="instanceId") + def instance_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "instance_id") + @property @pulumi.getter(name="instanceInitiatedShutdownBehavior") def instance_initiated_shutdown_behavior(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/ec2/outputs.py b/sdk/python/pulumi_aws_native/ec2/outputs.py index a40a75d838..560a488fa6 100644 --- a/sdk/python/pulumi_aws_native/ec2/outputs.py +++ b/sdk/python/pulumi_aws_native/ec2/outputs.py @@ -68,7 +68,6 @@ 'InstanceLaunchTemplateSpecification', 'InstanceLicenseSpecification', 'InstanceNetworkInterface', - 'InstanceNoDevice', 'InstancePrivateDnsNameOptions', 'InstancePrivateIpAddressSpecification', 'InstanceSsmAssociation', @@ -2082,7 +2081,7 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, device_name: str, ebs: Optional['outputs.InstanceEbs'] = None, - no_device: Optional['outputs.InstanceNoDevice'] = None, + no_device: Optional[Any] = None, virtual_name: Optional[str] = None): pulumi.set(__self__, "device_name", device_name) if ebs is not None: @@ -2104,7 +2103,7 @@ def ebs(self) -> Optional['outputs.InstanceEbs']: @property @pulumi.getter(name="noDevice") - def no_device(self) -> Optional['outputs.InstanceNoDevice']: + def no_device(self) -> Optional[Any]: return pulumi.get(self, "no_device") @property @@ -2604,12 +2603,6 @@ def subnet_id(self) -> Optional[str]: return pulumi.get(self, "subnet_id") -@pulumi.output_type -class InstanceNoDevice(dict): - def __init__(__self__): - pass - - @pulumi.output_type class InstancePrivateDnsNameOptions(dict): @staticmethod @@ -11387,7 +11380,9 @@ class VerifiedAccessTrustProviderDeviceOptions(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "tenantId": + if key == "publicSigningKeyUrl": + suggest = "public_signing_key_url" + elif key == "tenantId": suggest = "tenant_id" if suggest: @@ -11402,14 +11397,26 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, + public_signing_key_url: Optional[str] = None, tenant_id: Optional[str] = None): """ The options for device identity based trust providers. + :param str public_signing_key_url: URL Verified Access will use to verify authenticity of the device tokens. :param str tenant_id: The ID of the tenant application with the device-identity provider. """ + if public_signing_key_url is not None: + pulumi.set(__self__, "public_signing_key_url", public_signing_key_url) if tenant_id is not None: pulumi.set(__self__, "tenant_id", tenant_id) + @property + @pulumi.getter(name="publicSigningKeyUrl") + def public_signing_key_url(self) -> Optional[str]: + """ + URL Verified Access will use to verify authenticity of the device tokens. + """ + return pulumi.get(self, "public_signing_key_url") + @property @pulumi.getter(name="tenantId") def tenant_id(self) -> Optional[str]: diff --git a/sdk/python/pulumi_aws_native/ec2/route.py b/sdk/python/pulumi_aws_native/ec2/route.py index 98c72037d5..7f2a520e48 100644 --- a/sdk/python/pulumi_aws_native/ec2/route.py +++ b/sdk/python/pulumi_aws_native/ec2/route.py @@ -16,6 +16,7 @@ class RouteArgs: def __init__(__self__, *, route_table_id: pulumi.Input[str], carrier_gateway_id: Optional[pulumi.Input[str]] = None, + core_network_arn: Optional[pulumi.Input[str]] = None, destination_cidr_block: Optional[pulumi.Input[str]] = None, destination_ipv6_cidr_block: Optional[pulumi.Input[str]] = None, destination_prefix_list_id: Optional[pulumi.Input[str]] = None, @@ -32,6 +33,7 @@ def __init__(__self__, *, The set of arguments for constructing a Route resource. :param pulumi.Input[str] route_table_id: The ID of the route table. The routing table must be associated with the same VPC that the virtual private gateway is attached to. :param pulumi.Input[str] carrier_gateway_id: The ID of the carrier gateway. + :param pulumi.Input[str] core_network_arn: The Amazon Resource Name (ARN) of the core network. :param pulumi.Input[str] destination_cidr_block: The IPv4 CIDR block used for the destination match. :param pulumi.Input[str] destination_ipv6_cidr_block: The IPv6 CIDR block used for the destination match. :param pulumi.Input[str] destination_prefix_list_id: The ID of managed prefix list, it's a set of one or more CIDR blocks. @@ -48,6 +50,8 @@ def __init__(__self__, *, pulumi.set(__self__, "route_table_id", route_table_id) if carrier_gateway_id is not None: pulumi.set(__self__, "carrier_gateway_id", carrier_gateway_id) + if core_network_arn is not None: + pulumi.set(__self__, "core_network_arn", core_network_arn) if destination_cidr_block is not None: pulumi.set(__self__, "destination_cidr_block", destination_cidr_block) if destination_ipv6_cidr_block is not None: @@ -97,6 +101,18 @@ def carrier_gateway_id(self) -> Optional[pulumi.Input[str]]: def carrier_gateway_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "carrier_gateway_id", value) + @property + @pulumi.getter(name="coreNetworkArn") + def core_network_arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) of the core network. + """ + return pulumi.get(self, "core_network_arn") + + @core_network_arn.setter + def core_network_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "core_network_arn", value) + @property @pulumi.getter(name="destinationCidrBlock") def destination_cidr_block(self) -> Optional[pulumi.Input[str]]: @@ -248,6 +264,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, carrier_gateway_id: Optional[pulumi.Input[str]] = None, + core_network_arn: Optional[pulumi.Input[str]] = None, destination_cidr_block: Optional[pulumi.Input[str]] = None, destination_ipv6_cidr_block: Optional[pulumi.Input[str]] = None, destination_prefix_list_id: Optional[pulumi.Input[str]] = None, @@ -268,6 +285,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] carrier_gateway_id: The ID of the carrier gateway. + :param pulumi.Input[str] core_network_arn: The Amazon Resource Name (ARN) of the core network. :param pulumi.Input[str] destination_cidr_block: The IPv4 CIDR block used for the destination match. :param pulumi.Input[str] destination_ipv6_cidr_block: The IPv6 CIDR block used for the destination match. :param pulumi.Input[str] destination_prefix_list_id: The ID of managed prefix list, it's a set of one or more CIDR blocks. @@ -307,6 +325,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, carrier_gateway_id: Optional[pulumi.Input[str]] = None, + core_network_arn: Optional[pulumi.Input[str]] = None, destination_cidr_block: Optional[pulumi.Input[str]] = None, destination_ipv6_cidr_block: Optional[pulumi.Input[str]] = None, destination_prefix_list_id: Optional[pulumi.Input[str]] = None, @@ -330,6 +349,7 @@ def _internal_init(__self__, __props__ = RouteArgs.__new__(RouteArgs) __props__.__dict__["carrier_gateway_id"] = carrier_gateway_id + __props__.__dict__["core_network_arn"] = core_network_arn __props__.__dict__["destination_cidr_block"] = destination_cidr_block __props__.__dict__["destination_ipv6_cidr_block"] = destination_ipv6_cidr_block __props__.__dict__["destination_prefix_list_id"] = destination_prefix_list_id @@ -372,6 +392,7 @@ def get(resource_name: str, __props__.__dict__["carrier_gateway_id"] = None __props__.__dict__["cidr_block"] = None + __props__.__dict__["core_network_arn"] = None __props__.__dict__["destination_cidr_block"] = None __props__.__dict__["destination_ipv6_cidr_block"] = None __props__.__dict__["destination_prefix_list_id"] = None @@ -403,6 +424,14 @@ def cidr_block(self) -> pulumi.Output[str]: """ return pulumi.get(self, "cidr_block") + @property + @pulumi.getter(name="coreNetworkArn") + def core_network_arn(self) -> pulumi.Output[Optional[str]]: + """ + The Amazon Resource Name (ARN) of the core network. + """ + return pulumi.get(self, "core_network_arn") + @property @pulumi.getter(name="destinationCidrBlock") def destination_cidr_block(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/ec2/security_group_egress.py b/sdk/python/pulumi_aws_native/ec2/security_group_egress.py index 5499fde7ba..0c70a88ebb 100644 --- a/sdk/python/pulumi_aws_native/ec2/security_group_egress.py +++ b/sdk/python/pulumi_aws_native/ec2/security_group_egress.py @@ -25,6 +25,15 @@ def __init__(__self__, *, to_port: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a SecurityGroupEgress resource. + :param pulumi.Input[str] group_id: The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + :param pulumi.Input[str] ip_protocol: [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + :param pulumi.Input[str] cidr_ip: The IPv4 ranges + :param pulumi.Input[str] cidr_ipv6: [VPC only] The IPv6 ranges + :param pulumi.Input[str] description: Resource Type definition for an egress (outbound) security group rule. + :param pulumi.Input[str] destination_prefix_list_id: [EC2-VPC only] The ID of a prefix list. + :param pulumi.Input[str] destination_security_group_id: You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). + :param pulumi.Input[int] from_port: The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + :param pulumi.Input[int] to_port: The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. """ pulumi.set(__self__, "group_id", group_id) pulumi.set(__self__, "ip_protocol", ip_protocol) @@ -46,6 +55,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="groupId") def group_id(self) -> pulumi.Input[str]: + """ + The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + """ return pulumi.get(self, "group_id") @group_id.setter @@ -55,6 +67,9 @@ def group_id(self, value: pulumi.Input[str]): @property @pulumi.getter(name="ipProtocol") def ip_protocol(self) -> pulumi.Input[str]: + """ + [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + """ return pulumi.get(self, "ip_protocol") @ip_protocol.setter @@ -64,6 +79,9 @@ def ip_protocol(self, value: pulumi.Input[str]): @property @pulumi.getter(name="cidrIp") def cidr_ip(self) -> Optional[pulumi.Input[str]]: + """ + The IPv4 ranges + """ return pulumi.get(self, "cidr_ip") @cidr_ip.setter @@ -73,6 +91,9 @@ def cidr_ip(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="cidrIpv6") def cidr_ipv6(self) -> Optional[pulumi.Input[str]]: + """ + [VPC only] The IPv6 ranges + """ return pulumi.get(self, "cidr_ipv6") @cidr_ipv6.setter @@ -82,6 +103,9 @@ def cidr_ipv6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + Resource Type definition for an egress (outbound) security group rule. + """ return pulumi.get(self, "description") @description.setter @@ -91,6 +115,9 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="destinationPrefixListId") def destination_prefix_list_id(self) -> Optional[pulumi.Input[str]]: + """ + [EC2-VPC only] The ID of a prefix list. + """ return pulumi.get(self, "destination_prefix_list_id") @destination_prefix_list_id.setter @@ -100,6 +127,9 @@ def destination_prefix_list_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="destinationSecurityGroupId") def destination_security_group_id(self) -> Optional[pulumi.Input[str]]: + """ + You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). + """ return pulumi.get(self, "destination_security_group_id") @destination_security_group_id.setter @@ -109,6 +139,9 @@ def destination_security_group_id(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="fromPort") def from_port(self) -> Optional[pulumi.Input[int]]: + """ + The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + """ return pulumi.get(self, "from_port") @from_port.setter @@ -118,6 +151,9 @@ def from_port(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="toPort") def to_port(self) -> Optional[pulumi.Input[int]]: + """ + The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + """ return pulumi.get(self, "to_port") @to_port.setter @@ -125,12 +161,7 @@ def to_port(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "to_port", value) -warnings.warn("""SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class SecurityGroupEgress(pulumi.CustomResource): - warnings.warn("""SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -150,6 +181,15 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] cidr_ip: The IPv4 ranges + :param pulumi.Input[str] cidr_ipv6: [VPC only] The IPv6 ranges + :param pulumi.Input[str] description: Resource Type definition for an egress (outbound) security group rule. + :param pulumi.Input[str] destination_prefix_list_id: [EC2-VPC only] The ID of a prefix list. + :param pulumi.Input[str] destination_security_group_id: You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). + :param pulumi.Input[int] from_port: The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + :param pulumi.Input[str] group_id: The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + :param pulumi.Input[str] ip_protocol: [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + :param pulumi.Input[int] to_port: The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. """ ... @overload @@ -185,7 +225,6 @@ def _internal_init(__self__, ip_protocol: Optional[pulumi.Input[str]] = None, to_port: Optional[pulumi.Input[int]] = None, __props__=None): - pulumi.log.warn("""SecurityGroupEgress is deprecated: SecurityGroupEgress is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") 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') @@ -245,45 +284,72 @@ def get(resource_name: str, @property @pulumi.getter(name="cidrIp") def cidr_ip(self) -> pulumi.Output[Optional[str]]: + """ + The IPv4 ranges + """ return pulumi.get(self, "cidr_ip") @property @pulumi.getter(name="cidrIpv6") def cidr_ipv6(self) -> pulumi.Output[Optional[str]]: + """ + [VPC only] The IPv6 ranges + """ return pulumi.get(self, "cidr_ipv6") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: + """ + Resource Type definition for an egress (outbound) security group rule. + """ return pulumi.get(self, "description") @property @pulumi.getter(name="destinationPrefixListId") def destination_prefix_list_id(self) -> pulumi.Output[Optional[str]]: + """ + [EC2-VPC only] The ID of a prefix list. + """ return pulumi.get(self, "destination_prefix_list_id") @property @pulumi.getter(name="destinationSecurityGroupId") def destination_security_group_id(self) -> pulumi.Output[Optional[str]]: + """ + You must specify a destination security group (DestinationPrefixListId or DestinationSecurityGroupId) or a CIDR range (CidrIp or CidrIpv6). + """ return pulumi.get(self, "destination_security_group_id") @property @pulumi.getter(name="fromPort") def from_port(self) -> pulumi.Output[Optional[int]]: + """ + The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes. + """ return pulumi.get(self, "from_port") @property @pulumi.getter(name="groupId") def group_id(self) -> pulumi.Output[str]: + """ + The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID. + """ return pulumi.get(self, "group_id") @property @pulumi.getter(name="ipProtocol") def ip_protocol(self) -> pulumi.Output[str]: + """ + [VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or icmpv6 allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed. + """ return pulumi.get(self, "ip_protocol") @property @pulumi.getter(name="toPort") def to_port(self) -> pulumi.Output[Optional[int]]: + """ + The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes. If you specify all ICMP/ICMPv6 types, you must specify all codes. + """ return pulumi.get(self, "to_port") diff --git a/sdk/python/pulumi_aws_native/ec2/snapshot_block_public_access.py b/sdk/python/pulumi_aws_native/ec2/snapshot_block_public_access.py new file mode 100644 index 0000000000..b1306478e7 --- /dev/null +++ b/sdk/python/pulumi_aws_native/ec2/snapshot_block_public_access.py @@ -0,0 +1,131 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from ._enums import * + +__all__ = ['SnapshotBlockPublicAccessArgs', 'SnapshotBlockPublicAccess'] + +@pulumi.input_type +class SnapshotBlockPublicAccessArgs: + def __init__(__self__, *, + state: pulumi.Input['SnapshotBlockPublicAccessState']): + """ + The set of arguments for constructing a SnapshotBlockPublicAccess resource. + :param pulumi.Input['SnapshotBlockPublicAccessState'] state: The state of EBS Snapshot Block Public Access. + """ + pulumi.set(__self__, "state", state) + + @property + @pulumi.getter + def state(self) -> pulumi.Input['SnapshotBlockPublicAccessState']: + """ + The state of EBS Snapshot Block Public Access. + """ + return pulumi.get(self, "state") + + @state.setter + def state(self, value: pulumi.Input['SnapshotBlockPublicAccessState']): + pulumi.set(self, "state", value) + + +class SnapshotBlockPublicAccess(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + state: Optional[pulumi.Input['SnapshotBlockPublicAccessState']] = None, + __props__=None): + """ + Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input['SnapshotBlockPublicAccessState'] state: The state of EBS Snapshot Block Public Access. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: SnapshotBlockPublicAccessArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource Type definition for AWS::EC2::SnapshotBlockPublicAccess + + :param str resource_name: The name of the resource. + :param SnapshotBlockPublicAccessArgs 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(SnapshotBlockPublicAccessArgs, 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, + state: Optional[pulumi.Input['SnapshotBlockPublicAccessState']] = 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__ = SnapshotBlockPublicAccessArgs.__new__(SnapshotBlockPublicAccessArgs) + + if state is None and not opts.urn: + raise TypeError("Missing required property 'state'") + __props__.__dict__["state"] = state + __props__.__dict__["account_id"] = None + super(SnapshotBlockPublicAccess, __self__).__init__( + 'aws-native:ec2:SnapshotBlockPublicAccess', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'SnapshotBlockPublicAccess': + """ + Get an existing SnapshotBlockPublicAccess 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__ = SnapshotBlockPublicAccessArgs.__new__(SnapshotBlockPublicAccessArgs) + + __props__.__dict__["account_id"] = None + __props__.__dict__["state"] = None + return SnapshotBlockPublicAccess(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> pulumi.Output[str]: + """ + The identifier for the specified AWS account. + """ + return pulumi.get(self, "account_id") + + @property + @pulumi.getter + def state(self) -> pulumi.Output['SnapshotBlockPublicAccessState']: + """ + The state of EBS Snapshot Block Public Access. + """ + return pulumi.get(self, "state") + diff --git a/sdk/python/pulumi_aws_native/ecs/_enums.py b/sdk/python/pulumi_aws_native/ecs/_enums.py index c2d06c030d..331147207f 100644 --- a/sdk/python/pulumi_aws_native/ecs/_enums.py +++ b/sdk/python/pulumi_aws_native/ecs/_enums.py @@ -5,6 +5,7 @@ from enum import Enum __all__ = [ + 'CapacityProviderAutoScalingGroupProviderManagedDraining', 'CapacityProviderAutoScalingGroupProviderManagedTerminationProtection', 'CapacityProviderManagedScalingStatus', 'ClusterCapacityProviderAssociationsCapacityProvider', @@ -25,6 +26,11 @@ ] +class CapacityProviderAutoScalingGroupProviderManagedDraining(str, Enum): + DISABLED = "DISABLED" + ENABLED = "ENABLED" + + class CapacityProviderAutoScalingGroupProviderManagedTerminationProtection(str, Enum): 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 dde23f3e4c..4e9efc9374 100644 --- a/sdk/python/pulumi_aws_native/ecs/_inputs.py +++ b/sdk/python/pulumi_aws_native/ecs/_inputs.py @@ -81,9 +81,12 @@ class CapacityProviderAutoScalingGroupProviderArgs: def __init__(__self__, *, auto_scaling_group_arn: pulumi.Input[str], + managed_draining: Optional[pulumi.Input['CapacityProviderAutoScalingGroupProviderManagedDraining']] = None, managed_scaling: Optional[pulumi.Input['CapacityProviderManagedScalingArgs']] = None, managed_termination_protection: Optional[pulumi.Input['CapacityProviderAutoScalingGroupProviderManagedTerminationProtection']] = None): pulumi.set(__self__, "auto_scaling_group_arn", auto_scaling_group_arn) + if managed_draining is not None: + pulumi.set(__self__, "managed_draining", managed_draining) if managed_scaling is not None: pulumi.set(__self__, "managed_scaling", managed_scaling) if managed_termination_protection is not None: @@ -98,6 +101,15 @@ def auto_scaling_group_arn(self) -> pulumi.Input[str]: def auto_scaling_group_arn(self, value: pulumi.Input[str]): pulumi.set(self, "auto_scaling_group_arn", value) + @property + @pulumi.getter(name="managedDraining") + def managed_draining(self) -> Optional[pulumi.Input['CapacityProviderAutoScalingGroupProviderManagedDraining']]: + return pulumi.get(self, "managed_draining") + + @managed_draining.setter + def managed_draining(self, value: Optional[pulumi.Input['CapacityProviderAutoScalingGroupProviderManagedDraining']]): + pulumi.set(self, "managed_draining", value) + @property @pulumi.getter(name="managedScaling") def managed_scaling(self) -> Optional[pulumi.Input['CapacityProviderManagedScalingArgs']]: diff --git a/sdk/python/pulumi_aws_native/ecs/outputs.py b/sdk/python/pulumi_aws_native/ecs/outputs.py index b2a197981d..05f94d230f 100644 --- a/sdk/python/pulumi_aws_native/ecs/outputs.py +++ b/sdk/python/pulumi_aws_native/ecs/outputs.py @@ -85,6 +85,8 @@ def __key_warning(key: str): suggest = None if key == "autoScalingGroupArn": suggest = "auto_scaling_group_arn" + elif key == "managedDraining": + suggest = "managed_draining" elif key == "managedScaling": suggest = "managed_scaling" elif key == "managedTerminationProtection": @@ -103,9 +105,12 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, auto_scaling_group_arn: str, + managed_draining: Optional['CapacityProviderAutoScalingGroupProviderManagedDraining'] = None, managed_scaling: Optional['outputs.CapacityProviderManagedScaling'] = None, managed_termination_protection: Optional['CapacityProviderAutoScalingGroupProviderManagedTerminationProtection'] = None): pulumi.set(__self__, "auto_scaling_group_arn", auto_scaling_group_arn) + if managed_draining is not None: + pulumi.set(__self__, "managed_draining", managed_draining) if managed_scaling is not None: pulumi.set(__self__, "managed_scaling", managed_scaling) if managed_termination_protection is not None: @@ -116,6 +121,11 @@ def __init__(__self__, *, def auto_scaling_group_arn(self) -> str: return pulumi.get(self, "auto_scaling_group_arn") + @property + @pulumi.getter(name="managedDraining") + def managed_draining(self) -> Optional['CapacityProviderAutoScalingGroupProviderManagedDraining']: + return pulumi.get(self, "managed_draining") + @property @pulumi.getter(name="managedScaling") def managed_scaling(self) -> Optional['outputs.CapacityProviderManagedScaling']: diff --git a/sdk/python/pulumi_aws_native/eks/_enums.py b/sdk/python/pulumi_aws_native/eks/_enums.py index d17b96bfdf..abc60f88be 100644 --- a/sdk/python/pulumi_aws_native/eks/_enums.py +++ b/sdk/python/pulumi_aws_native/eks/_enums.py @@ -6,6 +6,7 @@ __all__ = [ 'AddonResolveConflicts', + 'ClusterAccessConfigAuthenticationMode', 'ClusterKubernetesNetworkConfigIpFamily', 'ClusterLoggingTypeConfigType', 'IdentityProviderConfigType', @@ -21,6 +22,15 @@ class AddonResolveConflicts(str, Enum): PRESERVE = "PRESERVE" +class ClusterAccessConfigAuthenticationMode(str, Enum): + """ + Specify the authentication mode that should be used to create your cluster. + """ + CONFIG_MAP = "CONFIG_MAP" + API_AND_CONFIG_MAP = "API_AND_CONFIG_MAP" + API = "API" + + class ClusterKubernetesNetworkConfigIpFamily(str, Enum): """ Ipv4 or Ipv6. You can only specify ipv6 for 1.21 and later clusters that use version 1.10.1 or later of the Amazon VPC CNI add-on diff --git a/sdk/python/pulumi_aws_native/eks/_inputs.py b/sdk/python/pulumi_aws_native/eks/_inputs.py index da6827fc01..1da5fdadb3 100644 --- a/sdk/python/pulumi_aws_native/eks/_inputs.py +++ b/sdk/python/pulumi_aws_native/eks/_inputs.py @@ -12,6 +12,7 @@ __all__ = [ 'AddonTagArgs', + 'ClusterAccessConfigArgs', 'ClusterControlPlanePlacementArgs', 'ClusterEncryptionConfigArgs', 'ClusterKubernetesNetworkConfigArgs', @@ -74,6 +75,46 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class ClusterAccessConfigArgs: + def __init__(__self__, *, + authentication_mode: Optional[pulumi.Input['ClusterAccessConfigAuthenticationMode']] = None, + bootstrap_cluster_creator_admin_permissions: Optional[pulumi.Input[bool]] = None): + """ + An object representing the Access Config to use for the cluster. + :param pulumi.Input['ClusterAccessConfigAuthenticationMode'] authentication_mode: Specify the authentication mode that should be used to create your cluster. + :param pulumi.Input[bool] bootstrap_cluster_creator_admin_permissions: Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + """ + if authentication_mode is not None: + pulumi.set(__self__, "authentication_mode", authentication_mode) + if bootstrap_cluster_creator_admin_permissions is not None: + pulumi.set(__self__, "bootstrap_cluster_creator_admin_permissions", bootstrap_cluster_creator_admin_permissions) + + @property + @pulumi.getter(name="authenticationMode") + def authentication_mode(self) -> Optional[pulumi.Input['ClusterAccessConfigAuthenticationMode']]: + """ + Specify the authentication mode that should be used to create your cluster. + """ + return pulumi.get(self, "authentication_mode") + + @authentication_mode.setter + def authentication_mode(self, value: Optional[pulumi.Input['ClusterAccessConfigAuthenticationMode']]): + pulumi.set(self, "authentication_mode", value) + + @property + @pulumi.getter(name="bootstrapClusterCreatorAdminPermissions") + def bootstrap_cluster_creator_admin_permissions(self) -> Optional[pulumi.Input[bool]]: + """ + Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + """ + return pulumi.get(self, "bootstrap_cluster_creator_admin_permissions") + + @bootstrap_cluster_creator_admin_permissions.setter + def bootstrap_cluster_creator_admin_permissions(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "bootstrap_cluster_creator_admin_permissions", value) + + @pulumi.input_type class ClusterControlPlanePlacementArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/eks/cluster.py b/sdk/python/pulumi_aws_native/eks/cluster.py index 0d78c6537e..da4f0981df 100644 --- a/sdk/python/pulumi_aws_native/eks/cluster.py +++ b/sdk/python/pulumi_aws_native/eks/cluster.py @@ -19,6 +19,7 @@ class ClusterArgs: def __init__(__self__, *, resources_vpc_config: pulumi.Input['ClusterResourcesVpcConfigArgs'], role_arn: pulumi.Input[str], + access_config: Optional[pulumi.Input['ClusterAccessConfigArgs']] = None, encryption_config: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterEncryptionConfigArgs']]]] = None, kubernetes_network_config: Optional[pulumi.Input['ClusterKubernetesNetworkConfigArgs']] = None, logging: Optional[pulumi.Input['LoggingArgs']] = None, @@ -35,6 +36,8 @@ def __init__(__self__, *, """ pulumi.set(__self__, "resources_vpc_config", resources_vpc_config) pulumi.set(__self__, "role_arn", role_arn) + if access_config is not None: + pulumi.set(__self__, "access_config", access_config) if encryption_config is not None: pulumi.set(__self__, "encryption_config", encryption_config) if kubernetes_network_config is not None: @@ -71,6 +74,15 @@ def role_arn(self) -> pulumi.Input[str]: def role_arn(self, value: pulumi.Input[str]): pulumi.set(self, "role_arn", value) + @property + @pulumi.getter(name="accessConfig") + def access_config(self) -> Optional[pulumi.Input['ClusterAccessConfigArgs']]: + return pulumi.get(self, "access_config") + + @access_config.setter + def access_config(self, value: Optional[pulumi.Input['ClusterAccessConfigArgs']]): + pulumi.set(self, "access_config", value) + @property @pulumi.getter(name="encryptionConfig") def encryption_config(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterEncryptionConfigArgs']]]]: @@ -149,6 +161,7 @@ class Cluster(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + access_config: Optional[pulumi.Input[pulumi.InputType['ClusterAccessConfigArgs']]] = None, encryption_config: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterEncryptionConfigArgs']]]]] = None, kubernetes_network_config: Optional[pulumi.Input[pulumi.InputType['ClusterKubernetesNetworkConfigArgs']]] = None, logging: Optional[pulumi.Input[pulumi.InputType['LoggingArgs']]] = None, @@ -193,6 +206,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + access_config: Optional[pulumi.Input[pulumi.InputType['ClusterAccessConfigArgs']]] = None, encryption_config: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterEncryptionConfigArgs']]]]] = None, kubernetes_network_config: Optional[pulumi.Input[pulumi.InputType['ClusterKubernetesNetworkConfigArgs']]] = None, logging: Optional[pulumi.Input[pulumi.InputType['LoggingArgs']]] = None, @@ -211,6 +225,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__ = ClusterArgs.__new__(ClusterArgs) + __props__.__dict__["access_config"] = access_config __props__.__dict__["encryption_config"] = encryption_config __props__.__dict__["kubernetes_network_config"] = kubernetes_network_config __props__.__dict__["logging"] = logging @@ -230,7 +245,7 @@ def _internal_init(__self__, __props__.__dict__["encryption_config_key_arn"] = None __props__.__dict__["endpoint"] = None __props__.__dict__["open_id_connect_issuer_url"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["encryption_config[*]", "kubernetes_network_config", "name", "outpost_config", "role_arn"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["access_config.bootstrap_cluster_creator_admin_permissions", "encryption_config[*]", "kubernetes_network_config", "name", "outpost_config", "role_arn"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Cluster, __self__).__init__( 'aws-native:eks:Cluster', @@ -254,6 +269,7 @@ def get(resource_name: str, __props__ = ClusterArgs.__new__(ClusterArgs) + __props__.__dict__["access_config"] = None __props__.__dict__["arn"] = None __props__.__dict__["certificate_authority_data"] = None __props__.__dict__["cluster_security_group_id"] = None @@ -271,6 +287,11 @@ def get(resource_name: str, __props__.__dict__["version"] = None return Cluster(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="accessConfig") + def access_config(self) -> pulumi.Output[Optional['outputs.ClusterAccessConfig']]: + return pulumi.get(self, "access_config") + @property @pulumi.getter def arn(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/eks/get_cluster.py b/sdk/python/pulumi_aws_native/eks/get_cluster.py index 0227eaa2c4..b647d7fbe4 100644 --- a/sdk/python/pulumi_aws_native/eks/get_cluster.py +++ b/sdk/python/pulumi_aws_native/eks/get_cluster.py @@ -20,7 +20,10 @@ @pulumi.output_type class GetClusterResult: - def __init__(__self__, arn=None, certificate_authority_data=None, cluster_security_group_id=None, encryption_config_key_arn=None, endpoint=None, id=None, logging=None, open_id_connect_issuer_url=None, resources_vpc_config=None, tags=None, version=None): + def __init__(__self__, access_config=None, arn=None, certificate_authority_data=None, cluster_security_group_id=None, encryption_config_key_arn=None, endpoint=None, id=None, logging=None, open_id_connect_issuer_url=None, resources_vpc_config=None, tags=None, version=None): + if access_config and not isinstance(access_config, dict): + raise TypeError("Expected argument 'access_config' to be a dict") + pulumi.set(__self__, "access_config", access_config) if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -55,6 +58,11 @@ def __init__(__self__, arn=None, certificate_authority_data=None, cluster_securi raise TypeError("Expected argument 'version' to be a str") pulumi.set(__self__, "version", version) + @property + @pulumi.getter(name="accessConfig") + def access_config(self) -> Optional['outputs.ClusterAccessConfig']: + return pulumi.get(self, "access_config") + @property @pulumi.getter def arn(self) -> Optional[str]: @@ -144,6 +152,7 @@ def __await__(self): if False: yield self return GetClusterResult( + access_config=self.access_config, arn=self.arn, certificate_authority_data=self.certificate_authority_data, cluster_security_group_id=self.cluster_security_group_id, @@ -171,6 +180,7 @@ def get_cluster(name: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:eks:getCluster', __args__, opts=opts, typ=GetClusterResult).value return AwaitableGetClusterResult( + access_config=pulumi.get(__ret__, 'access_config'), arn=pulumi.get(__ret__, 'arn'), certificate_authority_data=pulumi.get(__ret__, 'certificate_authority_data'), cluster_security_group_id=pulumi.get(__ret__, 'cluster_security_group_id'), diff --git a/sdk/python/pulumi_aws_native/eks/outputs.py b/sdk/python/pulumi_aws_native/eks/outputs.py index b998e6e0ec..94138c0797 100644 --- a/sdk/python/pulumi_aws_native/eks/outputs.py +++ b/sdk/python/pulumi_aws_native/eks/outputs.py @@ -13,6 +13,7 @@ __all__ = [ 'AddonTag', + 'ClusterAccessConfig', 'ClusterControlPlanePlacement', 'ClusterEncryptionConfig', 'ClusterKubernetesNetworkConfig', @@ -70,6 +71,60 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class ClusterAccessConfig(dict): + """ + An object representing the Access Config to use for the cluster. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "authenticationMode": + suggest = "authentication_mode" + elif key == "bootstrapClusterCreatorAdminPermissions": + suggest = "bootstrap_cluster_creator_admin_permissions" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ClusterAccessConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ClusterAccessConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ClusterAccessConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + authentication_mode: Optional['ClusterAccessConfigAuthenticationMode'] = None, + bootstrap_cluster_creator_admin_permissions: Optional[bool] = None): + """ + An object representing the Access Config to use for the cluster. + :param 'ClusterAccessConfigAuthenticationMode' authentication_mode: Specify the authentication mode that should be used to create your cluster. + :param bool bootstrap_cluster_creator_admin_permissions: Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + """ + if authentication_mode is not None: + pulumi.set(__self__, "authentication_mode", authentication_mode) + if bootstrap_cluster_creator_admin_permissions is not None: + pulumi.set(__self__, "bootstrap_cluster_creator_admin_permissions", bootstrap_cluster_creator_admin_permissions) + + @property + @pulumi.getter(name="authenticationMode") + def authentication_mode(self) -> Optional['ClusterAccessConfigAuthenticationMode']: + """ + Specify the authentication mode that should be used to create your cluster. + """ + return pulumi.get(self, "authentication_mode") + + @property + @pulumi.getter(name="bootstrapClusterCreatorAdminPermissions") + def bootstrap_cluster_creator_admin_permissions(self) -> Optional[bool]: + """ + Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster. + """ + return pulumi.get(self, "bootstrap_cluster_creator_admin_permissions") + + @pulumi.output_type class ClusterControlPlanePlacement(dict): """ diff --git a/sdk/python/pulumi_aws_native/elasticache/_inputs.py b/sdk/python/pulumi_aws_native/elasticache/_inputs.py index 92ee4dcc50..85b4b845eb 100644 --- a/sdk/python/pulumi_aws_native/elasticache/_inputs.py +++ b/sdk/python/pulumi_aws_native/elasticache/_inputs.py @@ -31,6 +31,7 @@ 'ServerlessCacheCacheUsageLimitsArgs', 'ServerlessCacheDataStorageArgs', 'ServerlessCacheEcpuPerSecondArgs', + 'ServerlessCacheEndpointArgs', 'ServerlessCacheTagArgs', 'SubnetGroupTagArgs', 'UserGroupTagArgs', @@ -710,6 +711,46 @@ def maximum(self, value: pulumi.Input[int]): pulumi.set(self, "maximum", value) +@pulumi.input_type +class ServerlessCacheEndpointArgs: + def __init__(__self__, *, + address: Optional[pulumi.Input[str]] = None, + port: Optional[pulumi.Input[int]] = None): + """ + The address and the port. + :param pulumi.Input[str] address: Endpoint address. + :param pulumi.Input[int] port: Endpoint port. + """ + if address is not None: + pulumi.set(__self__, "address", address) + if port is not None: + pulumi.set(__self__, "port", port) + + @property + @pulumi.getter + def address(self) -> Optional[pulumi.Input[str]]: + """ + Endpoint address. + """ + return pulumi.get(self, "address") + + @address.setter + def address(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "address", value) + + @property + @pulumi.getter + def port(self) -> Optional[pulumi.Input[int]]: + """ + Endpoint port. + """ + return pulumi.get(self, "port") + + @port.setter + def port(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "port", value) + + @pulumi.input_type class ServerlessCacheTagArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/elasticache/serverless_cache.py b/sdk/python/pulumi_aws_native/elasticache/serverless_cache.py index 24f68c5560..bcf24fed2e 100644 --- a/sdk/python/pulumi_aws_native/elasticache/serverless_cache.py +++ b/sdk/python/pulumi_aws_native/elasticache/serverless_cache.py @@ -21,9 +21,11 @@ def __init__(__self__, *, cache_usage_limits: Optional[pulumi.Input['ServerlessCacheCacheUsageLimitsArgs']] = None, daily_snapshot_time: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + endpoint: Optional[pulumi.Input['ServerlessCacheEndpointArgs']] = None, final_snapshot_name: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, major_engine_version: Optional[pulumi.Input[str]] = None, + reader_endpoint: Optional[pulumi.Input['ServerlessCacheEndpointArgs']] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, serverless_cache_name: Optional[pulumi.Input[str]] = None, snapshot_arns_to_restore: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -54,12 +56,16 @@ def __init__(__self__, *, pulumi.set(__self__, "daily_snapshot_time", daily_snapshot_time) if description is not None: pulumi.set(__self__, "description", description) + if endpoint is not None: + pulumi.set(__self__, "endpoint", endpoint) if final_snapshot_name is not None: pulumi.set(__self__, "final_snapshot_name", final_snapshot_name) if kms_key_id is not None: pulumi.set(__self__, "kms_key_id", kms_key_id) if major_engine_version is not None: pulumi.set(__self__, "major_engine_version", major_engine_version) + if reader_endpoint is not None: + pulumi.set(__self__, "reader_endpoint", reader_endpoint) if security_group_ids is not None: pulumi.set(__self__, "security_group_ids", security_group_ids) if serverless_cache_name is not None: @@ -120,6 +126,15 @@ def description(self) -> Optional[pulumi.Input[str]]: def description(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "description", value) + @property + @pulumi.getter + def endpoint(self) -> Optional[pulumi.Input['ServerlessCacheEndpointArgs']]: + return pulumi.get(self, "endpoint") + + @endpoint.setter + def endpoint(self, value: Optional[pulumi.Input['ServerlessCacheEndpointArgs']]): + pulumi.set(self, "endpoint", value) + @property @pulumi.getter(name="finalSnapshotName") def final_snapshot_name(self) -> Optional[pulumi.Input[str]]: @@ -156,6 +171,15 @@ def major_engine_version(self) -> Optional[pulumi.Input[str]]: def major_engine_version(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "major_engine_version", value) + @property + @pulumi.getter(name="readerEndpoint") + def reader_endpoint(self) -> Optional[pulumi.Input['ServerlessCacheEndpointArgs']]: + return pulumi.get(self, "reader_endpoint") + + @reader_endpoint.setter + def reader_endpoint(self, value: Optional[pulumi.Input['ServerlessCacheEndpointArgs']]): + pulumi.set(self, "reader_endpoint", value) + @property @pulumi.getter(name="securityGroupIds") def security_group_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -249,10 +273,12 @@ def __init__(__self__, cache_usage_limits: Optional[pulumi.Input[pulumi.InputType['ServerlessCacheCacheUsageLimitsArgs']]] = None, daily_snapshot_time: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + endpoint: Optional[pulumi.Input[pulumi.InputType['ServerlessCacheEndpointArgs']]] = None, engine: Optional[pulumi.Input[str]] = None, final_snapshot_name: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, major_engine_version: Optional[pulumi.Input[str]] = None, + reader_endpoint: Optional[pulumi.Input[pulumi.InputType['ServerlessCacheEndpointArgs']]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, serverless_cache_name: Optional[pulumi.Input[str]] = None, snapshot_arns_to_restore: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -307,10 +333,12 @@ def _internal_init(__self__, cache_usage_limits: Optional[pulumi.Input[pulumi.InputType['ServerlessCacheCacheUsageLimitsArgs']]] = None, daily_snapshot_time: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + endpoint: Optional[pulumi.Input[pulumi.InputType['ServerlessCacheEndpointArgs']]] = None, engine: Optional[pulumi.Input[str]] = None, final_snapshot_name: Optional[pulumi.Input[str]] = None, kms_key_id: Optional[pulumi.Input[str]] = None, major_engine_version: Optional[pulumi.Input[str]] = None, + reader_endpoint: Optional[pulumi.Input[pulumi.InputType['ServerlessCacheEndpointArgs']]] = None, security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, serverless_cache_name: Optional[pulumi.Input[str]] = None, snapshot_arns_to_restore: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -330,12 +358,14 @@ def _internal_init(__self__, __props__.__dict__["cache_usage_limits"] = cache_usage_limits __props__.__dict__["daily_snapshot_time"] = daily_snapshot_time __props__.__dict__["description"] = description + __props__.__dict__["endpoint"] = endpoint if engine is None and not opts.urn: raise TypeError("Missing required property 'engine'") __props__.__dict__["engine"] = engine __props__.__dict__["final_snapshot_name"] = final_snapshot_name __props__.__dict__["kms_key_id"] = kms_key_id __props__.__dict__["major_engine_version"] = major_engine_version + __props__.__dict__["reader_endpoint"] = reader_endpoint __props__.__dict__["security_group_ids"] = security_group_ids __props__.__dict__["serverless_cache_name"] = serverless_cache_name __props__.__dict__["snapshot_arns_to_restore"] = snapshot_arns_to_restore @@ -345,9 +375,7 @@ def _internal_init(__self__, __props__.__dict__["user_group_id"] = user_group_id __props__.__dict__["arn"] = None __props__.__dict__["create_time"] = None - __props__.__dict__["endpoint"] = None __props__.__dict__["full_engine_version"] = None - __props__.__dict__["reader_endpoint"] = None __props__.__dict__["status"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["engine", "kms_key_id", "major_engine_version", "serverless_cache_name", "snapshot_arns_to_restore[*]", "subnet_ids[*]"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) @@ -434,7 +462,7 @@ def description(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter - def endpoint(self) -> pulumi.Output['outputs.ServerlessCacheEndpoint']: + def endpoint(self) -> pulumi.Output[Optional['outputs.ServerlessCacheEndpoint']]: return pulumi.get(self, "endpoint") @property @@ -479,7 +507,7 @@ def major_engine_version(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="readerEndpoint") - def reader_endpoint(self) -> pulumi.Output['outputs.ServerlessCacheEndpoint']: + def reader_endpoint(self) -> pulumi.Output[Optional['outputs.ServerlessCacheEndpoint']]: return pulumi.get(self, "reader_endpoint") @property diff --git a/sdk/python/pulumi_aws_native/emr/_enums.py b/sdk/python/pulumi_aws_native/emr/_enums.py index 6a978dc93d..ae254b9869 100644 --- a/sdk/python/pulumi_aws_native/emr/_enums.py +++ b/sdk/python/pulumi_aws_native/emr/_enums.py @@ -6,6 +6,7 @@ __all__ = [ 'StudioAuthMode', + 'StudioIdcUserAssignment', 'StudioSessionMappingIdentityType', ] @@ -18,6 +19,14 @@ class StudioAuthMode(str, Enum): IAM = "IAM" +class StudioIdcUserAssignment(str, Enum): + """ + Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + """ + REQUIRED = "REQUIRED" + OPTIONAL = "OPTIONAL" + + class StudioSessionMappingIdentityType(str, Enum): """ Specifies whether the identity to map to the Studio is a user or a group. diff --git a/sdk/python/pulumi_aws_native/emr/_inputs.py b/sdk/python/pulumi_aws_native/emr/_inputs.py index c1b7f3f68c..339c9afd5f 100644 --- a/sdk/python/pulumi_aws_native/emr/_inputs.py +++ b/sdk/python/pulumi_aws_native/emr/_inputs.py @@ -31,6 +31,7 @@ 'ClusterManagedScalingPolicyArgs', 'ClusterMetricDimensionArgs', 'ClusterOnDemandProvisioningSpecificationArgs', + 'ClusterPlacementGroupConfigArgs', 'ClusterPlacementTypeArgs', 'ClusterScalingActionArgs', 'ClusterScalingConstraintsArgs', @@ -1179,6 +1180,34 @@ def allocation_strategy(self, value: pulumi.Input[str]): pulumi.set(self, "allocation_strategy", value) +@pulumi.input_type +class ClusterPlacementGroupConfigArgs: + def __init__(__self__, *, + instance_role: pulumi.Input[str], + placement_strategy: Optional[pulumi.Input[str]] = None): + pulumi.set(__self__, "instance_role", instance_role) + if placement_strategy is not None: + pulumi.set(__self__, "placement_strategy", placement_strategy) + + @property + @pulumi.getter(name="instanceRole") + def instance_role(self) -> pulumi.Input[str]: + return pulumi.get(self, "instance_role") + + @instance_role.setter + def instance_role(self, value: pulumi.Input[str]): + pulumi.set(self, "instance_role", value) + + @property + @pulumi.getter(name="placementStrategy") + def placement_strategy(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "placement_strategy") + + @placement_strategy.setter + def placement_strategy(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "placement_strategy", value) + + @pulumi.input_type class ClusterPlacementTypeArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/emr/cluster.py b/sdk/python/pulumi_aws_native/emr/cluster.py index 4a445b7f4d..8d32d9da8a 100644 --- a/sdk/python/pulumi_aws_native/emr/cluster.py +++ b/sdk/python/pulumi_aws_native/emr/cluster.py @@ -26,13 +26,16 @@ def __init__(__self__, *, bootstrap_actions: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterBootstrapActionConfigArgs']]]] = None, configurations: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterConfigurationArgs']]]] = None, custom_ami_id: Optional[pulumi.Input[str]] = None, + ebs_root_volume_iops: Optional[pulumi.Input[int]] = None, ebs_root_volume_size: Optional[pulumi.Input[int]] = None, + ebs_root_volume_throughput: Optional[pulumi.Input[int]] = None, kerberos_attributes: Optional[pulumi.Input['ClusterKerberosAttributesArgs']] = None, log_encryption_kms_key_id: Optional[pulumi.Input[str]] = None, log_uri: Optional[pulumi.Input[str]] = None, managed_scaling_policy: Optional[pulumi.Input['ClusterManagedScalingPolicyArgs']] = None, name: Optional[pulumi.Input[str]] = None, os_release_label: Optional[pulumi.Input[str]] = None, + placement_group_configs: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPlacementGroupConfigArgs']]]] = None, release_label: Optional[pulumi.Input[str]] = None, scale_down_behavior: Optional[pulumi.Input[str]] = None, security_configuration: Optional[pulumi.Input[str]] = None, @@ -60,8 +63,12 @@ def __init__(__self__, *, pulumi.set(__self__, "configurations", configurations) if custom_ami_id is not None: pulumi.set(__self__, "custom_ami_id", custom_ami_id) + if ebs_root_volume_iops is not None: + pulumi.set(__self__, "ebs_root_volume_iops", ebs_root_volume_iops) if ebs_root_volume_size is not None: pulumi.set(__self__, "ebs_root_volume_size", ebs_root_volume_size) + if ebs_root_volume_throughput is not None: + pulumi.set(__self__, "ebs_root_volume_throughput", ebs_root_volume_throughput) if kerberos_attributes is not None: pulumi.set(__self__, "kerberos_attributes", kerberos_attributes) if log_encryption_kms_key_id is not None: @@ -74,6 +81,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if os_release_label is not None: pulumi.set(__self__, "os_release_label", os_release_label) + if placement_group_configs is not None: + pulumi.set(__self__, "placement_group_configs", placement_group_configs) if release_label is not None: pulumi.set(__self__, "release_label", release_label) if scale_down_behavior is not None: @@ -179,6 +188,15 @@ def custom_ami_id(self) -> Optional[pulumi.Input[str]]: def custom_ami_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "custom_ami_id", value) + @property + @pulumi.getter(name="ebsRootVolumeIops") + def ebs_root_volume_iops(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "ebs_root_volume_iops") + + @ebs_root_volume_iops.setter + def ebs_root_volume_iops(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "ebs_root_volume_iops", value) + @property @pulumi.getter(name="ebsRootVolumeSize") def ebs_root_volume_size(self) -> Optional[pulumi.Input[int]]: @@ -188,6 +206,15 @@ def ebs_root_volume_size(self) -> Optional[pulumi.Input[int]]: def ebs_root_volume_size(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "ebs_root_volume_size", value) + @property + @pulumi.getter(name="ebsRootVolumeThroughput") + def ebs_root_volume_throughput(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "ebs_root_volume_throughput") + + @ebs_root_volume_throughput.setter + def ebs_root_volume_throughput(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "ebs_root_volume_throughput", value) + @property @pulumi.getter(name="kerberosAttributes") def kerberos_attributes(self) -> Optional[pulumi.Input['ClusterKerberosAttributesArgs']]: @@ -242,6 +269,15 @@ def os_release_label(self) -> Optional[pulumi.Input[str]]: def os_release_label(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "os_release_label", value) + @property + @pulumi.getter(name="placementGroupConfigs") + def placement_group_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPlacementGroupConfigArgs']]]]: + return pulumi.get(self, "placement_group_configs") + + @placement_group_configs.setter + def placement_group_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ClusterPlacementGroupConfigArgs']]]]): + pulumi.set(self, "placement_group_configs", value) + @property @pulumi.getter(name="releaseLabel") def release_label(self) -> Optional[pulumi.Input[str]]: @@ -323,7 +359,9 @@ def __init__(__self__, bootstrap_actions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterBootstrapActionConfigArgs']]]]] = None, configurations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterConfigurationArgs']]]]] = None, custom_ami_id: Optional[pulumi.Input[str]] = None, + ebs_root_volume_iops: Optional[pulumi.Input[int]] = None, ebs_root_volume_size: Optional[pulumi.Input[int]] = None, + ebs_root_volume_throughput: Optional[pulumi.Input[int]] = None, instances: Optional[pulumi.Input[pulumi.InputType['ClusterJobFlowInstancesConfigArgs']]] = None, job_flow_role: Optional[pulumi.Input[str]] = None, kerberos_attributes: Optional[pulumi.Input[pulumi.InputType['ClusterKerberosAttributesArgs']]] = None, @@ -332,6 +370,7 @@ def __init__(__self__, managed_scaling_policy: Optional[pulumi.Input[pulumi.InputType['ClusterManagedScalingPolicyArgs']]] = None, name: Optional[pulumi.Input[str]] = None, os_release_label: Optional[pulumi.Input[str]] = None, + placement_group_configs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterPlacementGroupConfigArgs']]]]] = None, release_label: Optional[pulumi.Input[str]] = None, scale_down_behavior: Optional[pulumi.Input[str]] = None, security_configuration: Optional[pulumi.Input[str]] = None, @@ -378,7 +417,9 @@ def _internal_init(__self__, bootstrap_actions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterBootstrapActionConfigArgs']]]]] = None, configurations: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterConfigurationArgs']]]]] = None, custom_ami_id: Optional[pulumi.Input[str]] = None, + ebs_root_volume_iops: Optional[pulumi.Input[int]] = None, ebs_root_volume_size: Optional[pulumi.Input[int]] = None, + ebs_root_volume_throughput: Optional[pulumi.Input[int]] = None, instances: Optional[pulumi.Input[pulumi.InputType['ClusterJobFlowInstancesConfigArgs']]] = None, job_flow_role: Optional[pulumi.Input[str]] = None, kerberos_attributes: Optional[pulumi.Input[pulumi.InputType['ClusterKerberosAttributesArgs']]] = None, @@ -387,6 +428,7 @@ def _internal_init(__self__, managed_scaling_policy: Optional[pulumi.Input[pulumi.InputType['ClusterManagedScalingPolicyArgs']]] = None, name: Optional[pulumi.Input[str]] = None, os_release_label: Optional[pulumi.Input[str]] = None, + placement_group_configs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ClusterPlacementGroupConfigArgs']]]]] = None, release_label: Optional[pulumi.Input[str]] = None, scale_down_behavior: Optional[pulumi.Input[str]] = None, security_configuration: Optional[pulumi.Input[str]] = None, @@ -412,7 +454,9 @@ def _internal_init(__self__, __props__.__dict__["bootstrap_actions"] = bootstrap_actions __props__.__dict__["configurations"] = configurations __props__.__dict__["custom_ami_id"] = custom_ami_id + __props__.__dict__["ebs_root_volume_iops"] = ebs_root_volume_iops __props__.__dict__["ebs_root_volume_size"] = ebs_root_volume_size + __props__.__dict__["ebs_root_volume_throughput"] = ebs_root_volume_throughput if instances is None and not opts.urn: raise TypeError("Missing required property 'instances'") __props__.__dict__["instances"] = instances @@ -425,6 +469,7 @@ def _internal_init(__self__, __props__.__dict__["managed_scaling_policy"] = managed_scaling_policy __props__.__dict__["name"] = name __props__.__dict__["os_release_label"] = os_release_label + __props__.__dict__["placement_group_configs"] = placement_group_configs __props__.__dict__["release_label"] = release_label __props__.__dict__["scale_down_behavior"] = scale_down_behavior __props__.__dict__["security_configuration"] = security_configuration @@ -436,7 +481,7 @@ def _internal_init(__self__, __props__.__dict__["tags"] = tags __props__.__dict__["visible_to_all_users"] = visible_to_all_users __props__.__dict__["master_public_dns"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["additional_info", "applications[*]", "auto_scaling_role", "bootstrap_actions[*]", "configurations[*]", "custom_ami_id", "ebs_root_volume_size", "job_flow_role", "kerberos_attributes", "log_encryption_kms_key_id", "log_uri", "name", "os_release_label", "release_label", "scale_down_behavior", "security_configuration", "service_role", "steps[*]"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["additional_info", "applications[*]", "auto_scaling_role", "bootstrap_actions[*]", "configurations[*]", "custom_ami_id", "ebs_root_volume_iops", "ebs_root_volume_size", "ebs_root_volume_throughput", "job_flow_role", "kerberos_attributes", "log_encryption_kms_key_id", "log_uri", "name", "os_release_label", "placement_group_configs[*]", "release_label", "scale_down_behavior", "security_configuration", "service_role", "steps[*]"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Cluster, __self__).__init__( 'aws-native:emr:Cluster', @@ -467,7 +512,9 @@ def get(resource_name: str, __props__.__dict__["bootstrap_actions"] = None __props__.__dict__["configurations"] = None __props__.__dict__["custom_ami_id"] = None + __props__.__dict__["ebs_root_volume_iops"] = None __props__.__dict__["ebs_root_volume_size"] = None + __props__.__dict__["ebs_root_volume_throughput"] = None __props__.__dict__["instances"] = None __props__.__dict__["job_flow_role"] = None __props__.__dict__["kerberos_attributes"] = None @@ -477,6 +524,7 @@ def get(resource_name: str, __props__.__dict__["master_public_dns"] = None __props__.__dict__["name"] = None __props__.__dict__["os_release_label"] = None + __props__.__dict__["placement_group_configs"] = None __props__.__dict__["release_label"] = None __props__.__dict__["scale_down_behavior"] = None __props__.__dict__["security_configuration"] = None @@ -522,11 +570,21 @@ def configurations(self) -> pulumi.Output[Optional[Sequence['outputs.ClusterConf def custom_ami_id(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "custom_ami_id") + @property + @pulumi.getter(name="ebsRootVolumeIops") + def ebs_root_volume_iops(self) -> pulumi.Output[Optional[int]]: + return pulumi.get(self, "ebs_root_volume_iops") + @property @pulumi.getter(name="ebsRootVolumeSize") def ebs_root_volume_size(self) -> pulumi.Output[Optional[int]]: return pulumi.get(self, "ebs_root_volume_size") + @property + @pulumi.getter(name="ebsRootVolumeThroughput") + def ebs_root_volume_throughput(self) -> pulumi.Output[Optional[int]]: + return pulumi.get(self, "ebs_root_volume_throughput") + @property @pulumi.getter def instances(self) -> pulumi.Output['outputs.ClusterJobFlowInstancesConfig']: @@ -572,6 +630,11 @@ def name(self) -> pulumi.Output[str]: def os_release_label(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "os_release_label") + @property + @pulumi.getter(name="placementGroupConfigs") + def placement_group_configs(self) -> pulumi.Output[Optional[Sequence['outputs.ClusterPlacementGroupConfig']]]: + return pulumi.get(self, "placement_group_configs") + @property @pulumi.getter(name="releaseLabel") def release_label(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/emr/outputs.py b/sdk/python/pulumi_aws_native/emr/outputs.py index dedc1d7b62..296d0dc718 100644 --- a/sdk/python/pulumi_aws_native/emr/outputs.py +++ b/sdk/python/pulumi_aws_native/emr/outputs.py @@ -32,6 +32,7 @@ 'ClusterManagedScalingPolicy', 'ClusterMetricDimension', 'ClusterOnDemandProvisioningSpecification', + 'ClusterPlacementGroupConfig', 'ClusterPlacementType', 'ClusterScalingAction', 'ClusterScalingConstraints', @@ -1209,6 +1210,45 @@ def allocation_strategy(self) -> str: return pulumi.get(self, "allocation_strategy") +@pulumi.output_type +class ClusterPlacementGroupConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "instanceRole": + suggest = "instance_role" + elif key == "placementStrategy": + suggest = "placement_strategy" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ClusterPlacementGroupConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ClusterPlacementGroupConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ClusterPlacementGroupConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + instance_role: str, + placement_strategy: Optional[str] = None): + pulumi.set(__self__, "instance_role", instance_role) + if placement_strategy is not None: + pulumi.set(__self__, "placement_strategy", placement_strategy) + + @property + @pulumi.getter(name="instanceRole") + def instance_role(self) -> str: + return pulumi.get(self, "instance_role") + + @property + @pulumi.getter(name="placementStrategy") + def placement_strategy(self) -> Optional[str]: + return pulumi.get(self, "placement_strategy") + + @pulumi.output_type class ClusterPlacementType(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/emr/studio.py b/sdk/python/pulumi_aws_native/emr/studio.py index 89b27b5f49..868e501c5b 100644 --- a/sdk/python/pulumi_aws_native/emr/studio.py +++ b/sdk/python/pulumi_aws_native/emr/studio.py @@ -25,10 +25,14 @@ def __init__(__self__, *, vpc_id: pulumi.Input[str], workspace_security_group_id: pulumi.Input[str], description: Optional[pulumi.Input[str]] = None, + encryption_key_arn: Optional[pulumi.Input[str]] = None, + idc_instance_arn: Optional[pulumi.Input[str]] = None, + idc_user_assignment: Optional[pulumi.Input['StudioIdcUserAssignment']] = None, idp_auth_url: Optional[pulumi.Input[str]] = None, idp_relay_state_parameter_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['StudioTagArgs']]]] = None, + trusted_identity_propagation_enabled: Optional[pulumi.Input[bool]] = None, user_role: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Studio resource. @@ -40,10 +44,14 @@ def __init__(__self__, *, :param pulumi.Input[str] vpc_id: The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with the Studio. :param pulumi.Input[str] workspace_security_group_id: The ID of the Amazon EMR Studio Workspace security group. The Workspace security group allows outbound network traffic to resources in the Engine security group, and it must be in the same VPC specified by VpcId. :param pulumi.Input[str] description: A detailed description of the Studio. + :param pulumi.Input[str] encryption_key_arn: The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + :param pulumi.Input[str] idc_instance_arn: The ARN of the IAM Identity Center instance to create the Studio application. + :param pulumi.Input['StudioIdcUserAssignment'] idc_user_assignment: Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. :param pulumi.Input[str] idp_auth_url: Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. :param pulumi.Input[str] idp_relay_state_parameter_name: The name of relay state parameter for external Identity Provider. :param pulumi.Input[str] name: A descriptive name for the Amazon EMR Studio. :param pulumi.Input[Sequence[pulumi.Input['StudioTagArgs']]] tags: A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters. + :param pulumi.Input[bool] trusted_identity_propagation_enabled: A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. :param pulumi.Input[str] user_role: The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies. """ pulumi.set(__self__, "auth_mode", auth_mode) @@ -55,6 +63,12 @@ def __init__(__self__, *, pulumi.set(__self__, "workspace_security_group_id", workspace_security_group_id) if description is not None: pulumi.set(__self__, "description", description) + if encryption_key_arn is not None: + pulumi.set(__self__, "encryption_key_arn", encryption_key_arn) + if idc_instance_arn is not None: + pulumi.set(__self__, "idc_instance_arn", idc_instance_arn) + if idc_user_assignment is not None: + pulumi.set(__self__, "idc_user_assignment", idc_user_assignment) if idp_auth_url is not None: pulumi.set(__self__, "idp_auth_url", idp_auth_url) if idp_relay_state_parameter_name is not None: @@ -63,6 +77,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if tags is not None: pulumi.set(__self__, "tags", tags) + if trusted_identity_propagation_enabled is not None: + pulumi.set(__self__, "trusted_identity_propagation_enabled", trusted_identity_propagation_enabled) if user_role is not None: pulumi.set(__self__, "user_role", user_role) @@ -162,6 +178,42 @@ def description(self) -> Optional[pulumi.Input[str]]: def description(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "description", value) + @property + @pulumi.getter(name="encryptionKeyArn") + def encryption_key_arn(self) -> Optional[pulumi.Input[str]]: + """ + The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + """ + return pulumi.get(self, "encryption_key_arn") + + @encryption_key_arn.setter + def encryption_key_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "encryption_key_arn", value) + + @property + @pulumi.getter(name="idcInstanceArn") + def idc_instance_arn(self) -> Optional[pulumi.Input[str]]: + """ + The ARN of the IAM Identity Center instance to create the Studio application. + """ + return pulumi.get(self, "idc_instance_arn") + + @idc_instance_arn.setter + def idc_instance_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "idc_instance_arn", value) + + @property + @pulumi.getter(name="idcUserAssignment") + def idc_user_assignment(self) -> Optional[pulumi.Input['StudioIdcUserAssignment']]: + """ + Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + """ + return pulumi.get(self, "idc_user_assignment") + + @idc_user_assignment.setter + def idc_user_assignment(self, value: Optional[pulumi.Input['StudioIdcUserAssignment']]): + pulumi.set(self, "idc_user_assignment", value) + @property @pulumi.getter(name="idpAuthUrl") def idp_auth_url(self) -> Optional[pulumi.Input[str]]: @@ -210,6 +262,18 @@ def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StudioTagArgs']]] def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['StudioTagArgs']]]]): pulumi.set(self, "tags", value) + @property + @pulumi.getter(name="trustedIdentityPropagationEnabled") + def trusted_identity_propagation_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + """ + return pulumi.get(self, "trusted_identity_propagation_enabled") + + @trusted_identity_propagation_enabled.setter + def trusted_identity_propagation_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "trusted_identity_propagation_enabled", value) + @property @pulumi.getter(name="userRole") def user_role(self) -> Optional[pulumi.Input[str]]: @@ -231,13 +295,17 @@ def __init__(__self__, auth_mode: Optional[pulumi.Input['StudioAuthMode']] = None, default_s3_location: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + encryption_key_arn: Optional[pulumi.Input[str]] = None, engine_security_group_id: Optional[pulumi.Input[str]] = None, + idc_instance_arn: Optional[pulumi.Input[str]] = None, + idc_user_assignment: Optional[pulumi.Input['StudioIdcUserAssignment']] = None, idp_auth_url: Optional[pulumi.Input[str]] = None, idp_relay_state_parameter_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, service_role: Optional[pulumi.Input[str]] = None, subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['StudioTagArgs']]]]] = None, + trusted_identity_propagation_enabled: Optional[pulumi.Input[bool]] = None, user_role: Optional[pulumi.Input[str]] = None, vpc_id: Optional[pulumi.Input[str]] = None, workspace_security_group_id: Optional[pulumi.Input[str]] = None, @@ -250,13 +318,17 @@ def __init__(__self__, :param pulumi.Input['StudioAuthMode'] auth_mode: Specifies whether the Studio authenticates users using single sign-on (SSO) or IAM. Amazon EMR Studio currently only supports SSO authentication. :param pulumi.Input[str] default_s3_location: The default Amazon S3 location to back up EMR Studio Workspaces and notebook files. A Studio user can select an alternative Amazon S3 location when creating a Workspace. :param pulumi.Input[str] description: A detailed description of the Studio. + :param pulumi.Input[str] encryption_key_arn: The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. :param pulumi.Input[str] engine_security_group_id: The ID of the Amazon EMR Studio Engine security group. The Engine security group allows inbound network traffic from the Workspace security group, and it must be in the same VPC specified by VpcId. + :param pulumi.Input[str] idc_instance_arn: The ARN of the IAM Identity Center instance to create the Studio application. + :param pulumi.Input['StudioIdcUserAssignment'] idc_user_assignment: Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. :param pulumi.Input[str] idp_auth_url: Your identity provider's authentication endpoint. Amazon EMR Studio redirects federated users to this endpoint for authentication when logging in to a Studio with the Studio URL. :param pulumi.Input[str] idp_relay_state_parameter_name: The name of relay state parameter for external Identity Provider. :param pulumi.Input[str] name: A descriptive name for the Amazon EMR Studio. :param pulumi.Input[str] service_role: The IAM role that will be assumed by the Amazon EMR Studio. The service role provides a way for Amazon EMR Studio to interoperate with other AWS services. :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: A list of up to 5 subnet IDs to associate with the Studio. The subnets must belong to the VPC specified by VpcId. Studio users can create a Workspace in any of the specified subnets. :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['StudioTagArgs']]]] tags: A list of tags to associate with the Studio. Tags are user-defined key-value pairs that consist of a required key string with a maximum of 128 characters, and an optional value string with a maximum of 256 characters. + :param pulumi.Input[bool] trusted_identity_propagation_enabled: A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. :param pulumi.Input[str] user_role: The IAM user role that will be assumed by users and groups logged in to a Studio. The permissions attached to this IAM role can be scoped down for each user or group using session policies. :param pulumi.Input[str] vpc_id: The ID of the Amazon Virtual Private Cloud (Amazon VPC) to associate with the Studio. :param pulumi.Input[str] workspace_security_group_id: The ID of the Amazon EMR Studio Workspace security group. The Workspace security group allows outbound network traffic to resources in the Engine security group, and it must be in the same VPC specified by VpcId. @@ -288,13 +360,17 @@ def _internal_init(__self__, auth_mode: Optional[pulumi.Input['StudioAuthMode']] = None, default_s3_location: Optional[pulumi.Input[str]] = None, description: Optional[pulumi.Input[str]] = None, + encryption_key_arn: Optional[pulumi.Input[str]] = None, engine_security_group_id: Optional[pulumi.Input[str]] = None, + idc_instance_arn: Optional[pulumi.Input[str]] = None, + idc_user_assignment: Optional[pulumi.Input['StudioIdcUserAssignment']] = None, idp_auth_url: Optional[pulumi.Input[str]] = None, idp_relay_state_parameter_name: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, service_role: Optional[pulumi.Input[str]] = None, subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['StudioTagArgs']]]]] = None, + trusted_identity_propagation_enabled: Optional[pulumi.Input[bool]] = None, user_role: Optional[pulumi.Input[str]] = None, vpc_id: Optional[pulumi.Input[str]] = None, workspace_security_group_id: Optional[pulumi.Input[str]] = None, @@ -314,9 +390,12 @@ def _internal_init(__self__, raise TypeError("Missing required property 'default_s3_location'") __props__.__dict__["default_s3_location"] = default_s3_location __props__.__dict__["description"] = description + __props__.__dict__["encryption_key_arn"] = encryption_key_arn if engine_security_group_id is None and not opts.urn: raise TypeError("Missing required property 'engine_security_group_id'") __props__.__dict__["engine_security_group_id"] = engine_security_group_id + __props__.__dict__["idc_instance_arn"] = idc_instance_arn + __props__.__dict__["idc_user_assignment"] = idc_user_assignment __props__.__dict__["idp_auth_url"] = idp_auth_url __props__.__dict__["idp_relay_state_parameter_name"] = idp_relay_state_parameter_name __props__.__dict__["name"] = name @@ -327,6 +406,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'subnet_ids'") __props__.__dict__["subnet_ids"] = subnet_ids __props__.__dict__["tags"] = tags + __props__.__dict__["trusted_identity_propagation_enabled"] = trusted_identity_propagation_enabled __props__.__dict__["user_role"] = user_role if vpc_id is None and not opts.urn: raise TypeError("Missing required property 'vpc_id'") @@ -337,7 +417,7 @@ def _internal_init(__self__, __props__.__dict__["arn"] = None __props__.__dict__["studio_id"] = None __props__.__dict__["url"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["auth_mode", "engine_security_group_id", "service_role", "user_role", "vpc_id", "workspace_security_group_id"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["auth_mode", "encryption_key_arn", "engine_security_group_id", "idc_instance_arn", "idc_user_assignment", "service_role", "trusted_identity_propagation_enabled", "user_role", "vpc_id", "workspace_security_group_id"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Studio, __self__).__init__( 'aws-native:emr:Studio', @@ -365,7 +445,10 @@ def get(resource_name: str, __props__.__dict__["auth_mode"] = None __props__.__dict__["default_s3_location"] = None __props__.__dict__["description"] = None + __props__.__dict__["encryption_key_arn"] = None __props__.__dict__["engine_security_group_id"] = None + __props__.__dict__["idc_instance_arn"] = None + __props__.__dict__["idc_user_assignment"] = None __props__.__dict__["idp_auth_url"] = None __props__.__dict__["idp_relay_state_parameter_name"] = None __props__.__dict__["name"] = None @@ -373,6 +456,7 @@ def get(resource_name: str, __props__.__dict__["studio_id"] = None __props__.__dict__["subnet_ids"] = None __props__.__dict__["tags"] = None + __props__.__dict__["trusted_identity_propagation_enabled"] = None __props__.__dict__["url"] = None __props__.__dict__["user_role"] = None __props__.__dict__["vpc_id"] = None @@ -411,6 +495,14 @@ def description(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "description") + @property + @pulumi.getter(name="encryptionKeyArn") + def encryption_key_arn(self) -> pulumi.Output[Optional[str]]: + """ + The AWS KMS key identifier (ARN) used to encrypt AWS EMR Studio workspace and notebook files when backed up to AWS S3. + """ + return pulumi.get(self, "encryption_key_arn") + @property @pulumi.getter(name="engineSecurityGroupId") def engine_security_group_id(self) -> pulumi.Output[str]: @@ -419,6 +511,22 @@ def engine_security_group_id(self) -> pulumi.Output[str]: """ return pulumi.get(self, "engine_security_group_id") + @property + @pulumi.getter(name="idcInstanceArn") + def idc_instance_arn(self) -> pulumi.Output[Optional[str]]: + """ + The ARN of the IAM Identity Center instance to create the Studio application. + """ + return pulumi.get(self, "idc_instance_arn") + + @property + @pulumi.getter(name="idcUserAssignment") + def idc_user_assignment(self) -> pulumi.Output[Optional['StudioIdcUserAssignment']]: + """ + Specifies whether IAM Identity Center user assignment is REQUIRED or OPTIONAL. If the value is set to REQUIRED, users must be explicitly assigned to the Studio application to access the Studio. + """ + return pulumi.get(self, "idc_user_assignment") + @property @pulumi.getter(name="idpAuthUrl") def idp_auth_url(self) -> pulumi.Output[Optional[str]]: @@ -475,6 +583,14 @@ def tags(self) -> pulumi.Output[Optional[Sequence['outputs.StudioTag']]]: """ return pulumi.get(self, "tags") + @property + @pulumi.getter(name="trustedIdentityPropagationEnabled") + def trusted_identity_propagation_enabled(self) -> pulumi.Output[Optional[bool]]: + """ + A Boolean indicating whether to enable Trusted identity propagation for the Studio. The default value is false. + """ + return pulumi.get(self, "trusted_identity_propagation_enabled") + @property @pulumi.getter def url(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/eventschemas/discoverer.py b/sdk/python/pulumi_aws_native/eventschemas/discoverer.py index 5482256a0b..f841dced40 100644 --- a/sdk/python/pulumi_aws_native/eventschemas/discoverer.py +++ b/sdk/python/pulumi_aws_native/eventschemas/discoverer.py @@ -22,6 +22,10 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['DiscovererTagsEntryArgs']]]] = None): """ The set of arguments for constructing a Discoverer resource. + :param pulumi.Input[str] source_arn: The ARN of the event bus. + :param pulumi.Input[bool] cross_account: Defines whether event schemas from other accounts are discovered. Default is True. + :param pulumi.Input[str] description: A description for the discoverer. + :param pulumi.Input[Sequence[pulumi.Input['DiscovererTagsEntryArgs']]] tags: Tags associated with the resource. """ pulumi.set(__self__, "source_arn", source_arn) if cross_account is not None: @@ -34,6 +38,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="sourceArn") def source_arn(self) -> pulumi.Input[str]: + """ + The ARN of the event bus. + """ return pulumi.get(self, "source_arn") @source_arn.setter @@ -43,6 +50,9 @@ def source_arn(self, value: pulumi.Input[str]): @property @pulumi.getter(name="crossAccount") def cross_account(self) -> Optional[pulumi.Input[bool]]: + """ + Defines whether event schemas from other accounts are discovered. Default is True. + """ return pulumi.get(self, "cross_account") @cross_account.setter @@ -52,6 +62,9 @@ def cross_account(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + A description for the discoverer. + """ return pulumi.get(self, "description") @description.setter @@ -61,6 +74,9 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DiscovererTagsEntryArgs']]]]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") @tags.setter @@ -68,12 +84,7 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DiscovererTag pulumi.set(self, "tags", value) -warnings.warn("""Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class Discoverer(pulumi.CustomResource): - warnings.warn("""Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -88,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[bool] cross_account: Defines whether event schemas from other accounts are discovered. Default is True. + :param pulumi.Input[str] description: A description for the discoverer. + :param pulumi.Input[str] source_arn: The ARN of the event bus. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DiscovererTagsEntryArgs']]]] tags: Tags associated with the resource. """ ... @overload @@ -118,7 +133,6 @@ def _internal_init(__self__, source_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DiscovererTagsEntryArgs']]]]] = None, __props__=None): - pulumi.log.warn("""Discoverer is deprecated: Discoverer is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") 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') @@ -135,6 +149,7 @@ def _internal_init(__self__, __props__.__dict__["tags"] = tags __props__.__dict__["discoverer_arn"] = None __props__.__dict__["discoverer_id"] = None + __props__.__dict__["state"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["source_arn"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Discoverer, __self__).__init__( @@ -164,36 +179,63 @@ def get(resource_name: str, __props__.__dict__["discoverer_arn"] = None __props__.__dict__["discoverer_id"] = None __props__.__dict__["source_arn"] = None + __props__.__dict__["state"] = None __props__.__dict__["tags"] = None return Discoverer(resource_name, opts=opts, __props__=__props__) @property @pulumi.getter(name="crossAccount") def cross_account(self) -> pulumi.Output[Optional[bool]]: + """ + Defines whether event schemas from other accounts are discovered. Default is True. + """ return pulumi.get(self, "cross_account") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: + """ + A description for the discoverer. + """ return pulumi.get(self, "description") @property @pulumi.getter(name="discovererArn") def discoverer_arn(self) -> pulumi.Output[str]: + """ + The ARN of the discoverer. + """ return pulumi.get(self, "discoverer_arn") @property @pulumi.getter(name="discovererId") def discoverer_id(self) -> pulumi.Output[str]: + """ + The Id of the discoverer. + """ return pulumi.get(self, "discoverer_id") @property @pulumi.getter(name="sourceArn") def source_arn(self) -> pulumi.Output[str]: + """ + The ARN of the event bus. + """ return pulumi.get(self, "source_arn") + @property + @pulumi.getter + def state(self) -> pulumi.Output[str]: + """ + Defines the current state of the discoverer. + """ + return pulumi.get(self, "state") + @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.DiscovererTagsEntry']]]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/eventschemas/get_discoverer.py b/sdk/python/pulumi_aws_native/eventschemas/get_discoverer.py index cfa809d73a..1c007753ca 100644 --- a/sdk/python/pulumi_aws_native/eventschemas/get_discoverer.py +++ b/sdk/python/pulumi_aws_native/eventschemas/get_discoverer.py @@ -19,7 +19,7 @@ @pulumi.output_type class GetDiscovererResult: - def __init__(__self__, cross_account=None, description=None, discoverer_arn=None, discoverer_id=None, tags=None): + def __init__(__self__, cross_account=None, description=None, discoverer_arn=None, discoverer_id=None, state=None, tags=None): if cross_account and not isinstance(cross_account, bool): raise TypeError("Expected argument 'cross_account' to be a bool") pulumi.set(__self__, "cross_account", cross_account) @@ -32,6 +32,9 @@ def __init__(__self__, cross_account=None, description=None, discoverer_arn=None if discoverer_id and not isinstance(discoverer_id, str): raise TypeError("Expected argument 'discoverer_id' to be a str") pulumi.set(__self__, "discoverer_id", discoverer_id) + 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) @@ -39,26 +42,49 @@ def __init__(__self__, cross_account=None, description=None, discoverer_arn=None @property @pulumi.getter(name="crossAccount") def cross_account(self) -> Optional[bool]: + """ + Defines whether event schemas from other accounts are discovered. Default is True. + """ return pulumi.get(self, "cross_account") @property @pulumi.getter def description(self) -> Optional[str]: + """ + A description for the discoverer. + """ return pulumi.get(self, "description") @property @pulumi.getter(name="discovererArn") def discoverer_arn(self) -> Optional[str]: + """ + The ARN of the discoverer. + """ return pulumi.get(self, "discoverer_arn") @property @pulumi.getter(name="discovererId") def discoverer_id(self) -> Optional[str]: + """ + The Id of the discoverer. + """ return pulumi.get(self, "discoverer_id") + @property + @pulumi.getter + def state(self) -> Optional[str]: + """ + Defines the current state of the discoverer. + """ + return pulumi.get(self, "state") + @property @pulumi.getter def tags(self) -> Optional[Sequence['outputs.DiscovererTagsEntry']]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") @@ -72,16 +98,20 @@ def __await__(self): description=self.description, discoverer_arn=self.discoverer_arn, discoverer_id=self.discoverer_id, + state=self.state, tags=self.tags) -def get_discoverer(discoverer_id: Optional[str] = None, +def get_discoverer(discoverer_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDiscovererResult: """ Resource Type definition for AWS::EventSchemas::Discoverer + + + :param str discoverer_arn: The ARN of the discoverer. """ __args__ = dict() - __args__['discovererId'] = discoverer_id + __args__['discovererArn'] = discoverer_arn opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:eventschemas:getDiscoverer', __args__, opts=opts, typ=GetDiscovererResult).value @@ -90,13 +120,17 @@ def get_discoverer(discoverer_id: Optional[str] = None, description=pulumi.get(__ret__, 'description'), discoverer_arn=pulumi.get(__ret__, 'discoverer_arn'), discoverer_id=pulumi.get(__ret__, 'discoverer_id'), + state=pulumi.get(__ret__, 'state'), tags=pulumi.get(__ret__, 'tags')) @_utilities.lift_output_func(get_discoverer) -def get_discoverer_output(discoverer_id: Optional[pulumi.Input[str]] = None, +def get_discoverer_output(discoverer_arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDiscovererResult]: """ Resource Type definition for AWS::EventSchemas::Discoverer + + + :param str discoverer_arn: The ARN of the discoverer. """ ... diff --git a/sdk/python/pulumi_aws_native/eventschemas/get_registry.py b/sdk/python/pulumi_aws_native/eventschemas/get_registry.py index 1ed5ee5407..cd5ee2615a 100644 --- a/sdk/python/pulumi_aws_native/eventschemas/get_registry.py +++ b/sdk/python/pulumi_aws_native/eventschemas/get_registry.py @@ -19,13 +19,10 @@ @pulumi.output_type class GetRegistryResult: - def __init__(__self__, description=None, id=None, registry_arn=None, tags=None): + def __init__(__self__, description=None, registry_arn=None, tags=None): if description and not isinstance(description, str): raise TypeError("Expected argument 'description' to be a str") pulumi.set(__self__, "description", description) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) if registry_arn and not isinstance(registry_arn, str): raise TypeError("Expected argument 'registry_arn' to be a str") pulumi.set(__self__, "registry_arn", registry_arn) @@ -36,21 +33,25 @@ def __init__(__self__, description=None, id=None, registry_arn=None, tags=None): @property @pulumi.getter def description(self) -> Optional[str]: + """ + A description of the registry to be created. + """ return pulumi.get(self, "description") - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - @property @pulumi.getter(name="registryArn") def registry_arn(self) -> Optional[str]: + """ + The ARN of the registry. + """ return pulumi.get(self, "registry_arn") @property @pulumi.getter def tags(self) -> Optional[Sequence['outputs.RegistryTagsEntry']]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") @@ -61,32 +62,36 @@ def __await__(self): yield self return GetRegistryResult( description=self.description, - id=self.id, registry_arn=self.registry_arn, tags=self.tags) -def get_registry(id: Optional[str] = None, +def get_registry(registry_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRegistryResult: """ Resource Type definition for AWS::EventSchemas::Registry + + + :param str registry_arn: The ARN of the registry. """ __args__ = dict() - __args__['id'] = id + __args__['registryArn'] = registry_arn opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:eventschemas:getRegistry', __args__, opts=opts, typ=GetRegistryResult).value return AwaitableGetRegistryResult( description=pulumi.get(__ret__, 'description'), - id=pulumi.get(__ret__, 'id'), registry_arn=pulumi.get(__ret__, 'registry_arn'), tags=pulumi.get(__ret__, 'tags')) @_utilities.lift_output_func(get_registry) -def get_registry_output(id: Optional[pulumi.Input[str]] = None, +def get_registry_output(registry_arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRegistryResult]: """ Resource Type definition for AWS::EventSchemas::Registry + + + :param str registry_arn: The ARN of the registry. """ ... diff --git a/sdk/python/pulumi_aws_native/eventschemas/get_schema.py b/sdk/python/pulumi_aws_native/eventschemas/get_schema.py index d8af1f11cb..1ad4c25b28 100644 --- a/sdk/python/pulumi_aws_native/eventschemas/get_schema.py +++ b/sdk/python/pulumi_aws_native/eventschemas/get_schema.py @@ -19,16 +19,16 @@ @pulumi.output_type class GetSchemaResult: - def __init__(__self__, content=None, description=None, id=None, schema_arn=None, schema_version=None, tags=None, type=None): + def __init__(__self__, content=None, description=None, last_modified=None, schema_arn=None, schema_version=None, tags=None, type=None, version_created_date=None): if content and not isinstance(content, str): raise TypeError("Expected argument 'content' to be a str") pulumi.set(__self__, "content", content) if description and not isinstance(description, str): raise TypeError("Expected argument 'description' to be a str") pulumi.set(__self__, "description", description) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) + if last_modified and not isinstance(last_modified, str): + raise TypeError("Expected argument 'last_modified' to be a str") + pulumi.set(__self__, "last_modified", last_modified) if schema_arn and not isinstance(schema_arn, str): raise TypeError("Expected argument 'schema_arn' to be a str") pulumi.set(__self__, "schema_arn", schema_arn) @@ -41,42 +41,74 @@ def __init__(__self__, content=None, description=None, id=None, schema_arn=None, if type and not isinstance(type, str): raise TypeError("Expected argument 'type' to be a str") pulumi.set(__self__, "type", type) + if version_created_date and not isinstance(version_created_date, str): + raise TypeError("Expected argument 'version_created_date' to be a str") + pulumi.set(__self__, "version_created_date", version_created_date) @property @pulumi.getter def content(self) -> Optional[str]: + """ + The source of the schema definition. + """ return pulumi.get(self, "content") @property @pulumi.getter def description(self) -> Optional[str]: + """ + A description of the schema. + """ return pulumi.get(self, "description") @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") + @pulumi.getter(name="lastModified") + def last_modified(self) -> Optional[str]: + """ + The last modified time of the schema. + """ + return pulumi.get(self, "last_modified") @property @pulumi.getter(name="schemaArn") def schema_arn(self) -> Optional[str]: + """ + The ARN of the schema. + """ return pulumi.get(self, "schema_arn") @property @pulumi.getter(name="schemaVersion") def schema_version(self) -> Optional[str]: + """ + The version number of the schema. + """ return pulumi.get(self, "schema_version") @property @pulumi.getter def tags(self) -> Optional[Sequence['outputs.SchemaTagsEntry']]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") @property @pulumi.getter def type(self) -> Optional[str]: + """ + The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + """ return pulumi.get(self, "type") + @property + @pulumi.getter(name="versionCreatedDate") + def version_created_date(self) -> Optional[str]: + """ + The date the schema version was created. + """ + return pulumi.get(self, "version_created_date") + class AwaitableGetSchemaResult(GetSchemaResult): # pylint: disable=using-constant-test @@ -86,37 +118,45 @@ def __await__(self): return GetSchemaResult( content=self.content, description=self.description, - id=self.id, + last_modified=self.last_modified, schema_arn=self.schema_arn, schema_version=self.schema_version, tags=self.tags, - type=self.type) + type=self.type, + version_created_date=self.version_created_date) -def get_schema(id: Optional[str] = None, +def get_schema(schema_arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetSchemaResult: """ Resource Type definition for AWS::EventSchemas::Schema + + + :param str schema_arn: The ARN of the schema. """ __args__ = dict() - __args__['id'] = id + __args__['schemaArn'] = schema_arn opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:eventschemas:getSchema', __args__, opts=opts, typ=GetSchemaResult).value return AwaitableGetSchemaResult( content=pulumi.get(__ret__, 'content'), description=pulumi.get(__ret__, 'description'), - id=pulumi.get(__ret__, 'id'), + last_modified=pulumi.get(__ret__, 'last_modified'), schema_arn=pulumi.get(__ret__, 'schema_arn'), schema_version=pulumi.get(__ret__, 'schema_version'), tags=pulumi.get(__ret__, 'tags'), - type=pulumi.get(__ret__, 'type')) + type=pulumi.get(__ret__, 'type'), + version_created_date=pulumi.get(__ret__, 'version_created_date')) @_utilities.lift_output_func(get_schema) -def get_schema_output(id: Optional[pulumi.Input[str]] = None, +def get_schema_output(schema_arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetSchemaResult]: """ Resource Type definition for AWS::EventSchemas::Schema + + + :param str schema_arn: The ARN of the schema. """ ... diff --git a/sdk/python/pulumi_aws_native/eventschemas/registry.py b/sdk/python/pulumi_aws_native/eventschemas/registry.py index 8063a0f61e..51239e8b1e 100644 --- a/sdk/python/pulumi_aws_native/eventschemas/registry.py +++ b/sdk/python/pulumi_aws_native/eventschemas/registry.py @@ -21,6 +21,9 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['RegistryTagsEntryArgs']]]] = None): """ The set of arguments for constructing a Registry resource. + :param pulumi.Input[str] description: A description of the registry to be created. + :param pulumi.Input[str] registry_name: The name of the schema registry. + :param pulumi.Input[Sequence[pulumi.Input['RegistryTagsEntryArgs']]] tags: Tags associated with the resource. """ if description is not None: pulumi.set(__self__, "description", description) @@ -32,6 +35,9 @@ def __init__(__self__, *, @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + A description of the registry to be created. + """ return pulumi.get(self, "description") @description.setter @@ -41,6 +47,9 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="registryName") def registry_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the schema registry. + """ return pulumi.get(self, "registry_name") @registry_name.setter @@ -50,6 +59,9 @@ def registry_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['RegistryTagsEntryArgs']]]]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") @tags.setter @@ -57,12 +69,7 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['RegistryTagsE pulumi.set(self, "tags", value) -warnings.warn("""Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class Registry(pulumi.CustomResource): - warnings.warn("""Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -76,6 +83,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] description: A description of the registry to be created. + :param pulumi.Input[str] registry_name: The name of the schema registry. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RegistryTagsEntryArgs']]]] tags: Tags associated with the resource. """ ... @overload @@ -105,7 +115,6 @@ def _internal_init(__self__, registry_name: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RegistryTagsEntryArgs']]]]] = None, __props__=None): - pulumi.log.warn("""Registry is deprecated: Registry is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") 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') @@ -151,20 +160,32 @@ def get(resource_name: str, @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: + """ + A description of the registry to be created. + """ return pulumi.get(self, "description") @property @pulumi.getter(name="registryArn") def registry_arn(self) -> pulumi.Output[str]: + """ + The ARN of the registry. + """ return pulumi.get(self, "registry_arn") @property @pulumi.getter(name="registryName") def registry_name(self) -> pulumi.Output[Optional[str]]: + """ + The name of the schema registry. + """ return pulumi.get(self, "registry_name") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.RegistryTagsEntry']]]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/eventschemas/schema.py b/sdk/python/pulumi_aws_native/eventschemas/schema.py index 7aba7120b7..73aac12381 100644 --- a/sdk/python/pulumi_aws_native/eventschemas/schema.py +++ b/sdk/python/pulumi_aws_native/eventschemas/schema.py @@ -24,6 +24,12 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['SchemaTagsEntryArgs']]]] = None): """ The set of arguments for constructing a Schema resource. + :param pulumi.Input[str] content: The source of the schema definition. + :param pulumi.Input[str] registry_name: The name of the schema registry. + :param pulumi.Input[str] type: The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + :param pulumi.Input[str] description: A description of the schema. + :param pulumi.Input[str] schema_name: The name of the schema. + :param pulumi.Input[Sequence[pulumi.Input['SchemaTagsEntryArgs']]] tags: Tags associated with the resource. """ pulumi.set(__self__, "content", content) pulumi.set(__self__, "registry_name", registry_name) @@ -38,6 +44,9 @@ def __init__(__self__, *, @property @pulumi.getter def content(self) -> pulumi.Input[str]: + """ + The source of the schema definition. + """ return pulumi.get(self, "content") @content.setter @@ -47,6 +56,9 @@ def content(self, value: pulumi.Input[str]): @property @pulumi.getter(name="registryName") def registry_name(self) -> pulumi.Input[str]: + """ + The name of the schema registry. + """ return pulumi.get(self, "registry_name") @registry_name.setter @@ -56,6 +68,9 @@ def registry_name(self, value: pulumi.Input[str]): @property @pulumi.getter def type(self) -> pulumi.Input[str]: + """ + The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + """ return pulumi.get(self, "type") @type.setter @@ -65,6 +80,9 @@ def type(self, value: pulumi.Input[str]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + A description of the schema. + """ return pulumi.get(self, "description") @description.setter @@ -74,6 +92,9 @@ def description(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="schemaName") def schema_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the schema. + """ return pulumi.get(self, "schema_name") @schema_name.setter @@ -83,6 +104,9 @@ def schema_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SchemaTagsEntryArgs']]]]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") @tags.setter @@ -90,12 +114,7 @@ def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SchemaTagsEnt pulumi.set(self, "tags", value) -warnings.warn("""Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class Schema(pulumi.CustomResource): - warnings.warn("""Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -112,6 +131,12 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] content: The source of the schema definition. + :param pulumi.Input[str] description: A description of the schema. + :param pulumi.Input[str] registry_name: The name of the schema registry. + :param pulumi.Input[str] schema_name: The name of the schema. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SchemaTagsEntryArgs']]]] tags: Tags associated with the resource. + :param pulumi.Input[str] type: The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. """ ... @overload @@ -144,7 +169,6 @@ def _internal_init(__self__, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['SchemaTagsEntryArgs']]]]] = None, type: Optional[pulumi.Input[str]] = None, __props__=None): - pulumi.log.warn("""Schema is deprecated: Schema is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") 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') @@ -165,8 +189,10 @@ def _internal_init(__self__, if type is None and not opts.urn: raise TypeError("Missing required property 'type'") __props__.__dict__["type"] = type + __props__.__dict__["last_modified"] = None __props__.__dict__["schema_arn"] = None __props__.__dict__["schema_version"] = None + __props__.__dict__["version_created_date"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["registry_name", "schema_name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Schema, __self__).__init__( @@ -193,51 +219,93 @@ def get(resource_name: str, __props__.__dict__["content"] = None __props__.__dict__["description"] = None + __props__.__dict__["last_modified"] = None __props__.__dict__["registry_name"] = None __props__.__dict__["schema_arn"] = None __props__.__dict__["schema_name"] = None __props__.__dict__["schema_version"] = None __props__.__dict__["tags"] = None __props__.__dict__["type"] = None + __props__.__dict__["version_created_date"] = None return Schema(resource_name, opts=opts, __props__=__props__) @property @pulumi.getter def content(self) -> pulumi.Output[str]: + """ + The source of the schema definition. + """ return pulumi.get(self, "content") @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: + """ + A description of the schema. + """ return pulumi.get(self, "description") + @property + @pulumi.getter(name="lastModified") + def last_modified(self) -> pulumi.Output[str]: + """ + The last modified time of the schema. + """ + return pulumi.get(self, "last_modified") + @property @pulumi.getter(name="registryName") def registry_name(self) -> pulumi.Output[str]: + """ + The name of the schema registry. + """ return pulumi.get(self, "registry_name") @property @pulumi.getter(name="schemaArn") def schema_arn(self) -> pulumi.Output[str]: + """ + The ARN of the schema. + """ return pulumi.get(self, "schema_arn") @property @pulumi.getter(name="schemaName") def schema_name(self) -> pulumi.Output[Optional[str]]: + """ + The name of the schema. + """ return pulumi.get(self, "schema_name") @property @pulumi.getter(name="schemaVersion") def schema_version(self) -> pulumi.Output[str]: + """ + The version number of the schema. + """ return pulumi.get(self, "schema_version") @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.SchemaTagsEntry']]]: + """ + Tags associated with the resource. + """ return pulumi.get(self, "tags") @property @pulumi.getter def type(self) -> pulumi.Output[str]: + """ + The type of schema. Valid types include OpenApi3 and JSONSchemaDraft4. + """ return pulumi.get(self, "type") + @property + @pulumi.getter(name="versionCreatedDate") + def version_created_date(self) -> pulumi.Output[str]: + """ + The date the schema version was created. + """ + return pulumi.get(self, "version_created_date") + diff --git a/sdk/python/pulumi_aws_native/fis/__init__.py b/sdk/python/pulumi_aws_native/fis/__init__.py index 1e39856430..c622ad081e 100644 --- a/sdk/python/pulumi_aws_native/fis/__init__.py +++ b/sdk/python/pulumi_aws_native/fis/__init__.py @@ -5,7 +5,10 @@ from .. import _utilities import typing # Export this package's modules as members: +from ._enums import * from .experiment_template import * from .get_experiment_template import * +from .get_target_account_configuration import * +from .target_account_configuration import * from ._inputs import * from . import outputs diff --git a/sdk/python/pulumi_aws_native/fis/_enums.py b/sdk/python/pulumi_aws_native/fis/_enums.py new file mode 100644 index 0000000000..8987c8bd13 --- /dev/null +++ b/sdk/python/pulumi_aws_native/fis/_enums.py @@ -0,0 +1,26 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +from enum import Enum + +__all__ = [ + 'ExperimentTemplateExperimentOptionsAccountTargeting', + 'ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode', +] + + +class ExperimentTemplateExperimentOptionsAccountTargeting(str, Enum): + """ + The account targeting setting for the experiment template. + """ + MULTI_ACCOUNT = "multi-account" + SINGLE_ACCOUNT = "single-account" + + +class ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode(str, Enum): + """ + The target resolution failure mode for the experiment template. + """ + FAIL = "fail" + SKIP = "skip" diff --git a/sdk/python/pulumi_aws_native/fis/_inputs.py b/sdk/python/pulumi_aws_native/fis/_inputs.py index 99cccfd2f4..98d68c35a7 100644 --- a/sdk/python/pulumi_aws_native/fis/_inputs.py +++ b/sdk/python/pulumi_aws_native/fis/_inputs.py @@ -8,9 +8,11 @@ import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities +from ._enums import * __all__ = [ 'ExperimentTemplateActionMapArgs', + 'ExperimentTemplateExperimentOptionsArgs', 'ExperimentTemplateLogConfigurationCloudWatchLogsConfigurationPropertiesArgs', 'ExperimentTemplateLogConfigurationS3ConfigurationPropertiesArgs', 'ExperimentTemplateLogConfigurationArgs', @@ -27,6 +29,45 @@ def __init__(__self__): pass +@pulumi.input_type +class ExperimentTemplateExperimentOptionsArgs: + def __init__(__self__, *, + account_targeting: Optional[pulumi.Input['ExperimentTemplateExperimentOptionsAccountTargeting']] = None, + empty_target_resolution_mode: Optional[pulumi.Input['ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode']] = None): + """ + :param pulumi.Input['ExperimentTemplateExperimentOptionsAccountTargeting'] account_targeting: The account targeting setting for the experiment template. + :param pulumi.Input['ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode'] empty_target_resolution_mode: The target resolution failure mode for the experiment template. + """ + if account_targeting is not None: + pulumi.set(__self__, "account_targeting", account_targeting) + if empty_target_resolution_mode is not None: + pulumi.set(__self__, "empty_target_resolution_mode", empty_target_resolution_mode) + + @property + @pulumi.getter(name="accountTargeting") + def account_targeting(self) -> Optional[pulumi.Input['ExperimentTemplateExperimentOptionsAccountTargeting']]: + """ + The account targeting setting for the experiment template. + """ + return pulumi.get(self, "account_targeting") + + @account_targeting.setter + def account_targeting(self, value: Optional[pulumi.Input['ExperimentTemplateExperimentOptionsAccountTargeting']]): + pulumi.set(self, "account_targeting", value) + + @property + @pulumi.getter(name="emptyTargetResolutionMode") + def empty_target_resolution_mode(self) -> Optional[pulumi.Input['ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode']]: + """ + The target resolution failure mode for the experiment template. + """ + return pulumi.get(self, "empty_target_resolution_mode") + + @empty_target_resolution_mode.setter + def empty_target_resolution_mode(self, value: Optional[pulumi.Input['ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode']]): + pulumi.set(self, "empty_target_resolution_mode", value) + + @pulumi.input_type class ExperimentTemplateLogConfigurationCloudWatchLogsConfigurationPropertiesArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/fis/experiment_template.py b/sdk/python/pulumi_aws_native/fis/experiment_template.py index 1340612bf0..ab2d525b33 100644 --- a/sdk/python/pulumi_aws_native/fis/experiment_template.py +++ b/sdk/python/pulumi_aws_native/fis/experiment_template.py @@ -9,6 +9,7 @@ from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs +from ._enums import * from ._inputs import * __all__ = ['ExperimentTemplateArgs', 'ExperimentTemplate'] @@ -22,6 +23,7 @@ def __init__(__self__, *, tags: Any, targets: pulumi.Input['ExperimentTemplateTargetMapArgs'], actions: Optional[pulumi.Input['ExperimentTemplateActionMapArgs']] = None, + experiment_options: Optional[pulumi.Input['ExperimentTemplateExperimentOptionsArgs']] = None, log_configuration: Optional[pulumi.Input['ExperimentTemplateLogConfigurationArgs']] = None): """ The set of arguments for constructing a ExperimentTemplate resource. @@ -33,6 +35,8 @@ def __init__(__self__, *, pulumi.set(__self__, "targets", targets) if actions is not None: pulumi.set(__self__, "actions", actions) + if experiment_options is not None: + pulumi.set(__self__, "experiment_options", experiment_options) if log_configuration is not None: pulumi.set(__self__, "log_configuration", log_configuration) @@ -90,6 +94,15 @@ def actions(self) -> Optional[pulumi.Input['ExperimentTemplateActionMapArgs']]: def actions(self, value: Optional[pulumi.Input['ExperimentTemplateActionMapArgs']]): pulumi.set(self, "actions", value) + @property + @pulumi.getter(name="experimentOptions") + def experiment_options(self) -> Optional[pulumi.Input['ExperimentTemplateExperimentOptionsArgs']]: + return pulumi.get(self, "experiment_options") + + @experiment_options.setter + def experiment_options(self, value: Optional[pulumi.Input['ExperimentTemplateExperimentOptionsArgs']]): + pulumi.set(self, "experiment_options", value) + @property @pulumi.getter(name="logConfiguration") def log_configuration(self) -> Optional[pulumi.Input['ExperimentTemplateLogConfigurationArgs']]: @@ -107,6 +120,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, actions: Optional[pulumi.Input[pulumi.InputType['ExperimentTemplateActionMapArgs']]] = None, description: Optional[pulumi.Input[str]] = None, + experiment_options: Optional[pulumi.Input[pulumi.InputType['ExperimentTemplateExperimentOptionsArgs']]] = None, log_configuration: Optional[pulumi.Input[pulumi.InputType['ExperimentTemplateLogConfigurationArgs']]] = None, role_arn: Optional[pulumi.Input[str]] = None, stop_conditions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExperimentTemplateStopConditionArgs']]]]] = None, @@ -145,6 +159,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, actions: Optional[pulumi.Input[pulumi.InputType['ExperimentTemplateActionMapArgs']]] = None, description: Optional[pulumi.Input[str]] = None, + experiment_options: Optional[pulumi.Input[pulumi.InputType['ExperimentTemplateExperimentOptionsArgs']]] = None, log_configuration: Optional[pulumi.Input[pulumi.InputType['ExperimentTemplateLogConfigurationArgs']]] = None, role_arn: Optional[pulumi.Input[str]] = None, stop_conditions: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExperimentTemplateStopConditionArgs']]]]] = None, @@ -163,6 +178,7 @@ def _internal_init(__self__, if description is None and not opts.urn: raise TypeError("Missing required property 'description'") __props__.__dict__["description"] = description + __props__.__dict__["experiment_options"] = experiment_options __props__.__dict__["log_configuration"] = log_configuration if role_arn is None and not opts.urn: raise TypeError("Missing required property 'role_arn'") @@ -202,6 +218,7 @@ def get(resource_name: str, __props__.__dict__["actions"] = None __props__.__dict__["description"] = None + __props__.__dict__["experiment_options"] = None __props__.__dict__["log_configuration"] = None __props__.__dict__["role_arn"] = None __props__.__dict__["stop_conditions"] = None @@ -219,6 +236,11 @@ def actions(self) -> pulumi.Output[Optional['outputs.ExperimentTemplateActionMap def description(self) -> pulumi.Output[str]: return pulumi.get(self, "description") + @property + @pulumi.getter(name="experimentOptions") + def experiment_options(self) -> pulumi.Output[Optional['outputs.ExperimentTemplateExperimentOptions']]: + return pulumi.get(self, "experiment_options") + @property @pulumi.getter(name="logConfiguration") def log_configuration(self) -> pulumi.Output[Optional['outputs.ExperimentTemplateLogConfiguration']]: diff --git a/sdk/python/pulumi_aws_native/fis/get_experiment_template.py b/sdk/python/pulumi_aws_native/fis/get_experiment_template.py index 748b91cc15..bc070d3f65 100644 --- a/sdk/python/pulumi_aws_native/fis/get_experiment_template.py +++ b/sdk/python/pulumi_aws_native/fis/get_experiment_template.py @@ -9,6 +9,7 @@ from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs +from ._enums import * __all__ = [ 'GetExperimentTemplateResult', @@ -19,13 +20,16 @@ @pulumi.output_type class GetExperimentTemplateResult: - def __init__(__self__, actions=None, description=None, id=None, log_configuration=None, role_arn=None, stop_conditions=None, targets=None): + def __init__(__self__, actions=None, description=None, experiment_options=None, id=None, log_configuration=None, role_arn=None, stop_conditions=None, targets=None): if actions and not isinstance(actions, dict): raise TypeError("Expected argument 'actions' to be a dict") pulumi.set(__self__, "actions", actions) if description and not isinstance(description, str): raise TypeError("Expected argument 'description' to be a str") pulumi.set(__self__, "description", description) + if experiment_options and not isinstance(experiment_options, dict): + raise TypeError("Expected argument 'experiment_options' to be a dict") + pulumi.set(__self__, "experiment_options", experiment_options) if id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) @@ -52,6 +56,11 @@ def actions(self) -> Optional['outputs.ExperimentTemplateActionMap']: def description(self) -> Optional[str]: return pulumi.get(self, "description") + @property + @pulumi.getter(name="experimentOptions") + def experiment_options(self) -> Optional['outputs.ExperimentTemplateExperimentOptions']: + return pulumi.get(self, "experiment_options") + @property @pulumi.getter def id(self) -> Optional[str]: @@ -86,6 +95,7 @@ def __await__(self): return GetExperimentTemplateResult( actions=self.actions, description=self.description, + experiment_options=self.experiment_options, id=self.id, log_configuration=self.log_configuration, role_arn=self.role_arn, @@ -106,6 +116,7 @@ def get_experiment_template(id: Optional[str] = None, return AwaitableGetExperimentTemplateResult( actions=pulumi.get(__ret__, 'actions'), description=pulumi.get(__ret__, 'description'), + experiment_options=pulumi.get(__ret__, 'experiment_options'), id=pulumi.get(__ret__, 'id'), log_configuration=pulumi.get(__ret__, 'log_configuration'), role_arn=pulumi.get(__ret__, 'role_arn'), diff --git a/sdk/python/pulumi_aws_native/fis/get_target_account_configuration.py b/sdk/python/pulumi_aws_native/fis/get_target_account_configuration.py new file mode 100644 index 0000000000..2c449b8837 --- /dev/null +++ b/sdk/python/pulumi_aws_native/fis/get_target_account_configuration.py @@ -0,0 +1,74 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = [ + 'GetTargetAccountConfigurationResult', + 'AwaitableGetTargetAccountConfigurationResult', + 'get_target_account_configuration', + 'get_target_account_configuration_output', +] + +@pulumi.output_type +class GetTargetAccountConfigurationResult: + def __init__(__self__, description=None, role_arn=None): + if description and not isinstance(description, str): + raise TypeError("Expected argument 'description' to be a str") + pulumi.set(__self__, "description", description) + if role_arn and not isinstance(role_arn, str): + raise TypeError("Expected argument 'role_arn' to be a str") + pulumi.set(__self__, "role_arn", role_arn) + + @property + @pulumi.getter + def description(self) -> Optional[str]: + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> Optional[str]: + return pulumi.get(self, "role_arn") + + +class AwaitableGetTargetAccountConfigurationResult(GetTargetAccountConfigurationResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetTargetAccountConfigurationResult( + description=self.description, + role_arn=self.role_arn) + + +def get_target_account_configuration(account_id: Optional[str] = None, + experiment_template_id: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetTargetAccountConfigurationResult: + """ + Resource schema for AWS::FIS::TargetAccountConfiguration + """ + __args__ = dict() + __args__['accountId'] = account_id + __args__['experimentTemplateId'] = experiment_template_id + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:fis:getTargetAccountConfiguration', __args__, opts=opts, typ=GetTargetAccountConfigurationResult).value + + return AwaitableGetTargetAccountConfigurationResult( + description=pulumi.get(__ret__, 'description'), + role_arn=pulumi.get(__ret__, 'role_arn')) + + +@_utilities.lift_output_func(get_target_account_configuration) +def get_target_account_configuration_output(account_id: Optional[pulumi.Input[str]] = None, + experiment_template_id: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetTargetAccountConfigurationResult]: + """ + Resource schema for AWS::FIS::TargetAccountConfiguration + """ + ... diff --git a/sdk/python/pulumi_aws_native/fis/outputs.py b/sdk/python/pulumi_aws_native/fis/outputs.py index 0bd7a29729..4116989e09 100644 --- a/sdk/python/pulumi_aws_native/fis/outputs.py +++ b/sdk/python/pulumi_aws_native/fis/outputs.py @@ -9,9 +9,11 @@ from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs +from ._enums import * __all__ = [ 'ExperimentTemplateActionMap', + 'ExperimentTemplateExperimentOptions', 'ExperimentTemplateLogConfiguration', 'ExperimentTemplateLogConfigurationCloudWatchLogsConfigurationProperties', 'ExperimentTemplateLogConfigurationS3ConfigurationProperties', @@ -31,6 +33,56 @@ def __init__(__self__): pass +@pulumi.output_type +class ExperimentTemplateExperimentOptions(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "accountTargeting": + suggest = "account_targeting" + elif key == "emptyTargetResolutionMode": + suggest = "empty_target_resolution_mode" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ExperimentTemplateExperimentOptions. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ExperimentTemplateExperimentOptions.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ExperimentTemplateExperimentOptions.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + account_targeting: Optional['ExperimentTemplateExperimentOptionsAccountTargeting'] = None, + empty_target_resolution_mode: Optional['ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode'] = None): + """ + :param 'ExperimentTemplateExperimentOptionsAccountTargeting' account_targeting: The account targeting setting for the experiment template. + :param 'ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode' empty_target_resolution_mode: The target resolution failure mode for the experiment template. + """ + if account_targeting is not None: + pulumi.set(__self__, "account_targeting", account_targeting) + if empty_target_resolution_mode is not None: + pulumi.set(__self__, "empty_target_resolution_mode", empty_target_resolution_mode) + + @property + @pulumi.getter(name="accountTargeting") + def account_targeting(self) -> Optional['ExperimentTemplateExperimentOptionsAccountTargeting']: + """ + The account targeting setting for the experiment template. + """ + return pulumi.get(self, "account_targeting") + + @property + @pulumi.getter(name="emptyTargetResolutionMode") + def empty_target_resolution_mode(self) -> Optional['ExperimentTemplateExperimentOptionsEmptyTargetResolutionMode']: + """ + The target resolution failure mode for the experiment template. + """ + return pulumi.get(self, "empty_target_resolution_mode") + + @pulumi.output_type class ExperimentTemplateLogConfiguration(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/fis/target_account_configuration.py b/sdk/python/pulumi_aws_native/fis/target_account_configuration.py new file mode 100644 index 0000000000..64f56e5eb5 --- /dev/null +++ b/sdk/python/pulumi_aws_native/fis/target_account_configuration.py @@ -0,0 +1,179 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = ['TargetAccountConfigurationArgs', 'TargetAccountConfiguration'] + +@pulumi.input_type +class TargetAccountConfigurationArgs: + def __init__(__self__, *, + account_id: pulumi.Input[str], + experiment_template_id: pulumi.Input[str], + role_arn: pulumi.Input[str], + description: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a TargetAccountConfiguration resource. + """ + pulumi.set(__self__, "account_id", account_id) + pulumi.set(__self__, "experiment_template_id", experiment_template_id) + pulumi.set(__self__, "role_arn", role_arn) + if description is not None: + pulumi.set(__self__, "description", description) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "account_id") + + @account_id.setter + def account_id(self, value: pulumi.Input[str]): + pulumi.set(self, "account_id", value) + + @property + @pulumi.getter(name="experimentTemplateId") + def experiment_template_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "experiment_template_id") + + @experiment_template_id.setter + def experiment_template_id(self, value: pulumi.Input[str]): + pulumi.set(self, "experiment_template_id", value) + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> pulumi.Input[str]: + return pulumi.get(self, "role_arn") + + @role_arn.setter + def role_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "role_arn", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + +class TargetAccountConfiguration(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + account_id: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + experiment_template_id: Optional[pulumi.Input[str]] = None, + role_arn: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Resource schema for AWS::FIS::TargetAccountConfiguration + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: TargetAccountConfigurationArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource schema for AWS::FIS::TargetAccountConfiguration + + :param str resource_name: The name of the resource. + :param TargetAccountConfigurationArgs 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(TargetAccountConfigurationArgs, 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, + account_id: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + experiment_template_id: Optional[pulumi.Input[str]] = None, + role_arn: 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__ = TargetAccountConfigurationArgs.__new__(TargetAccountConfigurationArgs) + + if account_id is None and not opts.urn: + raise TypeError("Missing required property 'account_id'") + __props__.__dict__["account_id"] = account_id + __props__.__dict__["description"] = description + if experiment_template_id is None and not opts.urn: + raise TypeError("Missing required property 'experiment_template_id'") + __props__.__dict__["experiment_template_id"] = experiment_template_id + if role_arn is None and not opts.urn: + raise TypeError("Missing required property 'role_arn'") + __props__.__dict__["role_arn"] = role_arn + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["account_id", "experiment_template_id"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(TargetAccountConfiguration, __self__).__init__( + 'aws-native:fis:TargetAccountConfiguration', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'TargetAccountConfiguration': + """ + Get an existing TargetAccountConfiguration 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__ = TargetAccountConfigurationArgs.__new__(TargetAccountConfigurationArgs) + + __props__.__dict__["account_id"] = None + __props__.__dict__["description"] = None + __props__.__dict__["experiment_template_id"] = None + __props__.__dict__["role_arn"] = None + return TargetAccountConfiguration(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="accountId") + def account_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "account_id") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="experimentTemplateId") + def experiment_template_id(self) -> pulumi.Output[str]: + return pulumi.get(self, "experiment_template_id") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "role_arn") + diff --git a/sdk/python/pulumi_aws_native/gamelift/_enums.py b/sdk/python/pulumi_aws_native/gamelift/_enums.py index 60613976a9..bd3aeb4942 100644 --- a/sdk/python/pulumi_aws_native/gamelift/_enums.py +++ b/sdk/python/pulumi_aws_native/gamelift/_enums.py @@ -7,6 +7,7 @@ __all__ = [ 'AliasRoutingStrategyType', 'BuildOperatingSystem', + 'FleetApplyCapacity', 'FleetCertificateConfigurationCertificateType', 'FleetComputeType', 'FleetInstanceRoleCredentialsProvider', @@ -47,6 +48,14 @@ class BuildOperatingSystem(str, Enum): WINDOWS2016 = "WINDOWS_2016" +class FleetApplyCapacity(str, Enum): + """ + ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + """ + ON_UPDATE = "ON_UPDATE" + ON_CREATE_AND_UPDATE = "ON_CREATE_AND_UPDATE" + + class FleetCertificateConfigurationCertificateType(str, Enum): DISABLED = "DISABLED" GENERATED = "GENERATED" diff --git a/sdk/python/pulumi_aws_native/gamelift/fleet.py b/sdk/python/pulumi_aws_native/gamelift/fleet.py index 6a20420e19..ab7ed16541 100644 --- a/sdk/python/pulumi_aws_native/gamelift/fleet.py +++ b/sdk/python/pulumi_aws_native/gamelift/fleet.py @@ -18,6 +18,7 @@ class FleetArgs: def __init__(__self__, *, anywhere_configuration: Optional[pulumi.Input['FleetAnywhereConfigurationArgs']] = None, + apply_capacity: Optional[pulumi.Input['FleetApplyCapacity']] = None, build_id: Optional[pulumi.Input[str]] = None, certificate_configuration: Optional[pulumi.Input['FleetCertificateConfigurationArgs']] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, @@ -46,6 +47,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a Fleet resource. :param pulumi.Input['FleetAnywhereConfigurationArgs'] anywhere_configuration: Configuration for Anywhere fleet. + :param pulumi.Input['FleetApplyCapacity'] apply_capacity: ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. :param pulumi.Input[str] build_id: A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. :param pulumi.Input['FleetCertificateConfigurationArgs'] certificate_configuration: Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created. :param pulumi.Input['FleetComputeType'] compute_type: ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. @@ -77,6 +79,8 @@ def __init__(__self__, *, """ if anywhere_configuration is not None: pulumi.set(__self__, "anywhere_configuration", anywhere_configuration) + if apply_capacity is not None: + pulumi.set(__self__, "apply_capacity", apply_capacity) if build_id is not None: pulumi.set(__self__, "build_id", build_id) if certificate_configuration is not None: @@ -140,6 +144,18 @@ def anywhere_configuration(self) -> Optional[pulumi.Input['FleetAnywhereConfigur def anywhere_configuration(self, value: Optional[pulumi.Input['FleetAnywhereConfigurationArgs']]): pulumi.set(self, "anywhere_configuration", value) + @property + @pulumi.getter(name="applyCapacity") + def apply_capacity(self) -> Optional[pulumi.Input['FleetApplyCapacity']]: + """ + ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + """ + return pulumi.get(self, "apply_capacity") + + @apply_capacity.setter + def apply_capacity(self, value: Optional[pulumi.Input['FleetApplyCapacity']]): + pulumi.set(self, "apply_capacity", value) + @property @pulumi.getter(name="buildId") def build_id(self) -> Optional[pulumi.Input[str]]: @@ -448,6 +464,7 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, anywhere_configuration: Optional[pulumi.Input[pulumi.InputType['FleetAnywhereConfigurationArgs']]] = None, + apply_capacity: Optional[pulumi.Input['FleetApplyCapacity']] = None, build_id: Optional[pulumi.Input[str]] = None, certificate_configuration: Optional[pulumi.Input[pulumi.InputType['FleetCertificateConfigurationArgs']]] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, @@ -480,6 +497,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[pulumi.InputType['FleetAnywhereConfigurationArgs']] anywhere_configuration: Configuration for Anywhere fleet. + :param pulumi.Input['FleetApplyCapacity'] apply_capacity: ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. :param pulumi.Input[str] build_id: A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created. :param pulumi.Input[pulumi.InputType['FleetCertificateConfigurationArgs']] certificate_configuration: Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created. :param pulumi.Input['FleetComputeType'] compute_type: ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. @@ -534,6 +552,7 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, anywhere_configuration: Optional[pulumi.Input[pulumi.InputType['FleetAnywhereConfigurationArgs']]] = None, + apply_capacity: Optional[pulumi.Input['FleetApplyCapacity']] = None, build_id: Optional[pulumi.Input[str]] = None, certificate_configuration: Optional[pulumi.Input[pulumi.InputType['FleetCertificateConfigurationArgs']]] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, @@ -569,6 +588,7 @@ def _internal_init(__self__, __props__ = FleetArgs.__new__(FleetArgs) __props__.__dict__["anywhere_configuration"] = anywhere_configuration + __props__.__dict__["apply_capacity"] = apply_capacity __props__.__dict__["build_id"] = build_id __props__.__dict__["certificate_configuration"] = certificate_configuration __props__.__dict__["compute_type"] = compute_type @@ -595,7 +615,7 @@ def _internal_init(__self__, __props__.__dict__["server_launch_parameters"] = server_launch_parameters __props__.__dict__["server_launch_path"] = server_launch_path __props__.__dict__["fleet_id"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["build_id", "certificate_configuration", "compute_type", "ec2_instance_type", "fleet_type", "instance_role_arn", "instance_role_credentials_provider", "log_paths[*]", "peer_vpc_aws_account_id", "peer_vpc_id", "script_id", "server_launch_parameters", "server_launch_path"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["apply_capacity", "build_id", "certificate_configuration", "compute_type", "ec2_instance_type", "fleet_type", "instance_role_arn", "instance_role_credentials_provider", "log_paths[*]", "peer_vpc_aws_account_id", "peer_vpc_id", "script_id", "server_launch_parameters", "server_launch_path"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Fleet, __self__).__init__( 'aws-native:gamelift:Fleet', @@ -620,6 +640,7 @@ def get(resource_name: str, __props__ = FleetArgs.__new__(FleetArgs) __props__.__dict__["anywhere_configuration"] = None + __props__.__dict__["apply_capacity"] = None __props__.__dict__["build_id"] = None __props__.__dict__["certificate_configuration"] = None __props__.__dict__["compute_type"] = None @@ -656,6 +677,14 @@ def anywhere_configuration(self) -> pulumi.Output[Optional['outputs.FleetAnywher """ return pulumi.get(self, "anywhere_configuration") + @property + @pulumi.getter(name="applyCapacity") + def apply_capacity(self) -> pulumi.Output[Optional['FleetApplyCapacity']]: + """ + ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. + """ + return pulumi.get(self, "apply_capacity") + @property @pulumi.getter(name="buildId") def build_id(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/identitystore/get_group_membership.py b/sdk/python/pulumi_aws_native/identitystore/get_group_membership.py index 91a4832b8c..a92e5bbf07 100644 --- a/sdk/python/pulumi_aws_native/identitystore/get_group_membership.py +++ b/sdk/python/pulumi_aws_native/identitystore/get_group_membership.py @@ -8,7 +8,6 @@ import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities -from . import outputs __all__ = [ 'GetGroupMembershipResult', @@ -19,33 +18,11 @@ @pulumi.output_type class GetGroupMembershipResult: - def __init__(__self__, group_id=None, member_id=None, membership_id=None): - if group_id and not isinstance(group_id, str): - raise TypeError("Expected argument 'group_id' to be a str") - pulumi.set(__self__, "group_id", group_id) - if member_id and not isinstance(member_id, dict): - raise TypeError("Expected argument 'member_id' to be a dict") - pulumi.set(__self__, "member_id", member_id) + def __init__(__self__, membership_id=None): if membership_id and not isinstance(membership_id, str): raise TypeError("Expected argument 'membership_id' to be a str") pulumi.set(__self__, "membership_id", membership_id) - @property - @pulumi.getter(name="groupId") - def group_id(self) -> Optional[str]: - """ - The unique identifier for a group in the identity store. - """ - return pulumi.get(self, "group_id") - - @property - @pulumi.getter(name="memberId") - def member_id(self) -> Optional['outputs.GroupMembershipMemberId']: - """ - An object containing the identifier of a group member. - """ - return pulumi.get(self, "member_id") - @property @pulumi.getter(name="membershipId") def membership_id(self) -> Optional[str]: @@ -61,8 +38,6 @@ def __await__(self): if False: yield self return GetGroupMembershipResult( - group_id=self.group_id, - member_id=self.member_id, membership_id=self.membership_id) @@ -83,8 +58,6 @@ def get_group_membership(identity_store_id: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:identitystore:getGroupMembership', __args__, opts=opts, typ=GetGroupMembershipResult).value return AwaitableGetGroupMembershipResult( - group_id=pulumi.get(__ret__, 'group_id'), - member_id=pulumi.get(__ret__, 'member_id'), membership_id=pulumi.get(__ret__, 'membership_id')) diff --git a/sdk/python/pulumi_aws_native/identitystore/group_membership.py b/sdk/python/pulumi_aws_native/identitystore/group_membership.py index 26f6b9c986..4000c4739d 100644 --- a/sdk/python/pulumi_aws_native/identitystore/group_membership.py +++ b/sdk/python/pulumi_aws_native/identitystore/group_membership.py @@ -130,7 +130,7 @@ def _internal_init(__self__, raise TypeError("Missing required property 'member_id'") __props__.__dict__["member_id"] = member_id __props__.__dict__["membership_id"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["identity_store_id"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["group_id", "identity_store_id", "member_id"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(GroupMembership, __self__).__init__( 'aws-native:identitystore:GroupMembership', diff --git a/sdk/python/pulumi_aws_native/imagebuilder/__init__.py b/sdk/python/pulumi_aws_native/imagebuilder/__init__.py index a720d50c6a..0332e267b8 100644 --- a/sdk/python/pulumi_aws_native/imagebuilder/__init__.py +++ b/sdk/python/pulumi_aws_native/imagebuilder/__init__.py @@ -17,10 +17,12 @@ from .get_image_recipe import * from .get_infrastructure_configuration import * from .get_lifecycle_policy import * +from .get_workflow import * from .image import * from .image_pipeline import * from .image_recipe import * from .infrastructure_configuration import * from .lifecycle_policy import * +from .workflow import * from ._inputs import * from . import outputs diff --git a/sdk/python/pulumi_aws_native/imagebuilder/_enums.py b/sdk/python/pulumi_aws_native/imagebuilder/_enums.py index ef10269c6d..c43b536e9b 100644 --- a/sdk/python/pulumi_aws_native/imagebuilder/_enums.py +++ b/sdk/python/pulumi_aws_native/imagebuilder/_enums.py @@ -14,13 +14,16 @@ 'DistributionConfigurationTargetContainerRepositoryService', 'ImagePipelineSchedulePipelineExecutionStartCondition', 'ImagePipelineStatus', + 'ImagePipelineWorkflowConfigurationOnFailure', 'ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType', + 'ImageWorkflowConfigurationOnFailure', 'InfrastructureConfigurationInstanceMetadataOptionsHttpTokens', 'LifecyclePolicyActionType', 'LifecyclePolicyFilterType', 'LifecyclePolicyResourceType', 'LifecyclePolicyStatus', 'LifecyclePolicyTimeUnit', + 'WorkflowType', ] @@ -98,6 +101,14 @@ class ImagePipelineStatus(str, Enum): ENABLED = "ENABLED" +class ImagePipelineWorkflowConfigurationOnFailure(str, Enum): + """ + Define execution decision in case of workflow failure + """ + CONTINUE_ = "CONTINUE" + ABORT = "ABORT" + + class ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType(str, Enum): """ Use to override the device's volume type. @@ -111,6 +122,14 @@ class ImageRecipeEbsInstanceBlockDeviceSpecificationVolumeType(str, Enum): ST1 = "st1" +class ImageWorkflowConfigurationOnFailure(str, Enum): + """ + Define execution decision in case of workflow failure + """ + CONTINUE_ = "CONTINUE" + ABORT = "ABORT" + + class InfrastructureConfigurationInstanceMetadataOptionsHttpTokens(str, Enum): """ Indicates whether a signed token header is required for instance metadata retrieval requests. The values affect the response as follows: @@ -160,3 +179,12 @@ class LifecyclePolicyTimeUnit(str, Enum): WEEKS = "WEEKS" MONTHS = "MONTHS" YEARS = "YEARS" + + +class WorkflowType(str, Enum): + """ + The type of the workflow denotes whether the workflow is used to build, test, or distribute. + """ + BUILD = "BUILD" + TEST = "TEST" + DISTRIBUTION = "DISTRIBUTION" diff --git a/sdk/python/pulumi_aws_native/imagebuilder/_inputs.py b/sdk/python/pulumi_aws_native/imagebuilder/_inputs.py index b15d710bd1..79c5fa4afb 100644 --- a/sdk/python/pulumi_aws_native/imagebuilder/_inputs.py +++ b/sdk/python/pulumi_aws_native/imagebuilder/_inputs.py @@ -31,6 +31,8 @@ 'ImagePipelineImageScanningConfigurationArgs', 'ImagePipelineImageTestsConfigurationArgs', 'ImagePipelineScheduleArgs', + 'ImagePipelineWorkflowConfigurationArgs', + 'ImagePipelineWorkflowParameterArgs', 'ImageRecipeAdditionalInstanceConfigurationArgs', 'ImageRecipeComponentConfigurationArgs', 'ImageRecipeComponentParameterArgs', @@ -39,6 +41,8 @@ 'ImageRecipeSystemsManagerAgentArgs', 'ImageScanningConfigurationArgs', 'ImageTestsConfigurationArgs', + 'ImageWorkflowConfigurationArgs', + 'ImageWorkflowParameterArgs', 'InfrastructureConfigurationInstanceMetadataOptionsArgs', 'InfrastructureConfigurationLoggingArgs', 'InfrastructureConfigurationS3LogsArgs', @@ -1206,6 +1210,110 @@ def schedule_expression(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "schedule_expression", value) +@pulumi.input_type +class ImagePipelineWorkflowConfigurationArgs: + def __init__(__self__, *, + on_failure: Optional[pulumi.Input['ImagePipelineWorkflowConfigurationOnFailure']] = None, + parallel_group: Optional[pulumi.Input[str]] = None, + parameters: Optional[pulumi.Input[Sequence[pulumi.Input['ImagePipelineWorkflowParameterArgs']]]] = None, + workflow_arn: Optional[pulumi.Input[str]] = None): + """ + The workflow configuration of the image + :param pulumi.Input['ImagePipelineWorkflowConfigurationOnFailure'] on_failure: Define execution decision in case of workflow failure + :param pulumi.Input[str] parallel_group: The parallel group name + :param pulumi.Input[Sequence[pulumi.Input['ImagePipelineWorkflowParameterArgs']]] parameters: The parameters associated with the workflow + :param pulumi.Input[str] workflow_arn: The Amazon Resource Name (ARN) of the workflow + """ + if on_failure is not None: + pulumi.set(__self__, "on_failure", on_failure) + if parallel_group is not None: + pulumi.set(__self__, "parallel_group", parallel_group) + if parameters is not None: + pulumi.set(__self__, "parameters", parameters) + if workflow_arn is not None: + pulumi.set(__self__, "workflow_arn", workflow_arn) + + @property + @pulumi.getter(name="onFailure") + def on_failure(self) -> Optional[pulumi.Input['ImagePipelineWorkflowConfigurationOnFailure']]: + """ + Define execution decision in case of workflow failure + """ + return pulumi.get(self, "on_failure") + + @on_failure.setter + def on_failure(self, value: Optional[pulumi.Input['ImagePipelineWorkflowConfigurationOnFailure']]): + pulumi.set(self, "on_failure", value) + + @property + @pulumi.getter(name="parallelGroup") + def parallel_group(self) -> Optional[pulumi.Input[str]]: + """ + The parallel group name + """ + return pulumi.get(self, "parallel_group") + + @parallel_group.setter + def parallel_group(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "parallel_group", value) + + @property + @pulumi.getter + def parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ImagePipelineWorkflowParameterArgs']]]]: + """ + The parameters associated with the workflow + """ + return pulumi.get(self, "parameters") + + @parameters.setter + def parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ImagePipelineWorkflowParameterArgs']]]]): + pulumi.set(self, "parameters", value) + + @property + @pulumi.getter(name="workflowArn") + def workflow_arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) of the workflow + """ + return pulumi.get(self, "workflow_arn") + + @workflow_arn.setter + def workflow_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "workflow_arn", value) + + +@pulumi.input_type +class ImagePipelineWorkflowParameterArgs: + def __init__(__self__, *, + name: Optional[pulumi.Input[str]] = None, + value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + A parameter associated with the workflow + """ + if name is not None: + pulumi.set(__self__, "name", name) + if value is not None: + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def value(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "value", value) + + @pulumi.input_type class ImageRecipeAdditionalInstanceConfigurationArgs: def __init__(__self__, *, @@ -1636,6 +1744,110 @@ def timeout_minutes(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "timeout_minutes", value) +@pulumi.input_type +class ImageWorkflowConfigurationArgs: + def __init__(__self__, *, + on_failure: Optional[pulumi.Input['ImageWorkflowConfigurationOnFailure']] = None, + parallel_group: Optional[pulumi.Input[str]] = None, + parameters: Optional[pulumi.Input[Sequence[pulumi.Input['ImageWorkflowParameterArgs']]]] = None, + workflow_arn: Optional[pulumi.Input[str]] = None): + """ + The workflow configuration of the image + :param pulumi.Input['ImageWorkflowConfigurationOnFailure'] on_failure: Define execution decision in case of workflow failure + :param pulumi.Input[str] parallel_group: The parallel group name + :param pulumi.Input[Sequence[pulumi.Input['ImageWorkflowParameterArgs']]] parameters: The parameters associated with the workflow + :param pulumi.Input[str] workflow_arn: The Amazon Resource Name (ARN) of the workflow + """ + if on_failure is not None: + pulumi.set(__self__, "on_failure", on_failure) + if parallel_group is not None: + pulumi.set(__self__, "parallel_group", parallel_group) + if parameters is not None: + pulumi.set(__self__, "parameters", parameters) + if workflow_arn is not None: + pulumi.set(__self__, "workflow_arn", workflow_arn) + + @property + @pulumi.getter(name="onFailure") + def on_failure(self) -> Optional[pulumi.Input['ImageWorkflowConfigurationOnFailure']]: + """ + Define execution decision in case of workflow failure + """ + return pulumi.get(self, "on_failure") + + @on_failure.setter + def on_failure(self, value: Optional[pulumi.Input['ImageWorkflowConfigurationOnFailure']]): + pulumi.set(self, "on_failure", value) + + @property + @pulumi.getter(name="parallelGroup") + def parallel_group(self) -> Optional[pulumi.Input[str]]: + """ + The parallel group name + """ + return pulumi.get(self, "parallel_group") + + @parallel_group.setter + def parallel_group(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "parallel_group", value) + + @property + @pulumi.getter + def parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ImageWorkflowParameterArgs']]]]: + """ + The parameters associated with the workflow + """ + return pulumi.get(self, "parameters") + + @parameters.setter + def parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ImageWorkflowParameterArgs']]]]): + pulumi.set(self, "parameters", value) + + @property + @pulumi.getter(name="workflowArn") + def workflow_arn(self) -> Optional[pulumi.Input[str]]: + """ + The Amazon Resource Name (ARN) of the workflow + """ + return pulumi.get(self, "workflow_arn") + + @workflow_arn.setter + def workflow_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "workflow_arn", value) + + +@pulumi.input_type +class ImageWorkflowParameterArgs: + def __init__(__self__, *, + name: Optional[pulumi.Input[str]] = None, + value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + A parameter associated with the workflow + """ + if name is not None: + pulumi.set(__self__, "name", name) + if value is not None: + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def value(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "value") + + @value.setter + def value(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "value", value) + + @pulumi.input_type class InfrastructureConfigurationInstanceMetadataOptionsArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/imagebuilder/get_image.py b/sdk/python/pulumi_aws_native/imagebuilder/get_image.py index f3dfbbe766..0f1401c4b7 100644 --- a/sdk/python/pulumi_aws_native/imagebuilder/get_image.py +++ b/sdk/python/pulumi_aws_native/imagebuilder/get_image.py @@ -18,10 +18,13 @@ @pulumi.output_type class GetImageResult: - def __init__(__self__, arn=None, image_id=None, image_uri=None, name=None): + def __init__(__self__, arn=None, execution_role=None, image_id=None, image_uri=None, name=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) + if execution_role and not isinstance(execution_role, str): + raise TypeError("Expected argument 'execution_role' to be a str") + pulumi.set(__self__, "execution_role", execution_role) if image_id and not isinstance(image_id, str): raise TypeError("Expected argument 'image_id' to be a str") pulumi.set(__self__, "image_id", image_id) @@ -40,6 +43,14 @@ def arn(self) -> Optional[str]: """ return pulumi.get(self, "arn") + @property + @pulumi.getter(name="executionRole") + def execution_role(self) -> Optional[str]: + """ + The execution role name/ARN for the image build, if provided + """ + return pulumi.get(self, "execution_role") + @property @pulumi.getter(name="imageId") def image_id(self) -> Optional[str]: @@ -72,6 +83,7 @@ def __await__(self): yield self return GetImageResult( arn=self.arn, + execution_role=self.execution_role, image_id=self.image_id, image_uri=self.image_uri, name=self.name) @@ -92,6 +104,7 @@ def get_image(arn: Optional[str] = None, return AwaitableGetImageResult( arn=pulumi.get(__ret__, 'arn'), + execution_role=pulumi.get(__ret__, 'execution_role'), image_id=pulumi.get(__ret__, 'image_id'), image_uri=pulumi.get(__ret__, 'image_uri'), name=pulumi.get(__ret__, 'name')) diff --git a/sdk/python/pulumi_aws_native/imagebuilder/get_image_pipeline.py b/sdk/python/pulumi_aws_native/imagebuilder/get_image_pipeline.py index 9e39927ead..4c139c7d7f 100644 --- a/sdk/python/pulumi_aws_native/imagebuilder/get_image_pipeline.py +++ b/sdk/python/pulumi_aws_native/imagebuilder/get_image_pipeline.py @@ -20,7 +20,7 @@ @pulumi.output_type class GetImagePipelineResult: - def __init__(__self__, arn=None, container_recipe_arn=None, description=None, distribution_configuration_arn=None, enhanced_image_metadata_enabled=None, image_recipe_arn=None, image_scanning_configuration=None, image_tests_configuration=None, infrastructure_configuration_arn=None, schedule=None, status=None, tags=None): + def __init__(__self__, arn=None, container_recipe_arn=None, description=None, distribution_configuration_arn=None, enhanced_image_metadata_enabled=None, execution_role=None, image_recipe_arn=None, image_scanning_configuration=None, image_tests_configuration=None, infrastructure_configuration_arn=None, schedule=None, status=None, tags=None, workflows=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -36,6 +36,9 @@ def __init__(__self__, arn=None, container_recipe_arn=None, description=None, di if enhanced_image_metadata_enabled and not isinstance(enhanced_image_metadata_enabled, bool): raise TypeError("Expected argument 'enhanced_image_metadata_enabled' to be a bool") pulumi.set(__self__, "enhanced_image_metadata_enabled", enhanced_image_metadata_enabled) + if execution_role and not isinstance(execution_role, str): + raise TypeError("Expected argument 'execution_role' to be a str") + pulumi.set(__self__, "execution_role", execution_role) if image_recipe_arn and not isinstance(image_recipe_arn, str): raise TypeError("Expected argument 'image_recipe_arn' to be a str") pulumi.set(__self__, "image_recipe_arn", image_recipe_arn) @@ -57,6 +60,9 @@ def __init__(__self__, arn=None, container_recipe_arn=None, description=None, di if tags and not isinstance(tags, dict): raise TypeError("Expected argument 'tags' to be a dict") pulumi.set(__self__, "tags", tags) + if workflows and not isinstance(workflows, list): + raise TypeError("Expected argument 'workflows' to be a list") + pulumi.set(__self__, "workflows", workflows) @property @pulumi.getter @@ -98,6 +104,14 @@ def enhanced_image_metadata_enabled(self) -> Optional[bool]: """ return pulumi.get(self, "enhanced_image_metadata_enabled") + @property + @pulumi.getter(name="executionRole") + def execution_role(self) -> Optional[str]: + """ + The execution role name/ARN for the image build, if provided + """ + return pulumi.get(self, "execution_role") + @property @pulumi.getter(name="imageRecipeArn") def image_recipe_arn(self) -> Optional[str]: @@ -154,6 +168,14 @@ def tags(self) -> Optional[Any]: """ return pulumi.get(self, "tags") + @property + @pulumi.getter + def workflows(self) -> Optional[Sequence['outputs.ImagePipelineWorkflowConfiguration']]: + """ + Workflows to define the image build process + """ + return pulumi.get(self, "workflows") + class AwaitableGetImagePipelineResult(GetImagePipelineResult): # pylint: disable=using-constant-test @@ -166,13 +188,15 @@ def __await__(self): description=self.description, distribution_configuration_arn=self.distribution_configuration_arn, enhanced_image_metadata_enabled=self.enhanced_image_metadata_enabled, + execution_role=self.execution_role, image_recipe_arn=self.image_recipe_arn, image_scanning_configuration=self.image_scanning_configuration, image_tests_configuration=self.image_tests_configuration, infrastructure_configuration_arn=self.infrastructure_configuration_arn, schedule=self.schedule, status=self.status, - tags=self.tags) + tags=self.tags, + workflows=self.workflows) def get_image_pipeline(arn: Optional[str] = None, @@ -194,13 +218,15 @@ def get_image_pipeline(arn: Optional[str] = None, description=pulumi.get(__ret__, 'description'), distribution_configuration_arn=pulumi.get(__ret__, 'distribution_configuration_arn'), enhanced_image_metadata_enabled=pulumi.get(__ret__, 'enhanced_image_metadata_enabled'), + execution_role=pulumi.get(__ret__, 'execution_role'), image_recipe_arn=pulumi.get(__ret__, 'image_recipe_arn'), image_scanning_configuration=pulumi.get(__ret__, 'image_scanning_configuration'), image_tests_configuration=pulumi.get(__ret__, 'image_tests_configuration'), infrastructure_configuration_arn=pulumi.get(__ret__, 'infrastructure_configuration_arn'), schedule=pulumi.get(__ret__, 'schedule'), status=pulumi.get(__ret__, 'status'), - tags=pulumi.get(__ret__, 'tags')) + tags=pulumi.get(__ret__, 'tags'), + workflows=pulumi.get(__ret__, 'workflows')) @_utilities.lift_output_func(get_image_pipeline) diff --git a/sdk/python/pulumi_aws_native/imagebuilder/get_workflow.py b/sdk/python/pulumi_aws_native/imagebuilder/get_workflow.py new file mode 100644 index 0000000000..9d1b2606c6 --- /dev/null +++ b/sdk/python/pulumi_aws_native/imagebuilder/get_workflow.py @@ -0,0 +1,70 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities + +__all__ = [ + 'GetWorkflowResult', + 'AwaitableGetWorkflowResult', + 'get_workflow', + 'get_workflow_output', +] + +@pulumi.output_type +class GetWorkflowResult: + def __init__(__self__, arn=None): + if arn and not isinstance(arn, str): + raise TypeError("Expected argument 'arn' to be a str") + pulumi.set(__self__, "arn", arn) + + @property + @pulumi.getter + def arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the workflow. + """ + return pulumi.get(self, "arn") + + +class AwaitableGetWorkflowResult(GetWorkflowResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetWorkflowResult( + arn=self.arn) + + +def get_workflow(arn: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetWorkflowResult: + """ + Resource schema for AWS::ImageBuilder::Workflow + + + :param str arn: The Amazon Resource Name (ARN) of the workflow. + """ + __args__ = dict() + __args__['arn'] = arn + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:imagebuilder:getWorkflow', __args__, opts=opts, typ=GetWorkflowResult).value + + return AwaitableGetWorkflowResult( + arn=pulumi.get(__ret__, 'arn')) + + +@_utilities.lift_output_func(get_workflow) +def get_workflow_output(arn: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetWorkflowResult]: + """ + Resource schema for AWS::ImageBuilder::Workflow + + + :param str arn: The Amazon Resource Name (ARN) of the workflow. + """ + ... diff --git a/sdk/python/pulumi_aws_native/imagebuilder/image.py b/sdk/python/pulumi_aws_native/imagebuilder/image.py index a9ef48c5d7..970b4a4fc5 100644 --- a/sdk/python/pulumi_aws_native/imagebuilder/image.py +++ b/sdk/python/pulumi_aws_native/imagebuilder/image.py @@ -9,6 +9,7 @@ from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities from . import outputs +from ._enums import * from ._inputs import * __all__ = ['ImageArgs', 'Image'] @@ -19,21 +20,25 @@ def __init__(__self__, *, container_recipe_arn: Optional[pulumi.Input[str]] = None, distribution_configuration_arn: Optional[pulumi.Input[str]] = None, enhanced_image_metadata_enabled: Optional[pulumi.Input[bool]] = None, + execution_role: Optional[pulumi.Input[str]] = None, image_recipe_arn: Optional[pulumi.Input[str]] = None, image_scanning_configuration: Optional[pulumi.Input['ImageScanningConfigurationArgs']] = None, image_tests_configuration: Optional[pulumi.Input['ImageTestsConfigurationArgs']] = None, infrastructure_configuration_arn: Optional[pulumi.Input[str]] = None, - tags: Optional[Any] = None): + tags: Optional[Any] = None, + workflows: Optional[pulumi.Input[Sequence[pulumi.Input['ImageWorkflowConfigurationArgs']]]] = None): """ The set of arguments for constructing a Image resource. :param pulumi.Input[str] container_recipe_arn: The Amazon Resource Name (ARN) of the container recipe that defines how images are configured and tested. :param pulumi.Input[str] distribution_configuration_arn: The Amazon Resource Name (ARN) of the distribution configuration. :param pulumi.Input[bool] enhanced_image_metadata_enabled: Collects additional information about the image being created, including the operating system (OS) version and package list. + :param pulumi.Input[str] execution_role: The execution role name/ARN for the image build, if provided :param pulumi.Input[str] image_recipe_arn: The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. :param pulumi.Input['ImageScanningConfigurationArgs'] image_scanning_configuration: Contains settings for vulnerability scans. :param pulumi.Input['ImageTestsConfigurationArgs'] image_tests_configuration: The image tests configuration used when creating this image. :param pulumi.Input[str] infrastructure_configuration_arn: The Amazon Resource Name (ARN) of the infrastructure configuration. :param Any tags: The tags associated with the image. + :param pulumi.Input[Sequence[pulumi.Input['ImageWorkflowConfigurationArgs']]] workflows: Workflows to define the image build process """ if container_recipe_arn is not None: pulumi.set(__self__, "container_recipe_arn", container_recipe_arn) @@ -41,6 +46,8 @@ def __init__(__self__, *, pulumi.set(__self__, "distribution_configuration_arn", distribution_configuration_arn) if enhanced_image_metadata_enabled is not None: pulumi.set(__self__, "enhanced_image_metadata_enabled", enhanced_image_metadata_enabled) + if execution_role is not None: + pulumi.set(__self__, "execution_role", execution_role) if image_recipe_arn is not None: pulumi.set(__self__, "image_recipe_arn", image_recipe_arn) if image_scanning_configuration is not None: @@ -51,6 +58,8 @@ def __init__(__self__, *, pulumi.set(__self__, "infrastructure_configuration_arn", infrastructure_configuration_arn) if tags is not None: pulumi.set(__self__, "tags", tags) + if workflows is not None: + pulumi.set(__self__, "workflows", workflows) @property @pulumi.getter(name="containerRecipeArn") @@ -88,6 +97,18 @@ def enhanced_image_metadata_enabled(self) -> Optional[pulumi.Input[bool]]: def enhanced_image_metadata_enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enhanced_image_metadata_enabled", value) + @property + @pulumi.getter(name="executionRole") + def execution_role(self) -> Optional[pulumi.Input[str]]: + """ + The execution role name/ARN for the image build, if provided + """ + return pulumi.get(self, "execution_role") + + @execution_role.setter + def execution_role(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "execution_role", value) + @property @pulumi.getter(name="imageRecipeArn") def image_recipe_arn(self) -> Optional[pulumi.Input[str]]: @@ -148,6 +169,18 @@ def tags(self) -> Optional[Any]: def tags(self, value: Optional[Any]): pulumi.set(self, "tags", value) + @property + @pulumi.getter + def workflows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ImageWorkflowConfigurationArgs']]]]: + """ + Workflows to define the image build process + """ + return pulumi.get(self, "workflows") + + @workflows.setter + def workflows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ImageWorkflowConfigurationArgs']]]]): + pulumi.set(self, "workflows", value) + class Image(pulumi.CustomResource): @overload @@ -157,11 +190,13 @@ def __init__(__self__, container_recipe_arn: Optional[pulumi.Input[str]] = None, distribution_configuration_arn: Optional[pulumi.Input[str]] = None, enhanced_image_metadata_enabled: Optional[pulumi.Input[bool]] = None, + execution_role: Optional[pulumi.Input[str]] = None, image_recipe_arn: Optional[pulumi.Input[str]] = None, image_scanning_configuration: Optional[pulumi.Input[pulumi.InputType['ImageScanningConfigurationArgs']]] = None, image_tests_configuration: Optional[pulumi.Input[pulumi.InputType['ImageTestsConfigurationArgs']]] = None, infrastructure_configuration_arn: Optional[pulumi.Input[str]] = None, tags: Optional[Any] = None, + workflows: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageWorkflowConfigurationArgs']]]]] = None, __props__=None): """ Resource schema for AWS::ImageBuilder::Image @@ -171,11 +206,13 @@ def __init__(__self__, :param pulumi.Input[str] container_recipe_arn: The Amazon Resource Name (ARN) of the container recipe that defines how images are configured and tested. :param pulumi.Input[str] distribution_configuration_arn: The Amazon Resource Name (ARN) of the distribution configuration. :param pulumi.Input[bool] enhanced_image_metadata_enabled: Collects additional information about the image being created, including the operating system (OS) version and package list. + :param pulumi.Input[str] execution_role: The execution role name/ARN for the image build, if provided :param pulumi.Input[str] image_recipe_arn: The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. :param pulumi.Input[pulumi.InputType['ImageScanningConfigurationArgs']] image_scanning_configuration: Contains settings for vulnerability scans. :param pulumi.Input[pulumi.InputType['ImageTestsConfigurationArgs']] image_tests_configuration: The image tests configuration used when creating this image. :param pulumi.Input[str] infrastructure_configuration_arn: The Amazon Resource Name (ARN) of the infrastructure configuration. :param Any tags: The tags associated with the image. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageWorkflowConfigurationArgs']]]] workflows: Workflows to define the image build process """ ... @overload @@ -204,11 +241,13 @@ def _internal_init(__self__, container_recipe_arn: Optional[pulumi.Input[str]] = None, distribution_configuration_arn: Optional[pulumi.Input[str]] = None, enhanced_image_metadata_enabled: Optional[pulumi.Input[bool]] = None, + execution_role: Optional[pulumi.Input[str]] = None, image_recipe_arn: Optional[pulumi.Input[str]] = None, image_scanning_configuration: Optional[pulumi.Input[pulumi.InputType['ImageScanningConfigurationArgs']]] = None, image_tests_configuration: Optional[pulumi.Input[pulumi.InputType['ImageTestsConfigurationArgs']]] = None, infrastructure_configuration_arn: Optional[pulumi.Input[str]] = None, tags: Optional[Any] = None, + workflows: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImageWorkflowConfigurationArgs']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -221,16 +260,18 @@ def _internal_init(__self__, __props__.__dict__["container_recipe_arn"] = container_recipe_arn __props__.__dict__["distribution_configuration_arn"] = distribution_configuration_arn __props__.__dict__["enhanced_image_metadata_enabled"] = enhanced_image_metadata_enabled + __props__.__dict__["execution_role"] = execution_role __props__.__dict__["image_recipe_arn"] = image_recipe_arn __props__.__dict__["image_scanning_configuration"] = image_scanning_configuration __props__.__dict__["image_tests_configuration"] = image_tests_configuration __props__.__dict__["infrastructure_configuration_arn"] = infrastructure_configuration_arn __props__.__dict__["tags"] = tags + __props__.__dict__["workflows"] = workflows __props__.__dict__["arn"] = None __props__.__dict__["image_id"] = None __props__.__dict__["image_uri"] = None __props__.__dict__["name"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["container_recipe_arn", "distribution_configuration_arn", "enhanced_image_metadata_enabled", "image_recipe_arn", "image_scanning_configuration", "image_tests_configuration", "infrastructure_configuration_arn", "tags"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["container_recipe_arn", "distribution_configuration_arn", "enhanced_image_metadata_enabled", "image_recipe_arn", "image_scanning_configuration", "image_tests_configuration", "infrastructure_configuration_arn", "tags", "workflows[*]"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Image, __self__).__init__( 'aws-native:imagebuilder:Image', @@ -258,6 +299,7 @@ def get(resource_name: str, __props__.__dict__["container_recipe_arn"] = None __props__.__dict__["distribution_configuration_arn"] = None __props__.__dict__["enhanced_image_metadata_enabled"] = None + __props__.__dict__["execution_role"] = None __props__.__dict__["image_id"] = None __props__.__dict__["image_recipe_arn"] = None __props__.__dict__["image_scanning_configuration"] = None @@ -266,6 +308,7 @@ def get(resource_name: str, __props__.__dict__["infrastructure_configuration_arn"] = None __props__.__dict__["name"] = None __props__.__dict__["tags"] = None + __props__.__dict__["workflows"] = None return Image(resource_name, opts=opts, __props__=__props__) @property @@ -300,6 +343,14 @@ def enhanced_image_metadata_enabled(self) -> pulumi.Output[Optional[bool]]: """ return pulumi.get(self, "enhanced_image_metadata_enabled") + @property + @pulumi.getter(name="executionRole") + def execution_role(self) -> pulumi.Output[Optional[str]]: + """ + The execution role name/ARN for the image build, if provided + """ + return pulumi.get(self, "execution_role") + @property @pulumi.getter(name="imageId") def image_id(self) -> pulumi.Output[str]: @@ -364,3 +415,11 @@ def tags(self) -> pulumi.Output[Optional[Any]]: """ return pulumi.get(self, "tags") + @property + @pulumi.getter + def workflows(self) -> pulumi.Output[Optional[Sequence['outputs.ImageWorkflowConfiguration']]]: + """ + Workflows to define the image build process + """ + return pulumi.get(self, "workflows") + diff --git a/sdk/python/pulumi_aws_native/imagebuilder/image_pipeline.py b/sdk/python/pulumi_aws_native/imagebuilder/image_pipeline.py index 516931ca83..221908c6da 100644 --- a/sdk/python/pulumi_aws_native/imagebuilder/image_pipeline.py +++ b/sdk/python/pulumi_aws_native/imagebuilder/image_pipeline.py @@ -21,6 +21,7 @@ def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, distribution_configuration_arn: Optional[pulumi.Input[str]] = None, enhanced_image_metadata_enabled: Optional[pulumi.Input[bool]] = None, + execution_role: Optional[pulumi.Input[str]] = None, image_recipe_arn: Optional[pulumi.Input[str]] = None, image_scanning_configuration: Optional[pulumi.Input['ImagePipelineImageScanningConfigurationArgs']] = None, image_tests_configuration: Optional[pulumi.Input['ImagePipelineImageTestsConfigurationArgs']] = None, @@ -28,13 +29,15 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, schedule: Optional[pulumi.Input['ImagePipelineScheduleArgs']] = None, status: Optional[pulumi.Input['ImagePipelineStatus']] = None, - tags: Optional[Any] = None): + tags: Optional[Any] = None, + workflows: Optional[pulumi.Input[Sequence[pulumi.Input['ImagePipelineWorkflowConfigurationArgs']]]] = None): """ The set of arguments for constructing a ImagePipeline resource. :param pulumi.Input[str] container_recipe_arn: The Amazon Resource Name (ARN) of the container recipe that defines how images are configured and tested. :param pulumi.Input[str] description: The description of the image pipeline. :param pulumi.Input[str] distribution_configuration_arn: The Amazon Resource Name (ARN) of the distribution configuration associated with this image pipeline. :param pulumi.Input[bool] enhanced_image_metadata_enabled: Collects additional information about the image being created, including the operating system (OS) version and package list. + :param pulumi.Input[str] execution_role: The execution role name/ARN for the image build, if provided :param pulumi.Input[str] image_recipe_arn: The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. :param pulumi.Input['ImagePipelineImageScanningConfigurationArgs'] image_scanning_configuration: Contains settings for vulnerability scans. :param pulumi.Input['ImagePipelineImageTestsConfigurationArgs'] image_tests_configuration: The image tests configuration of the image pipeline. @@ -43,6 +46,7 @@ def __init__(__self__, *, :param pulumi.Input['ImagePipelineScheduleArgs'] schedule: The schedule of the image pipeline. :param pulumi.Input['ImagePipelineStatus'] status: The status of the image pipeline. :param Any tags: The tags of this image pipeline. + :param pulumi.Input[Sequence[pulumi.Input['ImagePipelineWorkflowConfigurationArgs']]] workflows: Workflows to define the image build process """ if container_recipe_arn is not None: pulumi.set(__self__, "container_recipe_arn", container_recipe_arn) @@ -52,6 +56,8 @@ def __init__(__self__, *, pulumi.set(__self__, "distribution_configuration_arn", distribution_configuration_arn) if enhanced_image_metadata_enabled is not None: pulumi.set(__self__, "enhanced_image_metadata_enabled", enhanced_image_metadata_enabled) + if execution_role is not None: + pulumi.set(__self__, "execution_role", execution_role) if image_recipe_arn is not None: pulumi.set(__self__, "image_recipe_arn", image_recipe_arn) if image_scanning_configuration is not None: @@ -68,6 +74,8 @@ def __init__(__self__, *, pulumi.set(__self__, "status", status) if tags is not None: pulumi.set(__self__, "tags", tags) + if workflows is not None: + pulumi.set(__self__, "workflows", workflows) @property @pulumi.getter(name="containerRecipeArn") @@ -117,6 +125,18 @@ def enhanced_image_metadata_enabled(self) -> Optional[pulumi.Input[bool]]: def enhanced_image_metadata_enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enhanced_image_metadata_enabled", value) + @property + @pulumi.getter(name="executionRole") + def execution_role(self) -> Optional[pulumi.Input[str]]: + """ + The execution role name/ARN for the image build, if provided + """ + return pulumi.get(self, "execution_role") + + @execution_role.setter + def execution_role(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "execution_role", value) + @property @pulumi.getter(name="imageRecipeArn") def image_recipe_arn(self) -> Optional[pulumi.Input[str]]: @@ -213,6 +233,18 @@ def tags(self) -> Optional[Any]: def tags(self, value: Optional[Any]): pulumi.set(self, "tags", value) + @property + @pulumi.getter + def workflows(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ImagePipelineWorkflowConfigurationArgs']]]]: + """ + Workflows to define the image build process + """ + return pulumi.get(self, "workflows") + + @workflows.setter + def workflows(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ImagePipelineWorkflowConfigurationArgs']]]]): + pulumi.set(self, "workflows", value) + class ImagePipeline(pulumi.CustomResource): @overload @@ -223,6 +255,7 @@ def __init__(__self__, description: Optional[pulumi.Input[str]] = None, distribution_configuration_arn: Optional[pulumi.Input[str]] = None, enhanced_image_metadata_enabled: Optional[pulumi.Input[bool]] = None, + execution_role: Optional[pulumi.Input[str]] = None, image_recipe_arn: Optional[pulumi.Input[str]] = None, image_scanning_configuration: Optional[pulumi.Input[pulumi.InputType['ImagePipelineImageScanningConfigurationArgs']]] = None, image_tests_configuration: Optional[pulumi.Input[pulumi.InputType['ImagePipelineImageTestsConfigurationArgs']]] = None, @@ -231,6 +264,7 @@ def __init__(__self__, schedule: Optional[pulumi.Input[pulumi.InputType['ImagePipelineScheduleArgs']]] = None, status: Optional[pulumi.Input['ImagePipelineStatus']] = None, tags: Optional[Any] = None, + workflows: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImagePipelineWorkflowConfigurationArgs']]]]] = None, __props__=None): """ Resource schema for AWS::ImageBuilder::ImagePipeline @@ -241,6 +275,7 @@ def __init__(__self__, :param pulumi.Input[str] description: The description of the image pipeline. :param pulumi.Input[str] distribution_configuration_arn: The Amazon Resource Name (ARN) of the distribution configuration associated with this image pipeline. :param pulumi.Input[bool] enhanced_image_metadata_enabled: Collects additional information about the image being created, including the operating system (OS) version and package list. + :param pulumi.Input[str] execution_role: The execution role name/ARN for the image build, if provided :param pulumi.Input[str] image_recipe_arn: The Amazon Resource Name (ARN) of the image recipe that defines how images are configured, tested, and assessed. :param pulumi.Input[pulumi.InputType['ImagePipelineImageScanningConfigurationArgs']] image_scanning_configuration: Contains settings for vulnerability scans. :param pulumi.Input[pulumi.InputType['ImagePipelineImageTestsConfigurationArgs']] image_tests_configuration: The image tests configuration of the image pipeline. @@ -249,6 +284,7 @@ def __init__(__self__, :param pulumi.Input[pulumi.InputType['ImagePipelineScheduleArgs']] schedule: The schedule of the image pipeline. :param pulumi.Input['ImagePipelineStatus'] status: The status of the image pipeline. :param Any tags: The tags of this image pipeline. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImagePipelineWorkflowConfigurationArgs']]]] workflows: Workflows to define the image build process """ ... @overload @@ -278,6 +314,7 @@ def _internal_init(__self__, description: Optional[pulumi.Input[str]] = None, distribution_configuration_arn: Optional[pulumi.Input[str]] = None, enhanced_image_metadata_enabled: Optional[pulumi.Input[bool]] = None, + execution_role: Optional[pulumi.Input[str]] = None, image_recipe_arn: Optional[pulumi.Input[str]] = None, image_scanning_configuration: Optional[pulumi.Input[pulumi.InputType['ImagePipelineImageScanningConfigurationArgs']]] = None, image_tests_configuration: Optional[pulumi.Input[pulumi.InputType['ImagePipelineImageTestsConfigurationArgs']]] = None, @@ -286,6 +323,7 @@ def _internal_init(__self__, schedule: Optional[pulumi.Input[pulumi.InputType['ImagePipelineScheduleArgs']]] = None, status: Optional[pulumi.Input['ImagePipelineStatus']] = None, tags: Optional[Any] = None, + workflows: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ImagePipelineWorkflowConfigurationArgs']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -299,6 +337,7 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["distribution_configuration_arn"] = distribution_configuration_arn __props__.__dict__["enhanced_image_metadata_enabled"] = enhanced_image_metadata_enabled + __props__.__dict__["execution_role"] = execution_role __props__.__dict__["image_recipe_arn"] = image_recipe_arn __props__.__dict__["image_scanning_configuration"] = image_scanning_configuration __props__.__dict__["image_tests_configuration"] = image_tests_configuration @@ -307,6 +346,7 @@ def _internal_init(__self__, __props__.__dict__["schedule"] = schedule __props__.__dict__["status"] = status __props__.__dict__["tags"] = tags + __props__.__dict__["workflows"] = workflows __props__.__dict__["arn"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) @@ -337,6 +377,7 @@ def get(resource_name: str, __props__.__dict__["description"] = None __props__.__dict__["distribution_configuration_arn"] = None __props__.__dict__["enhanced_image_metadata_enabled"] = None + __props__.__dict__["execution_role"] = None __props__.__dict__["image_recipe_arn"] = None __props__.__dict__["image_scanning_configuration"] = None __props__.__dict__["image_tests_configuration"] = None @@ -345,6 +386,7 @@ def get(resource_name: str, __props__.__dict__["schedule"] = None __props__.__dict__["status"] = None __props__.__dict__["tags"] = None + __props__.__dict__["workflows"] = None return ImagePipeline(resource_name, opts=opts, __props__=__props__) @property @@ -387,6 +429,14 @@ def enhanced_image_metadata_enabled(self) -> pulumi.Output[Optional[bool]]: """ return pulumi.get(self, "enhanced_image_metadata_enabled") + @property + @pulumi.getter(name="executionRole") + def execution_role(self) -> pulumi.Output[Optional[str]]: + """ + The execution role name/ARN for the image build, if provided + """ + return pulumi.get(self, "execution_role") + @property @pulumi.getter(name="imageRecipeArn") def image_recipe_arn(self) -> pulumi.Output[Optional[str]]: @@ -451,3 +501,11 @@ def tags(self) -> pulumi.Output[Optional[Any]]: """ return pulumi.get(self, "tags") + @property + @pulumi.getter + def workflows(self) -> pulumi.Output[Optional[Sequence['outputs.ImagePipelineWorkflowConfiguration']]]: + """ + Workflows to define the image build process + """ + return pulumi.get(self, "workflows") + diff --git a/sdk/python/pulumi_aws_native/imagebuilder/outputs.py b/sdk/python/pulumi_aws_native/imagebuilder/outputs.py index 3916210c8a..5066e946e6 100644 --- a/sdk/python/pulumi_aws_native/imagebuilder/outputs.py +++ b/sdk/python/pulumi_aws_native/imagebuilder/outputs.py @@ -32,6 +32,8 @@ 'ImagePipelineImageScanningConfiguration', 'ImagePipelineImageTestsConfiguration', 'ImagePipelineSchedule', + 'ImagePipelineWorkflowConfiguration', + 'ImagePipelineWorkflowParameter', 'ImageRecipeAdditionalInstanceConfiguration', 'ImageRecipeComponentConfiguration', 'ImageRecipeComponentParameter', @@ -40,6 +42,8 @@ 'ImageRecipeSystemsManagerAgent', 'ImageScanningConfiguration', 'ImageTestsConfiguration', + 'ImageWorkflowConfiguration', + 'ImageWorkflowParameter', 'InfrastructureConfigurationInstanceMetadataOptions', 'InfrastructureConfigurationLogging', 'InfrastructureConfigurationS3Logs', @@ -1396,6 +1400,113 @@ def schedule_expression(self) -> Optional[str]: return pulumi.get(self, "schedule_expression") +@pulumi.output_type +class ImagePipelineWorkflowConfiguration(dict): + """ + The workflow configuration of the image + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "onFailure": + suggest = "on_failure" + elif key == "parallelGroup": + suggest = "parallel_group" + elif key == "workflowArn": + suggest = "workflow_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ImagePipelineWorkflowConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ImagePipelineWorkflowConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ImagePipelineWorkflowConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + on_failure: Optional['ImagePipelineWorkflowConfigurationOnFailure'] = None, + parallel_group: Optional[str] = None, + parameters: Optional[Sequence['outputs.ImagePipelineWorkflowParameter']] = None, + workflow_arn: Optional[str] = None): + """ + The workflow configuration of the image + :param 'ImagePipelineWorkflowConfigurationOnFailure' on_failure: Define execution decision in case of workflow failure + :param str parallel_group: The parallel group name + :param Sequence['ImagePipelineWorkflowParameter'] parameters: The parameters associated with the workflow + :param str workflow_arn: The Amazon Resource Name (ARN) of the workflow + """ + if on_failure is not None: + pulumi.set(__self__, "on_failure", on_failure) + if parallel_group is not None: + pulumi.set(__self__, "parallel_group", parallel_group) + if parameters is not None: + pulumi.set(__self__, "parameters", parameters) + if workflow_arn is not None: + pulumi.set(__self__, "workflow_arn", workflow_arn) + + @property + @pulumi.getter(name="onFailure") + def on_failure(self) -> Optional['ImagePipelineWorkflowConfigurationOnFailure']: + """ + Define execution decision in case of workflow failure + """ + return pulumi.get(self, "on_failure") + + @property + @pulumi.getter(name="parallelGroup") + def parallel_group(self) -> Optional[str]: + """ + The parallel group name + """ + return pulumi.get(self, "parallel_group") + + @property + @pulumi.getter + def parameters(self) -> Optional[Sequence['outputs.ImagePipelineWorkflowParameter']]: + """ + The parameters associated with the workflow + """ + return pulumi.get(self, "parameters") + + @property + @pulumi.getter(name="workflowArn") + def workflow_arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the workflow + """ + return pulumi.get(self, "workflow_arn") + + +@pulumi.output_type +class ImagePipelineWorkflowParameter(dict): + """ + A parameter associated with the workflow + """ + def __init__(__self__, *, + name: Optional[str] = None, + value: Optional[Sequence[str]] = None): + """ + A parameter associated with the workflow + """ + if name is not None: + pulumi.set(__self__, "name", name) + if value is not None: + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def value(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "value") + + @pulumi.output_type class ImageRecipeAdditionalInstanceConfiguration(dict): """ @@ -1895,6 +2006,113 @@ def timeout_minutes(self) -> Optional[int]: return pulumi.get(self, "timeout_minutes") +@pulumi.output_type +class ImageWorkflowConfiguration(dict): + """ + The workflow configuration of the image + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "onFailure": + suggest = "on_failure" + elif key == "parallelGroup": + suggest = "parallel_group" + elif key == "workflowArn": + suggest = "workflow_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ImageWorkflowConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ImageWorkflowConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ImageWorkflowConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + on_failure: Optional['ImageWorkflowConfigurationOnFailure'] = None, + parallel_group: Optional[str] = None, + parameters: Optional[Sequence['outputs.ImageWorkflowParameter']] = None, + workflow_arn: Optional[str] = None): + """ + The workflow configuration of the image + :param 'ImageWorkflowConfigurationOnFailure' on_failure: Define execution decision in case of workflow failure + :param str parallel_group: The parallel group name + :param Sequence['ImageWorkflowParameter'] parameters: The parameters associated with the workflow + :param str workflow_arn: The Amazon Resource Name (ARN) of the workflow + """ + if on_failure is not None: + pulumi.set(__self__, "on_failure", on_failure) + if parallel_group is not None: + pulumi.set(__self__, "parallel_group", parallel_group) + if parameters is not None: + pulumi.set(__self__, "parameters", parameters) + if workflow_arn is not None: + pulumi.set(__self__, "workflow_arn", workflow_arn) + + @property + @pulumi.getter(name="onFailure") + def on_failure(self) -> Optional['ImageWorkflowConfigurationOnFailure']: + """ + Define execution decision in case of workflow failure + """ + return pulumi.get(self, "on_failure") + + @property + @pulumi.getter(name="parallelGroup") + def parallel_group(self) -> Optional[str]: + """ + The parallel group name + """ + return pulumi.get(self, "parallel_group") + + @property + @pulumi.getter + def parameters(self) -> Optional[Sequence['outputs.ImageWorkflowParameter']]: + """ + The parameters associated with the workflow + """ + return pulumi.get(self, "parameters") + + @property + @pulumi.getter(name="workflowArn") + def workflow_arn(self) -> Optional[str]: + """ + The Amazon Resource Name (ARN) of the workflow + """ + return pulumi.get(self, "workflow_arn") + + +@pulumi.output_type +class ImageWorkflowParameter(dict): + """ + A parameter associated with the workflow + """ + def __init__(__self__, *, + name: Optional[str] = None, + value: Optional[Sequence[str]] = None): + """ + A parameter associated with the workflow + """ + if name is not None: + pulumi.set(__self__, "name", name) + if value is not None: + pulumi.set(__self__, "value", value) + + @property + @pulumi.getter + def name(self) -> Optional[str]: + return pulumi.get(self, "name") + + @property + @pulumi.getter + def value(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "value") + + @pulumi.output_type class InfrastructureConfigurationInstanceMetadataOptions(dict): """ diff --git a/sdk/python/pulumi_aws_native/imagebuilder/workflow.py b/sdk/python/pulumi_aws_native/imagebuilder/workflow.py new file mode 100644 index 0000000000..0b29f819c2 --- /dev/null +++ b/sdk/python/pulumi_aws_native/imagebuilder/workflow.py @@ -0,0 +1,366 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from ._enums import * + +__all__ = ['WorkflowArgs', 'Workflow'] + +@pulumi.input_type +class WorkflowArgs: + def __init__(__self__, *, + type: pulumi.Input['WorkflowType'], + version: pulumi.Input[str], + change_description: Optional[pulumi.Input[str]] = None, + data: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + kms_key_id: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + tags: Optional[Any] = None, + uri: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a Workflow resource. + :param pulumi.Input['WorkflowType'] type: The type of the workflow denotes whether the workflow is used to build, test, or distribute. + :param pulumi.Input[str] version: The version of the workflow. + :param pulumi.Input[str] change_description: The change description of the workflow. + :param pulumi.Input[str] data: The data of the workflow. + :param pulumi.Input[str] description: The description of the workflow. + :param pulumi.Input[str] kms_key_id: The KMS key identifier used to encrypt the workflow. + :param pulumi.Input[str] name: The name of the workflow. + :param Any tags: The tags associated with the workflow. + :param pulumi.Input[str] uri: The uri of the workflow. + """ + pulumi.set(__self__, "type", type) + pulumi.set(__self__, "version", version) + if change_description is not None: + pulumi.set(__self__, "change_description", change_description) + if data is not None: + pulumi.set(__self__, "data", data) + if description is not None: + pulumi.set(__self__, "description", description) + if kms_key_id is not None: + pulumi.set(__self__, "kms_key_id", kms_key_id) + if name is not None: + pulumi.set(__self__, "name", name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + if uri is not None: + pulumi.set(__self__, "uri", uri) + + @property + @pulumi.getter + def type(self) -> pulumi.Input['WorkflowType']: + """ + The type of the workflow denotes whether the workflow is used to build, test, or distribute. + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: pulumi.Input['WorkflowType']): + pulumi.set(self, "type", value) + + @property + @pulumi.getter + def version(self) -> pulumi.Input[str]: + """ + The version of the workflow. + """ + return pulumi.get(self, "version") + + @version.setter + def version(self, value: pulumi.Input[str]): + pulumi.set(self, "version", value) + + @property + @pulumi.getter(name="changeDescription") + def change_description(self) -> Optional[pulumi.Input[str]]: + """ + The change description of the workflow. + """ + return pulumi.get(self, "change_description") + + @change_description.setter + def change_description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "change_description", value) + + @property + @pulumi.getter + def data(self) -> Optional[pulumi.Input[str]]: + """ + The data of the workflow. + """ + return pulumi.get(self, "data") + + @data.setter + def data(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "data", value) + + @property + @pulumi.getter + def description(self) -> Optional[pulumi.Input[str]]: + """ + The description of the workflow. + """ + return pulumi.get(self, "description") + + @description.setter + def description(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "description", value) + + @property + @pulumi.getter(name="kmsKeyId") + def kms_key_id(self) -> Optional[pulumi.Input[str]]: + """ + The KMS key identifier used to encrypt the workflow. + """ + return pulumi.get(self, "kms_key_id") + + @kms_key_id.setter + def kms_key_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "kms_key_id", value) + + @property + @pulumi.getter + def name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the workflow. + """ + return pulumi.get(self, "name") + + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[Any]: + """ + The tags associated with the workflow. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[Any]): + pulumi.set(self, "tags", value) + + @property + @pulumi.getter + def uri(self) -> Optional[pulumi.Input[str]]: + """ + The uri of the workflow. + """ + return pulumi.get(self, "uri") + + @uri.setter + def uri(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "uri", value) + + +class Workflow(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + change_description: Optional[pulumi.Input[str]] = None, + data: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + kms_key_id: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + tags: Optional[Any] = None, + type: Optional[pulumi.Input['WorkflowType']] = None, + uri: Optional[pulumi.Input[str]] = None, + version: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + Resource schema for AWS::ImageBuilder::Workflow + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] change_description: The change description of the workflow. + :param pulumi.Input[str] data: The data of the workflow. + :param pulumi.Input[str] description: The description of the workflow. + :param pulumi.Input[str] kms_key_id: The KMS key identifier used to encrypt the workflow. + :param pulumi.Input[str] name: The name of the workflow. + :param Any tags: The tags associated with the workflow. + :param pulumi.Input['WorkflowType'] type: The type of the workflow denotes whether the workflow is used to build, test, or distribute. + :param pulumi.Input[str] uri: The uri of the workflow. + :param pulumi.Input[str] version: The version of the workflow. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: WorkflowArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Resource schema for AWS::ImageBuilder::Workflow + + :param str resource_name: The name of the resource. + :param WorkflowArgs 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(WorkflowArgs, 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, + change_description: Optional[pulumi.Input[str]] = None, + data: Optional[pulumi.Input[str]] = None, + description: Optional[pulumi.Input[str]] = None, + kms_key_id: Optional[pulumi.Input[str]] = None, + name: Optional[pulumi.Input[str]] = None, + tags: Optional[Any] = None, + type: Optional[pulumi.Input['WorkflowType']] = None, + uri: Optional[pulumi.Input[str]] = None, + version: 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__ = WorkflowArgs.__new__(WorkflowArgs) + + __props__.__dict__["change_description"] = change_description + __props__.__dict__["data"] = data + __props__.__dict__["description"] = description + __props__.__dict__["kms_key_id"] = kms_key_id + __props__.__dict__["name"] = name + __props__.__dict__["tags"] = tags + if type is None and not opts.urn: + raise TypeError("Missing required property 'type'") + __props__.__dict__["type"] = type + __props__.__dict__["uri"] = uri + if version is None and not opts.urn: + raise TypeError("Missing required property 'version'") + __props__.__dict__["version"] = version + __props__.__dict__["arn"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["change_description", "data", "description", "kms_key_id", "name", "tags", "type", "uri", "version"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(Workflow, __self__).__init__( + 'aws-native:imagebuilder:Workflow', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'Workflow': + """ + Get an existing Workflow 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__ = WorkflowArgs.__new__(WorkflowArgs) + + __props__.__dict__["arn"] = None + __props__.__dict__["change_description"] = None + __props__.__dict__["data"] = None + __props__.__dict__["description"] = None + __props__.__dict__["kms_key_id"] = None + __props__.__dict__["name"] = None + __props__.__dict__["tags"] = None + __props__.__dict__["type"] = None + __props__.__dict__["uri"] = None + __props__.__dict__["version"] = None + return Workflow(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + The Amazon Resource Name (ARN) of the workflow. + """ + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="changeDescription") + def change_description(self) -> pulumi.Output[Optional[str]]: + """ + The change description of the workflow. + """ + return pulumi.get(self, "change_description") + + @property + @pulumi.getter + def data(self) -> pulumi.Output[Optional[str]]: + """ + The data of the workflow. + """ + return pulumi.get(self, "data") + + @property + @pulumi.getter + def description(self) -> pulumi.Output[Optional[str]]: + """ + The description of the workflow. + """ + return pulumi.get(self, "description") + + @property + @pulumi.getter(name="kmsKeyId") + def kms_key_id(self) -> pulumi.Output[Optional[str]]: + """ + The KMS key identifier used to encrypt the workflow. + """ + return pulumi.get(self, "kms_key_id") + + @property + @pulumi.getter + def name(self) -> pulumi.Output[str]: + """ + The name of the workflow. + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Any]]: + """ + The tags associated with the workflow. + """ + return pulumi.get(self, "tags") + + @property + @pulumi.getter + def type(self) -> pulumi.Output['WorkflowType']: + """ + The type of the workflow denotes whether the workflow is used to build, test, or distribute. + """ + return pulumi.get(self, "type") + + @property + @pulumi.getter + def uri(self) -> pulumi.Output[Optional[str]]: + """ + The uri of the workflow. + """ + return pulumi.get(self, "uri") + + @property + @pulumi.getter + def version(self) -> pulumi.Output[str]: + """ + The version of the workflow. + """ + return pulumi.get(self, "version") + diff --git a/sdk/python/pulumi_aws_native/iot/__init__.py b/sdk/python/pulumi_aws_native/iot/__init__.py index ff6f0dc97d..86c4d2bf85 100644 --- a/sdk/python/pulumi_aws_native/iot/__init__.py +++ b/sdk/python/pulumi_aws_native/iot/__init__.py @@ -11,6 +11,7 @@ from .billing_group import * from .ca_certificate import * from .certificate import * +from .certificate_provider import * from .custom_metric import * from .dimension import * from .domain_configuration import * @@ -20,6 +21,7 @@ from .get_billing_group import * from .get_ca_certificate import * from .get_certificate import * +from .get_certificate_provider import * from .get_custom_metric import * from .get_dimension import * from .get_domain_configuration import * diff --git a/sdk/python/pulumi_aws_native/iot/_enums.py b/sdk/python/pulumi_aws_native/iot/_enums.py index 4e6868295d..b45bcbaa64 100644 --- a/sdk/python/pulumi_aws_native/iot/_enums.py +++ b/sdk/python/pulumi_aws_native/iot/_enums.py @@ -10,6 +10,7 @@ 'CaCertificateCertificateMode', 'CaCertificateStatus', 'CertificateMode', + 'CertificateProviderOperation', 'CertificateStatus', 'CustomMetricMetricType', 'DimensionType', @@ -65,6 +66,10 @@ class CertificateMode(str, Enum): SNI_ONLY = "SNI_ONLY" +class CertificateProviderOperation(str, Enum): + CREATE_CERTIFICATE_FROM_CSR = "CreateCertificateFromCsr" + + class CertificateStatus(str, Enum): ACTIVE = "ACTIVE" INACTIVE = "INACTIVE" diff --git a/sdk/python/pulumi_aws_native/iot/_inputs.py b/sdk/python/pulumi_aws_native/iot/_inputs.py index 2ab95eb865..6f429bbbff 100644 --- a/sdk/python/pulumi_aws_native/iot/_inputs.py +++ b/sdk/python/pulumi_aws_native/iot/_inputs.py @@ -21,6 +21,7 @@ 'BillingGroupTagArgs', 'CaCertificateRegistrationConfigArgs', 'CaCertificateTagArgs', + 'CertificateProviderTagArgs', 'CustomMetricTagArgs', 'DimensionTagArgs', 'DomainConfigurationAuthorizerConfigArgs', @@ -591,6 +592,44 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class CertificateProviderTagArgs: + 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 127 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 1 to 255 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 127 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 1 to 255 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) + + @pulumi.input_type class CustomMetricTagArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/iot/certificate_provider.py b/sdk/python/pulumi_aws_native/iot/certificate_provider.py new file mode 100644 index 0000000000..234660bce4 --- /dev/null +++ b/sdk/python/pulumi_aws_native/iot/certificate_provider.py @@ -0,0 +1,196 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * +from ._inputs import * + +__all__ = ['CertificateProviderArgs', 'CertificateProvider'] + +@pulumi.input_type +class CertificateProviderArgs: + def __init__(__self__, *, + account_default_for_operations: pulumi.Input[Sequence[pulumi.Input['CertificateProviderOperation']]], + lambda_function_arn: pulumi.Input[str], + certificate_provider_name: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['CertificateProviderTagArgs']]]] = None): + """ + The set of arguments for constructing a CertificateProvider resource. + :param pulumi.Input[Sequence[pulumi.Input['CertificateProviderTagArgs']]] tags: An array of key-value pairs to apply to this resource. + """ + pulumi.set(__self__, "account_default_for_operations", account_default_for_operations) + pulumi.set(__self__, "lambda_function_arn", lambda_function_arn) + if certificate_provider_name is not None: + pulumi.set(__self__, "certificate_provider_name", certificate_provider_name) + if tags is not None: + pulumi.set(__self__, "tags", tags) + + @property + @pulumi.getter(name="accountDefaultForOperations") + def account_default_for_operations(self) -> pulumi.Input[Sequence[pulumi.Input['CertificateProviderOperation']]]: + return pulumi.get(self, "account_default_for_operations") + + @account_default_for_operations.setter + def account_default_for_operations(self, value: pulumi.Input[Sequence[pulumi.Input['CertificateProviderOperation']]]): + pulumi.set(self, "account_default_for_operations", value) + + @property + @pulumi.getter(name="lambdaFunctionArn") + def lambda_function_arn(self) -> pulumi.Input[str]: + return pulumi.get(self, "lambda_function_arn") + + @lambda_function_arn.setter + def lambda_function_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "lambda_function_arn", value) + + @property + @pulumi.getter(name="certificateProviderName") + def certificate_provider_name(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "certificate_provider_name") + + @certificate_provider_name.setter + def certificate_provider_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "certificate_provider_name", value) + + @property + @pulumi.getter + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['CertificateProviderTagArgs']]]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + @tags.setter + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['CertificateProviderTagArgs']]]]): + pulumi.set(self, "tags", value) + + +class CertificateProvider(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + account_default_for_operations: Optional[pulumi.Input[Sequence[pulumi.Input['CertificateProviderOperation']]]] = None, + certificate_provider_name: Optional[pulumi.Input[str]] = None, + lambda_function_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CertificateProviderTagArgs']]]]] = None, + __props__=None): + """ + Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CertificateProviderTagArgs']]]] tags: An array of key-value pairs to apply to this resource. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: CertificateProviderArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + + :param str resource_name: The name of the resource. + :param CertificateProviderArgs 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(CertificateProviderArgs, 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, + account_default_for_operations: Optional[pulumi.Input[Sequence[pulumi.Input['CertificateProviderOperation']]]] = None, + certificate_provider_name: Optional[pulumi.Input[str]] = None, + lambda_function_arn: Optional[pulumi.Input[str]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CertificateProviderTagArgs']]]]] = 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__ = CertificateProviderArgs.__new__(CertificateProviderArgs) + + if account_default_for_operations is None and not opts.urn: + raise TypeError("Missing required property 'account_default_for_operations'") + __props__.__dict__["account_default_for_operations"] = account_default_for_operations + __props__.__dict__["certificate_provider_name"] = certificate_provider_name + if lambda_function_arn is None and not opts.urn: + raise TypeError("Missing required property 'lambda_function_arn'") + __props__.__dict__["lambda_function_arn"] = lambda_function_arn + __props__.__dict__["tags"] = tags + __props__.__dict__["arn"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["certificate_provider_name"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) + super(CertificateProvider, __self__).__init__( + 'aws-native:iot:CertificateProvider', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'CertificateProvider': + """ + Get an existing CertificateProvider 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__ = CertificateProviderArgs.__new__(CertificateProviderArgs) + + __props__.__dict__["account_default_for_operations"] = None + __props__.__dict__["arn"] = None + __props__.__dict__["certificate_provider_name"] = None + __props__.__dict__["lambda_function_arn"] = None + __props__.__dict__["tags"] = None + return CertificateProvider(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter(name="accountDefaultForOperations") + def account_default_for_operations(self) -> pulumi.Output[Sequence['CertificateProviderOperation']]: + return pulumi.get(self, "account_default_for_operations") + + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="certificateProviderName") + def certificate_provider_name(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "certificate_provider_name") + + @property + @pulumi.getter(name="lambdaFunctionArn") + def lambda_function_arn(self) -> pulumi.Output[str]: + return pulumi.get(self, "lambda_function_arn") + + @property + @pulumi.getter + def tags(self) -> pulumi.Output[Optional[Sequence['outputs.CertificateProviderTag']]]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + diff --git a/sdk/python/pulumi_aws_native/iot/get_certificate_provider.py b/sdk/python/pulumi_aws_native/iot/get_certificate_provider.py new file mode 100644 index 0000000000..8e903eba4c --- /dev/null +++ b/sdk/python/pulumi_aws_native/iot/get_certificate_provider.py @@ -0,0 +1,96 @@ +# coding=utf-8 +# *** WARNING: this file was generated by the Pulumi SDK Generator. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +from .. import _utilities +from . import outputs +from ._enums import * + +__all__ = [ + 'GetCertificateProviderResult', + 'AwaitableGetCertificateProviderResult', + 'get_certificate_provider', + 'get_certificate_provider_output', +] + +@pulumi.output_type +class GetCertificateProviderResult: + def __init__(__self__, account_default_for_operations=None, arn=None, lambda_function_arn=None, tags=None): + if account_default_for_operations and not isinstance(account_default_for_operations, list): + raise TypeError("Expected argument 'account_default_for_operations' to be a list") + pulumi.set(__self__, "account_default_for_operations", account_default_for_operations) + if arn and not isinstance(arn, str): + raise TypeError("Expected argument 'arn' to be a str") + pulumi.set(__self__, "arn", arn) + if lambda_function_arn and not isinstance(lambda_function_arn, str): + raise TypeError("Expected argument 'lambda_function_arn' to be a str") + pulumi.set(__self__, "lambda_function_arn", lambda_function_arn) + 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="accountDefaultForOperations") + def account_default_for_operations(self) -> Optional[Sequence['CertificateProviderOperation']]: + return pulumi.get(self, "account_default_for_operations") + + @property + @pulumi.getter + def arn(self) -> Optional[str]: + return pulumi.get(self, "arn") + + @property + @pulumi.getter(name="lambdaFunctionArn") + def lambda_function_arn(self) -> Optional[str]: + return pulumi.get(self, "lambda_function_arn") + + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['outputs.CertificateProviderTag']]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + + +class AwaitableGetCertificateProviderResult(GetCertificateProviderResult): + # pylint: disable=using-constant-test + def __await__(self): + if False: + yield self + return GetCertificateProviderResult( + account_default_for_operations=self.account_default_for_operations, + arn=self.arn, + lambda_function_arn=self.lambda_function_arn, + tags=self.tags) + + +def get_certificate_provider(certificate_provider_name: Optional[str] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetCertificateProviderResult: + """ + Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + """ + __args__ = dict() + __args__['certificateProviderName'] = certificate_provider_name + opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) + __ret__ = pulumi.runtime.invoke('aws-native:iot:getCertificateProvider', __args__, opts=opts, typ=GetCertificateProviderResult).value + + return AwaitableGetCertificateProviderResult( + account_default_for_operations=pulumi.get(__ret__, 'account_default_for_operations'), + arn=pulumi.get(__ret__, 'arn'), + lambda_function_arn=pulumi.get(__ret__, 'lambda_function_arn'), + tags=pulumi.get(__ret__, 'tags')) + + +@_utilities.lift_output_func(get_certificate_provider) +def get_certificate_provider_output(certificate_provider_name: Optional[pulumi.Input[str]] = None, + opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetCertificateProviderResult]: + """ + Use the AWS::IoT::CertificateProvider resource to declare an AWS IoT Certificate Provider. + """ + ... diff --git a/sdk/python/pulumi_aws_native/iot/outputs.py b/sdk/python/pulumi_aws_native/iot/outputs.py index c13724cae7..85824e6af3 100644 --- a/sdk/python/pulumi_aws_native/iot/outputs.py +++ b/sdk/python/pulumi_aws_native/iot/outputs.py @@ -22,6 +22,7 @@ 'BillingGroupTag', 'CaCertificateRegistrationConfig', 'CaCertificateTag', + 'CertificateProviderTag', 'CustomMetricTag', 'DimensionTag', 'DomainConfigurationAuthorizerConfig', @@ -604,6 +605,39 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class CertificateProviderTag(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 127 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 1 to 255 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 127 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 1 to 255 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 CustomMetricTag(dict): """ diff --git a/sdk/python/pulumi_aws_native/kinesisfirehose/_enums.py b/sdk/python/pulumi_aws_native/kinesisfirehose/_enums.py index 79e37693ff..3fabae7d47 100644 --- a/sdk/python/pulumi_aws_native/kinesisfirehose/_enums.py +++ b/sdk/python/pulumi_aws_native/kinesisfirehose/_enums.py @@ -95,6 +95,7 @@ class DeliveryStreamHttpEndpointRequestConfigurationContentEncoding(str, Enum): class DeliveryStreamProcessorType(str, Enum): RECORD_DE_AGGREGATION = "RecordDeAggregation" + DECOMPRESSION = "Decompression" LAMBDA_ = "Lambda" METADATA_EXTRACTION = "MetadataExtraction" APPEND_DELIMITER_TO_RECORD = "AppendDelimiterToRecord" diff --git a/sdk/python/pulumi_aws_native/lambda_/_inputs.py b/sdk/python/pulumi_aws_native/lambda_/_inputs.py index ced699b2b2..14fb2adf6b 100644 --- a/sdk/python/pulumi_aws_native/lambda_/_inputs.py +++ b/sdk/python/pulumi_aws_native/lambda_/_inputs.py @@ -158,6 +158,9 @@ class EventInvokeConfigDestinationConfigArgs: def __init__(__self__, *, on_failure: Optional[pulumi.Input['EventInvokeConfigOnFailureArgs']] = None, on_success: Optional[pulumi.Input['EventInvokeConfigOnSuccessArgs']] = None): + """ + A destination for events after they have been sent to a function for processing. + """ if on_failure is not None: pulumi.set(__self__, "on_failure", on_failure) if on_success is not None: @@ -186,11 +189,18 @@ def on_success(self, value: Optional[pulumi.Input['EventInvokeConfigOnSuccessArg class EventInvokeConfigOnFailureArgs: def __init__(__self__, *, destination: pulumi.Input[str]): + """ + The destination configuration for failed invocations. + :param pulumi.Input[str] destination: The Amazon Resource Name (ARN) of the destination resource. + """ pulumi.set(__self__, "destination", destination) @property @pulumi.getter def destination(self) -> pulumi.Input[str]: + """ + The Amazon Resource Name (ARN) of the destination resource. + """ return pulumi.get(self, "destination") @destination.setter @@ -202,11 +212,18 @@ def destination(self, value: pulumi.Input[str]): class EventInvokeConfigOnSuccessArgs: def __init__(__self__, *, destination: pulumi.Input[str]): + """ + The destination configuration for successful invocations. + :param pulumi.Input[str] destination: The Amazon Resource Name (ARN) of the destination resource. + """ pulumi.set(__self__, "destination", destination) @property @pulumi.getter def destination(self) -> pulumi.Input[str]: + """ + The Amazon Resource Name (ARN) of the destination resource. + """ return pulumi.get(self, "destination") @destination.setter diff --git a/sdk/python/pulumi_aws_native/lambda_/event_invoke_config.py b/sdk/python/pulumi_aws_native/lambda_/event_invoke_config.py index bd8599a58b..d73dddfd8e 100644 --- a/sdk/python/pulumi_aws_native/lambda_/event_invoke_config.py +++ b/sdk/python/pulumi_aws_native/lambda_/event_invoke_config.py @@ -23,6 +23,10 @@ def __init__(__self__, *, maximum_retry_attempts: Optional[pulumi.Input[int]] = None): """ The set of arguments for constructing a EventInvokeConfig resource. + :param pulumi.Input[str] function_name: The name of the Lambda function. + :param pulumi.Input[str] qualifier: The identifier of a version or alias. + :param pulumi.Input[int] maximum_event_age_in_seconds: The maximum age of a request that Lambda sends to a function for processing. + :param pulumi.Input[int] maximum_retry_attempts: The maximum number of times to retry when the function returns an error. """ pulumi.set(__self__, "function_name", function_name) pulumi.set(__self__, "qualifier", qualifier) @@ -36,6 +40,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="functionName") def function_name(self) -> pulumi.Input[str]: + """ + The name of the Lambda function. + """ return pulumi.get(self, "function_name") @function_name.setter @@ -45,6 +52,9 @@ def function_name(self, value: pulumi.Input[str]): @property @pulumi.getter def qualifier(self) -> pulumi.Input[str]: + """ + The identifier of a version or alias. + """ return pulumi.get(self, "qualifier") @qualifier.setter @@ -63,6 +73,9 @@ def destination_config(self, value: Optional[pulumi.Input['EventInvokeConfigDest @property @pulumi.getter(name="maximumEventAgeInSeconds") def maximum_event_age_in_seconds(self) -> Optional[pulumi.Input[int]]: + """ + The maximum age of a request that Lambda sends to a function for processing. + """ return pulumi.get(self, "maximum_event_age_in_seconds") @maximum_event_age_in_seconds.setter @@ -72,6 +85,9 @@ def maximum_event_age_in_seconds(self, value: Optional[pulumi.Input[int]]): @property @pulumi.getter(name="maximumRetryAttempts") def maximum_retry_attempts(self) -> Optional[pulumi.Input[int]]: + """ + The maximum number of times to retry when the function returns an error. + """ return pulumi.get(self, "maximum_retry_attempts") @maximum_retry_attempts.setter @@ -91,10 +107,14 @@ def __init__(__self__, qualifier: Optional[pulumi.Input[str]] = None, __props__=None): """ - Resource Type definition for AWS::Lambda::EventInvokeConfig + The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] function_name: The name of the Lambda function. + :param pulumi.Input[int] maximum_event_age_in_seconds: The maximum age of a request that Lambda sends to a function for processing. + :param pulumi.Input[int] maximum_retry_attempts: The maximum number of times to retry when the function returns an error. + :param pulumi.Input[str] qualifier: The identifier of a version or alias. """ ... @overload @@ -103,7 +123,7 @@ def __init__(__self__, args: EventInvokeConfigArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::Lambda::EventInvokeConfig + The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. :param str resource_name: The name of the resource. :param EventInvokeConfigArgs args: The arguments to use to populate this resource's properties. @@ -182,20 +202,32 @@ def destination_config(self) -> pulumi.Output[Optional['outputs.EventInvokeConfi @property @pulumi.getter(name="functionName") def function_name(self) -> pulumi.Output[str]: + """ + The name of the Lambda function. + """ return pulumi.get(self, "function_name") @property @pulumi.getter(name="maximumEventAgeInSeconds") def maximum_event_age_in_seconds(self) -> pulumi.Output[Optional[int]]: + """ + The maximum age of a request that Lambda sends to a function for processing. + """ return pulumi.get(self, "maximum_event_age_in_seconds") @property @pulumi.getter(name="maximumRetryAttempts") def maximum_retry_attempts(self) -> pulumi.Output[Optional[int]]: + """ + The maximum number of times to retry when the function returns an error. + """ return pulumi.get(self, "maximum_retry_attempts") @property @pulumi.getter def qualifier(self) -> pulumi.Output[str]: + """ + The identifier of a version or alias. + """ return pulumi.get(self, "qualifier") diff --git a/sdk/python/pulumi_aws_native/lambda_/function.py b/sdk/python/pulumi_aws_native/lambda_/function.py index e1b9a0103b..30ec6d8604 100644 --- a/sdk/python/pulumi_aws_native/lambda_/function.py +++ b/sdk/python/pulumi_aws_native/lambda_/function.py @@ -34,7 +34,6 @@ def __init__(__self__, *, logging_config: Optional[pulumi.Input['FunctionLoggingConfigArgs']] = None, memory_size: Optional[pulumi.Input[int]] = None, package_type: Optional[pulumi.Input['FunctionPackageType']] = None, - policy: Optional[Any] = None, reserved_concurrent_executions: Optional[pulumi.Input[int]] = None, runtime: Optional[pulumi.Input[str]] = None, runtime_management_config: Optional[pulumi.Input['FunctionRuntimeManagementConfigArgs']] = None, @@ -61,7 +60,6 @@ def __init__(__self__, *, :param pulumi.Input['FunctionLoggingConfigArgs'] logging_config: The logging configuration of your function :param pulumi.Input[int] memory_size: The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB. :param pulumi.Input['FunctionPackageType'] package_type: PackageType. - :param Any policy: The resource policy of your function :param pulumi.Input[int] reserved_concurrent_executions: The number of simultaneous executions to reserve for the function. :param pulumi.Input[str] runtime: The identifier of the function's runtime. :param pulumi.Input['FunctionRuntimeManagementConfigArgs'] runtime_management_config: RuntimeManagementConfig @@ -103,8 +101,6 @@ def __init__(__self__, *, pulumi.set(__self__, "memory_size", memory_size) if package_type is not None: pulumi.set(__self__, "package_type", package_type) - if policy is not None: - pulumi.set(__self__, "policy", policy) if reserved_concurrent_executions is not None: pulumi.set(__self__, "reserved_concurrent_executions", reserved_concurrent_executions) if runtime is not None: @@ -323,18 +319,6 @@ def package_type(self) -> Optional[pulumi.Input['FunctionPackageType']]: def package_type(self, value: Optional[pulumi.Input['FunctionPackageType']]): pulumi.set(self, "package_type", value) - @property - @pulumi.getter - def policy(self) -> Optional[Any]: - """ - The resource policy of your function - """ - return pulumi.get(self, "policy") - - @policy.setter - def policy(self, value: Optional[Any]): - pulumi.set(self, "policy", value) - @property @pulumi.getter(name="reservedConcurrentExecutions") def reserved_concurrent_executions(self) -> Optional[pulumi.Input[int]]: @@ -453,7 +437,6 @@ def __init__(__self__, logging_config: Optional[pulumi.Input[pulumi.InputType['FunctionLoggingConfigArgs']]] = None, memory_size: Optional[pulumi.Input[int]] = None, package_type: Optional[pulumi.Input['FunctionPackageType']] = None, - policy: Optional[Any] = None, reserved_concurrent_executions: Optional[pulumi.Input[int]] = None, role: Optional[pulumi.Input[str]] = None, runtime: Optional[pulumi.Input[str]] = None, @@ -484,7 +467,6 @@ def __init__(__self__, :param pulumi.Input[pulumi.InputType['FunctionLoggingConfigArgs']] logging_config: The logging configuration of your function :param pulumi.Input[int] memory_size: The amount of memory that your function has access to. Increasing the function's memory also increases its CPU allocation. The default value is 128 MB. The value must be a multiple of 64 MB. :param pulumi.Input['FunctionPackageType'] package_type: PackageType. - :param Any policy: The resource policy of your function :param pulumi.Input[int] reserved_concurrent_executions: The number of simultaneous executions to reserve for the function. :param pulumi.Input[str] role: The Amazon Resource Name (ARN) of the function's execution role. :param pulumi.Input[str] runtime: The identifier of the function's runtime. @@ -535,7 +517,6 @@ def _internal_init(__self__, logging_config: Optional[pulumi.Input[pulumi.InputType['FunctionLoggingConfigArgs']]] = None, memory_size: Optional[pulumi.Input[int]] = None, package_type: Optional[pulumi.Input['FunctionPackageType']] = None, - policy: Optional[Any] = None, reserved_concurrent_executions: Optional[pulumi.Input[int]] = None, role: Optional[pulumi.Input[str]] = None, runtime: Optional[pulumi.Input[str]] = None, @@ -572,7 +553,6 @@ def _internal_init(__self__, __props__.__dict__["logging_config"] = logging_config __props__.__dict__["memory_size"] = memory_size __props__.__dict__["package_type"] = package_type - __props__.__dict__["policy"] = policy __props__.__dict__["reserved_concurrent_executions"] = reserved_concurrent_executions if role is None and not opts.urn: raise TypeError("Missing required property 'role'") @@ -627,7 +607,6 @@ def get(resource_name: str, __props__.__dict__["logging_config"] = None __props__.__dict__["memory_size"] = None __props__.__dict__["package_type"] = None - __props__.__dict__["policy"] = None __props__.__dict__["reserved_concurrent_executions"] = None __props__.__dict__["role"] = None __props__.__dict__["runtime"] = None @@ -773,14 +752,6 @@ def package_type(self) -> pulumi.Output[Optional['FunctionPackageType']]: """ return pulumi.get(self, "package_type") - @property - @pulumi.getter - def policy(self) -> pulumi.Output[Optional[Any]]: - """ - The resource policy of your function - """ - return pulumi.get(self, "policy") - @property @pulumi.getter(name="reservedConcurrentExecutions") def reserved_concurrent_executions(self) -> pulumi.Output[Optional[int]]: diff --git a/sdk/python/pulumi_aws_native/lambda_/get_event_invoke_config.py b/sdk/python/pulumi_aws_native/lambda_/get_event_invoke_config.py index 9dcbcc8943..dcf45c6cce 100644 --- a/sdk/python/pulumi_aws_native/lambda_/get_event_invoke_config.py +++ b/sdk/python/pulumi_aws_native/lambda_/get_event_invoke_config.py @@ -19,13 +19,10 @@ @pulumi.output_type class GetEventInvokeConfigResult: - def __init__(__self__, destination_config=None, id=None, maximum_event_age_in_seconds=None, maximum_retry_attempts=None): + def __init__(__self__, destination_config=None, maximum_event_age_in_seconds=None, maximum_retry_attempts=None): if destination_config and not isinstance(destination_config, dict): raise TypeError("Expected argument 'destination_config' to be a dict") pulumi.set(__self__, "destination_config", destination_config) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) if maximum_event_age_in_seconds and not isinstance(maximum_event_age_in_seconds, int): raise TypeError("Expected argument 'maximum_event_age_in_seconds' to be a int") pulumi.set(__self__, "maximum_event_age_in_seconds", maximum_event_age_in_seconds) @@ -38,19 +35,20 @@ def __init__(__self__, destination_config=None, id=None, maximum_event_age_in_se def destination_config(self) -> Optional['outputs.EventInvokeConfigDestinationConfig']: return pulumi.get(self, "destination_config") - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") - @property @pulumi.getter(name="maximumEventAgeInSeconds") def maximum_event_age_in_seconds(self) -> Optional[int]: + """ + The maximum age of a request that Lambda sends to a function for processing. + """ return pulumi.get(self, "maximum_event_age_in_seconds") @property @pulumi.getter(name="maximumRetryAttempts") def maximum_retry_attempts(self) -> Optional[int]: + """ + The maximum number of times to retry when the function returns an error. + """ return pulumi.get(self, "maximum_retry_attempts") @@ -61,32 +59,41 @@ def __await__(self): yield self return GetEventInvokeConfigResult( destination_config=self.destination_config, - id=self.id, maximum_event_age_in_seconds=self.maximum_event_age_in_seconds, maximum_retry_attempts=self.maximum_retry_attempts) -def get_event_invoke_config(id: Optional[str] = None, +def get_event_invoke_config(function_name: Optional[str] = None, + qualifier: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetEventInvokeConfigResult: """ - Resource Type definition for AWS::Lambda::EventInvokeConfig + The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. + + + :param str function_name: The name of the Lambda function. + :param str qualifier: The identifier of a version or alias. """ __args__ = dict() - __args__['id'] = id + __args__['functionName'] = function_name + __args__['qualifier'] = qualifier opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:lambda:getEventInvokeConfig', __args__, opts=opts, typ=GetEventInvokeConfigResult).value return AwaitableGetEventInvokeConfigResult( destination_config=pulumi.get(__ret__, 'destination_config'), - id=pulumi.get(__ret__, 'id'), maximum_event_age_in_seconds=pulumi.get(__ret__, 'maximum_event_age_in_seconds'), maximum_retry_attempts=pulumi.get(__ret__, 'maximum_retry_attempts')) @_utilities.lift_output_func(get_event_invoke_config) -def get_event_invoke_config_output(id: Optional[pulumi.Input[str]] = None, +def get_event_invoke_config_output(function_name: Optional[pulumi.Input[str]] = None, + qualifier: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetEventInvokeConfigResult]: """ - Resource Type definition for AWS::Lambda::EventInvokeConfig + The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias. + + + :param str function_name: The name of the Lambda function. + :param str qualifier: The identifier of a version or alias. """ ... diff --git a/sdk/python/pulumi_aws_native/lambda_/outputs.py b/sdk/python/pulumi_aws_native/lambda_/outputs.py index 787dc2db72..8735c58510 100644 --- a/sdk/python/pulumi_aws_native/lambda_/outputs.py +++ b/sdk/python/pulumi_aws_native/lambda_/outputs.py @@ -226,6 +226,9 @@ def untrusted_artifact_on_deployment(self) -> 'CodeSigningConfigCodeSigningPolic @pulumi.output_type class EventInvokeConfigDestinationConfig(dict): + """ + A destination for events after they have been sent to a function for processing. + """ @staticmethod def __key_warning(key: str): suggest = None @@ -248,6 +251,9 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, on_failure: Optional['outputs.EventInvokeConfigOnFailure'] = None, on_success: Optional['outputs.EventInvokeConfigOnSuccess'] = None): + """ + A destination for events after they have been sent to a function for processing. + """ if on_failure is not None: pulumi.set(__self__, "on_failure", on_failure) if on_success is not None: @@ -266,25 +272,45 @@ def on_success(self) -> Optional['outputs.EventInvokeConfigOnSuccess']: @pulumi.output_type class EventInvokeConfigOnFailure(dict): + """ + The destination configuration for failed invocations. + """ def __init__(__self__, *, destination: str): + """ + The destination configuration for failed invocations. + :param str destination: The Amazon Resource Name (ARN) of the destination resource. + """ pulumi.set(__self__, "destination", destination) @property @pulumi.getter def destination(self) -> str: + """ + The Amazon Resource Name (ARN) of the destination resource. + """ return pulumi.get(self, "destination") @pulumi.output_type class EventInvokeConfigOnSuccess(dict): + """ + The destination configuration for successful invocations. + """ def __init__(__self__, *, destination: str): + """ + The destination configuration for successful invocations. + :param str destination: The Amazon Resource Name (ARN) of the destination resource. + """ pulumi.set(__self__, "destination", destination) @property @pulumi.getter def destination(self) -> str: + """ + The Amazon Resource Name (ARN) of the destination resource. + """ return pulumi.get(self, "destination") diff --git a/sdk/python/pulumi_aws_native/logs/delivery.py b/sdk/python/pulumi_aws_native/logs/delivery.py index acb8ab4ce7..d1236b9fae 100644 --- a/sdk/python/pulumi_aws_native/logs/delivery.py +++ b/sdk/python/pulumi_aws_native/logs/delivery.py @@ -21,9 +21,9 @@ def __init__(__self__, *, tags: Optional[pulumi.Input[Sequence[pulumi.Input['DeliveryTagArgs']]]] = None): """ The set of arguments for constructing a Delivery resource. - :param pulumi.Input[str] delivery_destination_arn: The value of the DeliveryDestinationArn property for this object. - :param pulumi.Input[str] delivery_source_name: The value of the DeliverySourceName property for this object. - :param pulumi.Input[Sequence[pulumi.Input['DeliveryTagArgs']]] tags: The value of the Tags property for this object. + :param pulumi.Input[str] delivery_destination_arn: The ARN of the delivery destination that is associated with this delivery. + :param pulumi.Input[str] delivery_source_name: The name of the delivery source that is associated with this delivery. + :param pulumi.Input[Sequence[pulumi.Input['DeliveryTagArgs']]] tags: The tags that have been assigned to this delivery. """ pulumi.set(__self__, "delivery_destination_arn", delivery_destination_arn) pulumi.set(__self__, "delivery_source_name", delivery_source_name) @@ -34,7 +34,7 @@ def __init__(__self__, *, @pulumi.getter(name="deliveryDestinationArn") def delivery_destination_arn(self) -> pulumi.Input[str]: """ - The value of the DeliveryDestinationArn property for this object. + The ARN of the delivery destination that is associated with this delivery. """ return pulumi.get(self, "delivery_destination_arn") @@ -46,7 +46,7 @@ def delivery_destination_arn(self, value: pulumi.Input[str]): @pulumi.getter(name="deliverySourceName") def delivery_source_name(self) -> pulumi.Input[str]: """ - The value of the DeliverySourceName property for this object. + The name of the delivery source that is associated with this delivery. """ return pulumi.get(self, "delivery_source_name") @@ -58,7 +58,7 @@ def delivery_source_name(self, value: pulumi.Input[str]): @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeliveryTagArgs']]]]: """ - The value of the Tags property for this object. + The tags that have been assigned to this delivery. """ return pulumi.get(self, "tags") @@ -77,13 +77,17 @@ def __init__(__self__, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliveryTagArgs']]]]] = None, __props__=None): """ - Resource Type definition for AWS::Logs::Delivery. + This structure contains information about one delivery in your account. + + A delivery is a connection between a logical delivery source and a logical delivery destination. + + For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[str] delivery_destination_arn: The value of the DeliveryDestinationArn property for this object. - :param pulumi.Input[str] delivery_source_name: The value of the DeliverySourceName property for this object. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliveryTagArgs']]]] tags: The value of the Tags property for this object. + :param pulumi.Input[str] delivery_destination_arn: The ARN of the delivery destination that is associated with this delivery. + :param pulumi.Input[str] delivery_source_name: The name of the delivery source that is associated with this delivery. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliveryTagArgs']]]] tags: The tags that have been assigned to this delivery. """ ... @overload @@ -92,7 +96,11 @@ def __init__(__self__, args: DeliveryArgs, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::Logs::Delivery. + This structure contains information about one delivery in your account. + + A delivery is a connection between a logical delivery source and a logical delivery destination. + + For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). :param str resource_name: The name of the resource. :param DeliveryArgs args: The arguments to use to populate this resource's properties. @@ -167,7 +175,7 @@ def get(resource_name: str, @pulumi.getter def arn(self) -> pulumi.Output[str]: """ - The value of the Arn property for this object. + The Amazon Resource Name (ARN) that uniquely identifies this delivery. """ return pulumi.get(self, "arn") @@ -175,7 +183,7 @@ def arn(self) -> pulumi.Output[str]: @pulumi.getter(name="deliveryDestinationArn") def delivery_destination_arn(self) -> pulumi.Output[str]: """ - The value of the DeliveryDestinationArn property for this object. + The ARN of the delivery destination that is associated with this delivery. """ return pulumi.get(self, "delivery_destination_arn") @@ -183,7 +191,7 @@ def delivery_destination_arn(self) -> pulumi.Output[str]: @pulumi.getter(name="deliveryDestinationType") def delivery_destination_type(self) -> pulumi.Output[str]: """ - The value of the DeliveryDestinationType property for this object. + Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. """ return pulumi.get(self, "delivery_destination_type") @@ -191,7 +199,7 @@ def delivery_destination_type(self) -> pulumi.Output[str]: @pulumi.getter(name="deliveryId") def delivery_id(self) -> pulumi.Output[str]: """ - The value of the Id property for this object. + The unique ID that identifies this delivery in your account. """ return pulumi.get(self, "delivery_id") @@ -199,7 +207,7 @@ def delivery_id(self) -> pulumi.Output[str]: @pulumi.getter(name="deliverySourceName") def delivery_source_name(self) -> pulumi.Output[str]: """ - The value of the DeliverySourceName property for this object. + The name of the delivery source that is associated with this delivery. """ return pulumi.get(self, "delivery_source_name") @@ -207,7 +215,7 @@ def delivery_source_name(self) -> pulumi.Output[str]: @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.DeliveryTag']]]: """ - The value of the Tags property for this object. + The tags that have been assigned to this delivery. """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/logs/delivery_destination.py b/sdk/python/pulumi_aws_native/logs/delivery_destination.py index f6899de943..2ff2b50af2 100644 --- a/sdk/python/pulumi_aws_native/logs/delivery_destination.py +++ b/sdk/python/pulumi_aws_native/logs/delivery_destination.py @@ -27,9 +27,9 @@ def __init__(__self__, *, The policy must be in JSON string format. Length Constraints: Maximum length of 51200 - :param pulumi.Input[str] destination_resource_arn: The ARN of the Destination Resource. - :param pulumi.Input[str] name: The unique name of the Delivery Destination. - :param pulumi.Input[Sequence[pulumi.Input['DeliveryDestinationTagArgs']]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[str] destination_resource_arn: The ARN of the AWS resource that will receive the logs. + :param pulumi.Input[str] name: The name of this delivery destination. + :param pulumi.Input[Sequence[pulumi.Input['DeliveryDestinationTagArgs']]] tags: The tags that have been assigned to this delivery destination. """ if delivery_destination_policy is not None: pulumi.set(__self__, "delivery_destination_policy", delivery_destination_policy) @@ -60,7 +60,7 @@ def delivery_destination_policy(self, value: Optional[Any]): @pulumi.getter(name="destinationResourceArn") def destination_resource_arn(self) -> Optional[pulumi.Input[str]]: """ - The ARN of the Destination Resource. + The ARN of the AWS resource that will receive the logs. """ return pulumi.get(self, "destination_resource_arn") @@ -72,7 +72,7 @@ def destination_resource_arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: """ - The unique name of the Delivery Destination. + The name of this delivery destination. """ return pulumi.get(self, "name") @@ -84,7 +84,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeliveryDestinationTagArgs']]]]: """ - An array of key-value pairs to apply to this resource. + The tags that have been assigned to this delivery destination. """ return pulumi.get(self, "tags") @@ -104,7 +104,9 @@ def __init__(__self__, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliveryDestinationTagArgs']]]]] = None, __props__=None): """ - Resource Type definition for AWS::Logs::DeliveryDestination + This structure contains information about one delivery destination in your account. + + A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. @@ -113,9 +115,9 @@ def __init__(__self__, The policy must be in JSON string format. Length Constraints: Maximum length of 51200 - :param pulumi.Input[str] destination_resource_arn: The ARN of the Destination Resource. - :param pulumi.Input[str] name: The unique name of the Delivery Destination. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliveryDestinationTagArgs']]]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[str] destination_resource_arn: The ARN of the AWS resource that will receive the logs. + :param pulumi.Input[str] name: The name of this delivery destination. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliveryDestinationTagArgs']]]] tags: The tags that have been assigned to this delivery destination. """ ... @overload @@ -124,7 +126,9 @@ def __init__(__self__, args: Optional[DeliveryDestinationArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::Logs::DeliveryDestination + This structure contains information about one delivery destination in your account. + + A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. :param str resource_name: The name of the resource. :param DeliveryDestinationArgs args: The arguments to use to populate this resource's properties. @@ -196,7 +200,7 @@ def get(resource_name: str, @pulumi.getter def arn(self) -> pulumi.Output[str]: """ - The value of the Arn property for this object. + The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. """ return pulumi.get(self, "arn") @@ -216,7 +220,7 @@ def delivery_destination_policy(self) -> pulumi.Output[Optional[Any]]: @pulumi.getter(name="deliveryDestinationType") def delivery_destination_type(self) -> pulumi.Output[str]: """ - The value of the DeliveryDestinationType property for this object. + Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. """ return pulumi.get(self, "delivery_destination_type") @@ -224,7 +228,7 @@ def delivery_destination_type(self) -> pulumi.Output[str]: @pulumi.getter(name="destinationResourceArn") def destination_resource_arn(self) -> pulumi.Output[Optional[str]]: """ - The ARN of the Destination Resource. + The ARN of the AWS resource that will receive the logs. """ return pulumi.get(self, "destination_resource_arn") @@ -232,7 +236,7 @@ def destination_resource_arn(self) -> pulumi.Output[Optional[str]]: @pulumi.getter def name(self) -> pulumi.Output[str]: """ - The unique name of the Delivery Destination. + The name of this delivery destination. """ return pulumi.get(self, "name") @@ -240,7 +244,7 @@ def name(self) -> pulumi.Output[str]: @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.DeliveryDestinationTag']]]: """ - An array of key-value pairs to apply to this resource. + The tags that have been assigned to this delivery destination. """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/logs/delivery_source.py b/sdk/python/pulumi_aws_native/logs/delivery_source.py index bb824f1728..da0fb8c457 100644 --- a/sdk/python/pulumi_aws_native/logs/delivery_source.py +++ b/sdk/python/pulumi_aws_native/logs/delivery_source.py @@ -25,7 +25,7 @@ def __init__(__self__, *, :param pulumi.Input[str] log_type: The type of logs being delivered. Only mandatory when the resourceArn could match more than one. In such a case, the error message will contain all the possible options. :param pulumi.Input[str] name: The unique name of the Log source. :param pulumi.Input[str] resource_arn: The ARN of the resource that will be sending the logs. - :param pulumi.Input[Sequence[pulumi.Input['DeliverySourceTagArgs']]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[Sequence[pulumi.Input['DeliverySourceTagArgs']]] tags: The tags that have been assigned to this delivery source. """ if log_type is not None: pulumi.set(__self__, "log_type", log_type) @@ -76,7 +76,7 @@ def resource_arn(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeliverySourceTagArgs']]]]: """ - An array of key-value pairs to apply to this resource. + The tags that have been assigned to this delivery source. """ return pulumi.get(self, "tags") @@ -96,14 +96,16 @@ def __init__(__self__, tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliverySourceTagArgs']]]]] = None, __props__=None): """ - Resource Type definition for AWS::Logs::DeliverySource. + A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + + Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] log_type: The type of logs being delivered. Only mandatory when the resourceArn could match more than one. In such a case, the error message will contain all the possible options. :param pulumi.Input[str] name: The unique name of the Log source. :param pulumi.Input[str] resource_arn: The ARN of the resource that will be sending the logs. - :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliverySourceTagArgs']]]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['DeliverySourceTagArgs']]]] tags: The tags that have been assigned to this delivery source. """ ... @overload @@ -112,7 +114,9 @@ def __init__(__self__, args: Optional[DeliverySourceArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::Logs::DeliverySource. + A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + + Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). :param str resource_name: The name of the resource. :param DeliverySourceArgs args: The arguments to use to populate this resource's properties. @@ -186,7 +190,7 @@ def get(resource_name: str, @pulumi.getter def arn(self) -> pulumi.Output[str]: """ - The ARN of the Aqueduct Source. + The Amazon Resource Name (ARN) that uniquely identifies this delivery source. """ return pulumi.get(self, "arn") @@ -218,7 +222,7 @@ def resource_arn(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="resourceArns") def resource_arns(self) -> pulumi.Output[Sequence[str]]: """ - List of ARN of the resource that will be sending the logs + This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. """ return pulumi.get(self, "resource_arns") @@ -226,7 +230,7 @@ def resource_arns(self) -> pulumi.Output[Sequence[str]]: @pulumi.getter def service(self) -> pulumi.Output[str]: """ - The service generating the log + The AWS service that is sending logs. """ return pulumi.get(self, "service") @@ -234,7 +238,7 @@ def service(self) -> pulumi.Output[str]: @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['outputs.DeliverySourceTag']]]: """ - An array of key-value pairs to apply to this resource. + The tags that have been assigned to this delivery source. """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/logs/get_delivery.py b/sdk/python/pulumi_aws_native/logs/get_delivery.py index 5cabdcc352..ef3c370aab 100644 --- a/sdk/python/pulumi_aws_native/logs/get_delivery.py +++ b/sdk/python/pulumi_aws_native/logs/get_delivery.py @@ -37,7 +37,7 @@ def __init__(__self__, arn=None, delivery_destination_type=None, delivery_id=Non @pulumi.getter def arn(self) -> Optional[str]: """ - The value of the Arn property for this object. + The Amazon Resource Name (ARN) that uniquely identifies this delivery. """ return pulumi.get(self, "arn") @@ -45,7 +45,7 @@ def arn(self) -> Optional[str]: @pulumi.getter(name="deliveryDestinationType") def delivery_destination_type(self) -> Optional[str]: """ - The value of the DeliveryDestinationType property for this object. + Displays whether the delivery destination associated with this delivery is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. """ return pulumi.get(self, "delivery_destination_type") @@ -53,7 +53,7 @@ def delivery_destination_type(self) -> Optional[str]: @pulumi.getter(name="deliveryId") def delivery_id(self) -> Optional[str]: """ - The value of the Id property for this object. + The unique ID that identifies this delivery in your account. """ return pulumi.get(self, "delivery_id") @@ -61,7 +61,7 @@ def delivery_id(self) -> Optional[str]: @pulumi.getter def tags(self) -> Optional[Sequence['outputs.DeliveryTag']]: """ - The value of the Tags property for this object. + The tags that have been assigned to this delivery. """ return pulumi.get(self, "tags") @@ -81,10 +81,14 @@ def __await__(self): def get_delivery(delivery_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDeliveryResult: """ - Resource Type definition for AWS::Logs::Delivery. + This structure contains information about one delivery in your account. + A delivery is a connection between a logical delivery source and a logical delivery destination. - :param str delivery_id: The value of the Id property for this object. + For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). + + + :param str delivery_id: The unique ID that identifies this delivery in your account. """ __args__ = dict() __args__['deliveryId'] = delivery_id @@ -102,9 +106,13 @@ def get_delivery(delivery_id: Optional[str] = None, def get_delivery_output(delivery_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDeliveryResult]: """ - Resource Type definition for AWS::Logs::Delivery. + This structure contains information about one delivery in your account. + + A delivery is a connection between a logical delivery source and a logical delivery destination. + + For more information, see [CreateDelivery](https://docs.aws.amazon.com/AmazonCloudWatchLogs/latest/APIReference/API_CreateDelivery.html). - :param str delivery_id: The value of the Id property for this object. + :param str delivery_id: The unique ID that identifies this delivery in your account. """ ... diff --git a/sdk/python/pulumi_aws_native/logs/get_delivery_destination.py b/sdk/python/pulumi_aws_native/logs/get_delivery_destination.py index 89affbc54a..7ca1d27920 100644 --- a/sdk/python/pulumi_aws_native/logs/get_delivery_destination.py +++ b/sdk/python/pulumi_aws_native/logs/get_delivery_destination.py @@ -37,7 +37,7 @@ def __init__(__self__, arn=None, delivery_destination_policy=None, delivery_dest @pulumi.getter def arn(self) -> Optional[str]: """ - The value of the Arn property for this object. + The Amazon Resource Name (ARN) that uniquely identifies this delivery destination. """ return pulumi.get(self, "arn") @@ -57,7 +57,7 @@ def delivery_destination_policy(self) -> Optional[Any]: @pulumi.getter(name="deliveryDestinationType") def delivery_destination_type(self) -> Optional[str]: """ - The value of the DeliveryDestinationType property for this object. + Displays whether this delivery destination is CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. """ return pulumi.get(self, "delivery_destination_type") @@ -65,7 +65,7 @@ def delivery_destination_type(self) -> Optional[str]: @pulumi.getter def tags(self) -> Optional[Sequence['outputs.DeliveryDestinationTag']]: """ - An array of key-value pairs to apply to this resource. + The tags that have been assigned to this delivery destination. """ return pulumi.get(self, "tags") @@ -85,10 +85,12 @@ def __await__(self): def get_delivery_destination(name: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDeliveryDestinationResult: """ - Resource Type definition for AWS::Logs::DeliveryDestination + This structure contains information about one delivery destination in your account. + A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. - :param str name: The unique name of the Delivery Destination. + + :param str name: The name of this delivery destination. """ __args__ = dict() __args__['name'] = name @@ -106,9 +108,11 @@ def get_delivery_destination(name: Optional[str] = None, def get_delivery_destination_output(name: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDeliveryDestinationResult]: """ - Resource Type definition for AWS::Logs::DeliveryDestination + This structure contains information about one delivery destination in your account. + + A delivery destination is an AWS resource that represents an AWS service that logs can be sent to CloudWatch Logs, Amazon S3, are supported as Kinesis Data Firehose delivery destinations. - :param str name: The unique name of the Delivery Destination. + :param str name: The name of this delivery destination. """ ... diff --git a/sdk/python/pulumi_aws_native/logs/get_delivery_source.py b/sdk/python/pulumi_aws_native/logs/get_delivery_source.py index 89340c6ecd..a74d034f34 100644 --- a/sdk/python/pulumi_aws_native/logs/get_delivery_source.py +++ b/sdk/python/pulumi_aws_native/logs/get_delivery_source.py @@ -40,7 +40,7 @@ def __init__(__self__, arn=None, log_type=None, resource_arns=None, service=None @pulumi.getter def arn(self) -> Optional[str]: """ - The ARN of the Aqueduct Source. + The Amazon Resource Name (ARN) that uniquely identifies this delivery source. """ return pulumi.get(self, "arn") @@ -56,7 +56,7 @@ def log_type(self) -> Optional[str]: @pulumi.getter(name="resourceArns") def resource_arns(self) -> Optional[Sequence[str]]: """ - List of ARN of the resource that will be sending the logs + This array contains the ARN of the AWS resource that sends logs and is represented by this delivery source. Currently, only one ARN can be in the array. """ return pulumi.get(self, "resource_arns") @@ -64,7 +64,7 @@ def resource_arns(self) -> Optional[Sequence[str]]: @pulumi.getter def service(self) -> Optional[str]: """ - The service generating the log + The AWS service that is sending logs. """ return pulumi.get(self, "service") @@ -72,7 +72,7 @@ def service(self) -> Optional[str]: @pulumi.getter def tags(self) -> Optional[Sequence['outputs.DeliverySourceTag']]: """ - An array of key-value pairs to apply to this resource. + The tags that have been assigned to this delivery source. """ return pulumi.get(self, "tags") @@ -93,7 +93,9 @@ def __await__(self): def get_delivery_source(name: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDeliverySourceResult: """ - Resource Type definition for AWS::Logs::DeliverySource. + A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + + Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). :param str name: The unique name of the Log source. @@ -115,7 +117,9 @@ def get_delivery_source(name: Optional[str] = None, def get_delivery_source_output(name: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDeliverySourceResult]: """ - Resource Type definition for AWS::Logs::DeliverySource. + A delivery source is an AWS resource that sends logs to an AWS destination. The destination can be CloudWatch Logs, Amazon S3, or Kinesis Data Firehose. + + Only some AWS services support being configured as a delivery source. These services are listed as Supported [V2 Permissions] in the table at [Enabling logging from AWS services](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/AWS-logs-and-resource-policy.html). :param str name: The unique name of the Log source. diff --git a/sdk/python/pulumi_aws_native/opensearchservice/domain.py b/sdk/python/pulumi_aws_native/opensearchservice/domain.py index a3c789c8ce..0938ab85ef 100644 --- a/sdk/python/pulumi_aws_native/opensearchservice/domain.py +++ b/sdk/python/pulumi_aws_native/opensearchservice/domain.py @@ -26,6 +26,7 @@ def __init__(__self__, *, ebs_options: Optional[pulumi.Input['DomainEbsOptionsArgs']] = None, encryption_at_rest_options: Optional[pulumi.Input['DomainEncryptionAtRestOptionsArgs']] = None, engine_version: Optional[pulumi.Input[str]] = None, + ip_address_type: Optional[pulumi.Input[str]] = None, log_publishing_options: Optional[Any] = None, node_to_node_encryption_options: Optional[pulumi.Input['DomainNodeToNodeEncryptionOptionsArgs']] = None, off_peak_window_options: Optional[pulumi.Input['DomainOffPeakWindowOptionsArgs']] = None, @@ -57,6 +58,8 @@ def __init__(__self__, *, pulumi.set(__self__, "encryption_at_rest_options", encryption_at_rest_options) if engine_version is not None: pulumi.set(__self__, "engine_version", engine_version) + if ip_address_type is not None: + pulumi.set(__self__, "ip_address_type", ip_address_type) if log_publishing_options is not None: pulumi.set(__self__, "log_publishing_options", log_publishing_options) if node_to_node_encryption_options is not None: @@ -162,6 +165,15 @@ def engine_version(self) -> Optional[pulumi.Input[str]]: def engine_version(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "engine_version", value) + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "ip_address_type") + + @ip_address_type.setter + def ip_address_type(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "ip_address_type", value) + @property @pulumi.getter(name="logPublishingOptions") def log_publishing_options(self) -> Optional[Any]: @@ -244,6 +256,7 @@ def __init__(__self__, ebs_options: Optional[pulumi.Input[pulumi.InputType['DomainEbsOptionsArgs']]] = None, encryption_at_rest_options: Optional[pulumi.Input[pulumi.InputType['DomainEncryptionAtRestOptionsArgs']]] = None, engine_version: Optional[pulumi.Input[str]] = None, + ip_address_type: Optional[pulumi.Input[str]] = None, log_publishing_options: Optional[Any] = None, node_to_node_encryption_options: Optional[pulumi.Input[pulumi.InputType['DomainNodeToNodeEncryptionOptionsArgs']]] = None, off_peak_window_options: Optional[pulumi.Input[pulumi.InputType['DomainOffPeakWindowOptionsArgs']]] = None, @@ -293,6 +306,7 @@ def _internal_init(__self__, ebs_options: Optional[pulumi.Input[pulumi.InputType['DomainEbsOptionsArgs']]] = None, encryption_at_rest_options: Optional[pulumi.Input[pulumi.InputType['DomainEncryptionAtRestOptionsArgs']]] = None, engine_version: Optional[pulumi.Input[str]] = None, + ip_address_type: Optional[pulumi.Input[str]] = None, log_publishing_options: Optional[Any] = None, node_to_node_encryption_options: Optional[pulumi.Input[pulumi.InputType['DomainNodeToNodeEncryptionOptionsArgs']]] = None, off_peak_window_options: Optional[pulumi.Input[pulumi.InputType['DomainOffPeakWindowOptionsArgs']]] = None, @@ -319,6 +333,7 @@ def _internal_init(__self__, __props__.__dict__["ebs_options"] = ebs_options __props__.__dict__["encryption_at_rest_options"] = encryption_at_rest_options __props__.__dict__["engine_version"] = engine_version + __props__.__dict__["ip_address_type"] = ip_address_type __props__.__dict__["log_publishing_options"] = log_publishing_options __props__.__dict__["node_to_node_encryption_options"] = node_to_node_encryption_options __props__.__dict__["off_peak_window_options"] = off_peak_window_options @@ -329,6 +344,7 @@ def _internal_init(__self__, __props__.__dict__["arn"] = None __props__.__dict__["domain_arn"] = None __props__.__dict__["domain_endpoint"] = None + __props__.__dict__["domain_endpoint_v2"] = None __props__.__dict__["domain_endpoints"] = None __props__.__dict__["service_software_options"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["domain_name"]) @@ -364,11 +380,13 @@ def get(resource_name: str, __props__.__dict__["domain_arn"] = None __props__.__dict__["domain_endpoint"] = None __props__.__dict__["domain_endpoint_options"] = None + __props__.__dict__["domain_endpoint_v2"] = None __props__.__dict__["domain_endpoints"] = None __props__.__dict__["domain_name"] = None __props__.__dict__["ebs_options"] = None __props__.__dict__["encryption_at_rest_options"] = None __props__.__dict__["engine_version"] = None + __props__.__dict__["ip_address_type"] = None __props__.__dict__["log_publishing_options"] = None __props__.__dict__["node_to_node_encryption_options"] = None __props__.__dict__["off_peak_window_options"] = None @@ -424,6 +442,11 @@ def domain_endpoint(self) -> pulumi.Output[str]: def domain_endpoint_options(self) -> pulumi.Output[Optional['outputs.DomainEndpointOptions']]: return pulumi.get(self, "domain_endpoint_options") + @property + @pulumi.getter(name="domainEndpointV2") + def domain_endpoint_v2(self) -> pulumi.Output[str]: + return pulumi.get(self, "domain_endpoint_v2") + @property @pulumi.getter(name="domainEndpoints") def domain_endpoints(self) -> pulumi.Output[Any]: @@ -449,6 +472,11 @@ def encryption_at_rest_options(self) -> pulumi.Output[Optional['outputs.DomainEn def engine_version(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "engine_version") + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> pulumi.Output[Optional[str]]: + return pulumi.get(self, "ip_address_type") + @property @pulumi.getter(name="logPublishingOptions") def log_publishing_options(self) -> pulumi.Output[Optional[Any]]: diff --git a/sdk/python/pulumi_aws_native/opensearchservice/get_domain.py b/sdk/python/pulumi_aws_native/opensearchservice/get_domain.py index 6d23b476c8..d41243100c 100644 --- a/sdk/python/pulumi_aws_native/opensearchservice/get_domain.py +++ b/sdk/python/pulumi_aws_native/opensearchservice/get_domain.py @@ -19,7 +19,7 @@ @pulumi.output_type class GetDomainResult: - def __init__(__self__, access_policies=None, advanced_options=None, advanced_security_options=None, arn=None, cluster_config=None, cognito_options=None, domain_arn=None, domain_endpoint=None, domain_endpoint_options=None, domain_endpoints=None, ebs_options=None, encryption_at_rest_options=None, engine_version=None, id=None, log_publishing_options=None, node_to_node_encryption_options=None, off_peak_window_options=None, service_software_options=None, snapshot_options=None, software_update_options=None, tags=None, vpc_options=None): + def __init__(__self__, access_policies=None, advanced_options=None, advanced_security_options=None, arn=None, cluster_config=None, cognito_options=None, domain_arn=None, domain_endpoint=None, domain_endpoint_options=None, domain_endpoint_v2=None, domain_endpoints=None, ebs_options=None, encryption_at_rest_options=None, engine_version=None, id=None, ip_address_type=None, log_publishing_options=None, node_to_node_encryption_options=None, off_peak_window_options=None, service_software_options=None, snapshot_options=None, software_update_options=None, tags=None, vpc_options=None): if access_policies and not isinstance(access_policies, dict): raise TypeError("Expected argument 'access_policies' to be a dict") pulumi.set(__self__, "access_policies", access_policies) @@ -47,6 +47,9 @@ def __init__(__self__, access_policies=None, advanced_options=None, advanced_sec if domain_endpoint_options and not isinstance(domain_endpoint_options, dict): raise TypeError("Expected argument 'domain_endpoint_options' to be a dict") pulumi.set(__self__, "domain_endpoint_options", domain_endpoint_options) + if domain_endpoint_v2 and not isinstance(domain_endpoint_v2, str): + raise TypeError("Expected argument 'domain_endpoint_v2' to be a str") + pulumi.set(__self__, "domain_endpoint_v2", domain_endpoint_v2) if domain_endpoints and not isinstance(domain_endpoints, dict): raise TypeError("Expected argument 'domain_endpoints' to be a dict") pulumi.set(__self__, "domain_endpoints", domain_endpoints) @@ -62,6 +65,9 @@ def __init__(__self__, access_policies=None, advanced_options=None, advanced_sec 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 log_publishing_options and not isinstance(log_publishing_options, dict): raise TypeError("Expected argument 'log_publishing_options' to be a dict") pulumi.set(__self__, "log_publishing_options", log_publishing_options) @@ -132,6 +138,11 @@ def domain_endpoint(self) -> Optional[str]: def domain_endpoint_options(self) -> Optional['outputs.DomainEndpointOptions']: return pulumi.get(self, "domain_endpoint_options") + @property + @pulumi.getter(name="domainEndpointV2") + def domain_endpoint_v2(self) -> Optional[str]: + return pulumi.get(self, "domain_endpoint_v2") + @property @pulumi.getter(name="domainEndpoints") def domain_endpoints(self) -> Optional[Any]: @@ -157,6 +168,11 @@ def engine_version(self) -> Optional[str]: def id(self) -> Optional[str]: return pulumi.get(self, "id") + @property + @pulumi.getter(name="ipAddressType") + def ip_address_type(self) -> Optional[str]: + return pulumi.get(self, "ip_address_type") + @property @pulumi.getter(name="logPublishingOptions") def log_publishing_options(self) -> Optional[Any]: @@ -216,11 +232,13 @@ def __await__(self): domain_arn=self.domain_arn, domain_endpoint=self.domain_endpoint, domain_endpoint_options=self.domain_endpoint_options, + domain_endpoint_v2=self.domain_endpoint_v2, domain_endpoints=self.domain_endpoints, ebs_options=self.ebs_options, encryption_at_rest_options=self.encryption_at_rest_options, engine_version=self.engine_version, id=self.id, + ip_address_type=self.ip_address_type, log_publishing_options=self.log_publishing_options, node_to_node_encryption_options=self.node_to_node_encryption_options, off_peak_window_options=self.off_peak_window_options, @@ -251,11 +269,13 @@ def get_domain(domain_name: Optional[str] = None, domain_arn=pulumi.get(__ret__, 'domain_arn'), domain_endpoint=pulumi.get(__ret__, 'domain_endpoint'), domain_endpoint_options=pulumi.get(__ret__, 'domain_endpoint_options'), + domain_endpoint_v2=pulumi.get(__ret__, 'domain_endpoint_v2'), domain_endpoints=pulumi.get(__ret__, 'domain_endpoints'), ebs_options=pulumi.get(__ret__, 'ebs_options'), encryption_at_rest_options=pulumi.get(__ret__, 'encryption_at_rest_options'), engine_version=pulumi.get(__ret__, 'engine_version'), id=pulumi.get(__ret__, 'id'), + ip_address_type=pulumi.get(__ret__, 'ip_address_type'), log_publishing_options=pulumi.get(__ret__, 'log_publishing_options'), node_to_node_encryption_options=pulumi.get(__ret__, 'node_to_node_encryption_options'), off_peak_window_options=pulumi.get(__ret__, 'off_peak_window_options'), diff --git a/sdk/python/pulumi_aws_native/osis/_inputs.py b/sdk/python/pulumi_aws_native/osis/_inputs.py index 6e9a090e15..ac01e4e4ee 100644 --- a/sdk/python/pulumi_aws_native/osis/_inputs.py +++ b/sdk/python/pulumi_aws_native/osis/_inputs.py @@ -10,29 +10,76 @@ from .. import _utilities __all__ = [ + 'PipelineBufferOptionsArgs', + 'PipelineEncryptionAtRestOptionsArgs', 'PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs', 'PipelineLogPublishingOptionsArgs', 'PipelineTagArgs', 'PipelineVpcOptionsArgs', ] +@pulumi.input_type +class PipelineBufferOptionsArgs: + def __init__(__self__, *, + persistent_buffer_enabled: pulumi.Input[bool]): + """ + Key-value pairs to configure buffering. + :param pulumi.Input[bool] persistent_buffer_enabled: Whether persistent buffering should be enabled. + """ + pulumi.set(__self__, "persistent_buffer_enabled", persistent_buffer_enabled) + + @property + @pulumi.getter(name="persistentBufferEnabled") + def persistent_buffer_enabled(self) -> pulumi.Input[bool]: + """ + Whether persistent buffering should be enabled. + """ + return pulumi.get(self, "persistent_buffer_enabled") + + @persistent_buffer_enabled.setter + def persistent_buffer_enabled(self, value: pulumi.Input[bool]): + pulumi.set(self, "persistent_buffer_enabled", value) + + +@pulumi.input_type +class PipelineEncryptionAtRestOptionsArgs: + def __init__(__self__, *, + kms_key_arn: pulumi.Input[str]): + """ + Key-value pairs to configure encryption at rest. + :param pulumi.Input[str] kms_key_arn: The KMS key to use for encrypting data. By default an AWS owned key is used + """ + pulumi.set(__self__, "kms_key_arn", kms_key_arn) + + @property + @pulumi.getter(name="kmsKeyArn") + def kms_key_arn(self) -> pulumi.Input[str]: + """ + The KMS key to use for encrypting data. By default an AWS owned key is used + """ + return pulumi.get(self, "kms_key_arn") + + @kms_key_arn.setter + def kms_key_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "kms_key_arn", value) + + @pulumi.input_type class PipelineLogPublishingOptionsCloudWatchLogDestinationPropertiesArgs: def __init__(__self__, *, - log_group: Optional[pulumi.Input[str]] = None): + log_group: pulumi.Input[str]): """ The destination for OpenSearch Ingestion Service logs sent to Amazon CloudWatch. """ - if log_group is not None: - pulumi.set(__self__, "log_group", log_group) + pulumi.set(__self__, "log_group", log_group) @property @pulumi.getter(name="logGroup") - def log_group(self) -> Optional[pulumi.Input[str]]: + def log_group(self) -> pulumi.Input[str]: return pulumi.get(self, "log_group") @log_group.setter - def log_group(self, value: Optional[pulumi.Input[str]]): + def log_group(self, value: pulumi.Input[str]): pulumi.set(self, "log_group", value) @@ -117,17 +164,28 @@ def value(self, value: pulumi.Input[str]): @pulumi.input_type class PipelineVpcOptionsArgs: def __init__(__self__, *, - security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + subnet_ids: pulumi.Input[Sequence[pulumi.Input[str]]], + security_group_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ Container for the values required to configure VPC access for the pipeline. If you don't specify these values, OpenSearch Ingestion Service creates the pipeline with a public endpoint. - :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security groups associated with the VPC endpoint. :param pulumi.Input[Sequence[pulumi.Input[str]]] subnet_ids: A list of subnet IDs associated with the VPC endpoint. + :param pulumi.Input[Sequence[pulumi.Input[str]]] security_group_ids: A list of security groups associated with the VPC endpoint. """ + pulumi.set(__self__, "subnet_ids", subnet_ids) if security_group_ids is not None: pulumi.set(__self__, "security_group_ids", security_group_ids) - if subnet_ids is not None: - pulumi.set(__self__, "subnet_ids", subnet_ids) + + @property + @pulumi.getter(name="subnetIds") + def subnet_ids(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + """ + A list of subnet IDs associated with the VPC endpoint. + """ + return pulumi.get(self, "subnet_ids") + + @subnet_ids.setter + def subnet_ids(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "subnet_ids", value) @property @pulumi.getter(name="securityGroupIds") @@ -141,16 +199,4 @@ 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="subnetIds") - def subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - A list of subnet IDs associated with the VPC endpoint. - """ - return pulumi.get(self, "subnet_ids") - - @subnet_ids.setter - def subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "subnet_ids", value) - diff --git a/sdk/python/pulumi_aws_native/osis/get_pipeline.py b/sdk/python/pulumi_aws_native/osis/get_pipeline.py index fe7d5b726d..6318de87e0 100644 --- a/sdk/python/pulumi_aws_native/osis/get_pipeline.py +++ b/sdk/python/pulumi_aws_native/osis/get_pipeline.py @@ -19,7 +19,13 @@ @pulumi.output_type class GetPipelineResult: - def __init__(__self__, ingest_endpoint_urls=None, log_publishing_options=None, max_units=None, min_units=None, pipeline_arn=None, pipeline_configuration_body=None, tags=None, vpc_endpoints=None): + def __init__(__self__, buffer_options=None, encryption_at_rest_options=None, ingest_endpoint_urls=None, log_publishing_options=None, max_units=None, min_units=None, pipeline_arn=None, pipeline_configuration_body=None, tags=None, vpc_endpoints=None): + if buffer_options and not isinstance(buffer_options, dict): + raise TypeError("Expected argument 'buffer_options' to be a dict") + pulumi.set(__self__, "buffer_options", buffer_options) + if encryption_at_rest_options and not isinstance(encryption_at_rest_options, dict): + raise TypeError("Expected argument 'encryption_at_rest_options' to be a dict") + pulumi.set(__self__, "encryption_at_rest_options", encryption_at_rest_options) if ingest_endpoint_urls and not isinstance(ingest_endpoint_urls, list): raise TypeError("Expected argument 'ingest_endpoint_urls' to be a list") pulumi.set(__self__, "ingest_endpoint_urls", ingest_endpoint_urls) @@ -45,6 +51,16 @@ def __init__(__self__, ingest_endpoint_urls=None, log_publishing_options=None, m raise TypeError("Expected argument 'vpc_endpoints' to be a list") pulumi.set(__self__, "vpc_endpoints", vpc_endpoints) + @property + @pulumi.getter(name="bufferOptions") + def buffer_options(self) -> Optional['outputs.PipelineBufferOptions']: + return pulumi.get(self, "buffer_options") + + @property + @pulumi.getter(name="encryptionAtRestOptions") + def encryption_at_rest_options(self) -> Optional['outputs.PipelineEncryptionAtRestOptions']: + return pulumi.get(self, "encryption_at_rest_options") + @property @pulumi.getter(name="ingestEndpointUrls") def ingest_endpoint_urls(self) -> Optional[Sequence[str]]: @@ -113,6 +129,8 @@ def __await__(self): if False: yield self return GetPipelineResult( + buffer_options=self.buffer_options, + encryption_at_rest_options=self.encryption_at_rest_options, ingest_endpoint_urls=self.ingest_endpoint_urls, log_publishing_options=self.log_publishing_options, max_units=self.max_units, @@ -137,6 +155,8 @@ def get_pipeline(pipeline_arn: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:osis:getPipeline', __args__, opts=opts, typ=GetPipelineResult).value return AwaitableGetPipelineResult( + buffer_options=pulumi.get(__ret__, 'buffer_options'), + encryption_at_rest_options=pulumi.get(__ret__, 'encryption_at_rest_options'), ingest_endpoint_urls=pulumi.get(__ret__, 'ingest_endpoint_urls'), log_publishing_options=pulumi.get(__ret__, 'log_publishing_options'), max_units=pulumi.get(__ret__, 'max_units'), diff --git a/sdk/python/pulumi_aws_native/osis/outputs.py b/sdk/python/pulumi_aws_native/osis/outputs.py index 7f63c04400..e0e153d4a3 100644 --- a/sdk/python/pulumi_aws_native/osis/outputs.py +++ b/sdk/python/pulumi_aws_native/osis/outputs.py @@ -11,6 +11,8 @@ from . import outputs __all__ = [ + 'PipelineBufferOptions', + 'PipelineEncryptionAtRestOptions', 'PipelineLogPublishingOptions', 'PipelineLogPublishingOptionsCloudWatchLogDestinationProperties', 'PipelineTag', @@ -18,6 +20,84 @@ 'PipelineVpcOptions', ] +@pulumi.output_type +class PipelineBufferOptions(dict): + """ + Key-value pairs to configure buffering. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "persistentBufferEnabled": + suggest = "persistent_buffer_enabled" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in PipelineBufferOptions. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + PipelineBufferOptions.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + PipelineBufferOptions.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + persistent_buffer_enabled: bool): + """ + Key-value pairs to configure buffering. + :param bool persistent_buffer_enabled: Whether persistent buffering should be enabled. + """ + pulumi.set(__self__, "persistent_buffer_enabled", persistent_buffer_enabled) + + @property + @pulumi.getter(name="persistentBufferEnabled") + def persistent_buffer_enabled(self) -> bool: + """ + Whether persistent buffering should be enabled. + """ + return pulumi.get(self, "persistent_buffer_enabled") + + +@pulumi.output_type +class PipelineEncryptionAtRestOptions(dict): + """ + Key-value pairs to configure encryption at rest. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "kmsKeyArn": + suggest = "kms_key_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in PipelineEncryptionAtRestOptions. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + PipelineEncryptionAtRestOptions.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + PipelineEncryptionAtRestOptions.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + kms_key_arn: str): + """ + Key-value pairs to configure encryption at rest. + :param str kms_key_arn: The KMS key to use for encrypting data. By default an AWS owned key is used + """ + pulumi.set(__self__, "kms_key_arn", kms_key_arn) + + @property + @pulumi.getter(name="kmsKeyArn") + def kms_key_arn(self) -> str: + """ + The KMS key to use for encrypting data. By default an AWS owned key is used + """ + return pulumi.get(self, "kms_key_arn") + + @pulumi.output_type class PipelineLogPublishingOptions(dict): """ @@ -95,16 +175,15 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - log_group: Optional[str] = None): + log_group: str): """ The destination for OpenSearch Ingestion Service logs sent to Amazon CloudWatch. """ - if log_group is not None: - pulumi.set(__self__, "log_group", log_group) + pulumi.set(__self__, "log_group", log_group) @property @pulumi.getter(name="logGroup") - def log_group(self) -> Optional[str]: + def log_group(self) -> str: return pulumi.get(self, "log_group") @@ -213,10 +292,10 @@ class PipelineVpcOptions(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "securityGroupIds": - suggest = "security_group_ids" - elif key == "subnetIds": + if key == "subnetIds": suggest = "subnet_ids" + elif key == "securityGroupIds": + suggest = "security_group_ids" if suggest: pulumi.log.warn(f"Key '{key}' not found in PipelineVpcOptions. Access the value via the '{suggest}' property getter instead.") @@ -230,32 +309,31 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - security_group_ids: Optional[Sequence[str]] = None, - subnet_ids: Optional[Sequence[str]] = None): + subnet_ids: Sequence[str], + security_group_ids: Optional[Sequence[str]] = None): """ Container for the values required to configure VPC access for the pipeline. If you don't specify these values, OpenSearch Ingestion Service creates the pipeline with a public endpoint. - :param Sequence[str] security_group_ids: A list of security groups associated with the VPC endpoint. :param Sequence[str] subnet_ids: A list of subnet IDs associated with the VPC endpoint. + :param Sequence[str] security_group_ids: A list of security groups associated with the VPC endpoint. """ + pulumi.set(__self__, "subnet_ids", subnet_ids) if security_group_ids is not None: pulumi.set(__self__, "security_group_ids", security_group_ids) - if subnet_ids is not None: - pulumi.set(__self__, "subnet_ids", subnet_ids) @property - @pulumi.getter(name="securityGroupIds") - def security_group_ids(self) -> Optional[Sequence[str]]: + @pulumi.getter(name="subnetIds") + def subnet_ids(self) -> Sequence[str]: """ - A list of security groups associated with the VPC endpoint. + A list of subnet IDs associated with the VPC endpoint. """ - return pulumi.get(self, "security_group_ids") + return pulumi.get(self, "subnet_ids") @property - @pulumi.getter(name="subnetIds") - def subnet_ids(self) -> Optional[Sequence[str]]: + @pulumi.getter(name="securityGroupIds") + def security_group_ids(self) -> Optional[Sequence[str]]: """ - A list of subnet IDs associated with the VPC endpoint. + A list of security groups associated with the VPC endpoint. """ - return pulumi.get(self, "subnet_ids") + return pulumi.get(self, "security_group_ids") diff --git a/sdk/python/pulumi_aws_native/osis/pipeline.py b/sdk/python/pulumi_aws_native/osis/pipeline.py index 22ebd51269..9ff23cf63d 100644 --- a/sdk/python/pulumi_aws_native/osis/pipeline.py +++ b/sdk/python/pulumi_aws_native/osis/pipeline.py @@ -19,6 +19,8 @@ def __init__(__self__, *, max_units: pulumi.Input[int], min_units: pulumi.Input[int], pipeline_configuration_body: pulumi.Input[str], + buffer_options: Optional[pulumi.Input['PipelineBufferOptionsArgs']] = None, + encryption_at_rest_options: Optional[pulumi.Input['PipelineEncryptionAtRestOptionsArgs']] = None, log_publishing_options: Optional[pulumi.Input['PipelineLogPublishingOptionsArgs']] = None, pipeline_name: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['PipelineTagArgs']]]] = None, @@ -34,6 +36,10 @@ def __init__(__self__, *, pulumi.set(__self__, "max_units", max_units) pulumi.set(__self__, "min_units", min_units) pulumi.set(__self__, "pipeline_configuration_body", pipeline_configuration_body) + if buffer_options is not None: + pulumi.set(__self__, "buffer_options", buffer_options) + if encryption_at_rest_options is not None: + pulumi.set(__self__, "encryption_at_rest_options", encryption_at_rest_options) if log_publishing_options is not None: pulumi.set(__self__, "log_publishing_options", log_publishing_options) if pipeline_name is not None: @@ -79,6 +85,24 @@ def pipeline_configuration_body(self) -> pulumi.Input[str]: def pipeline_configuration_body(self, value: pulumi.Input[str]): pulumi.set(self, "pipeline_configuration_body", value) + @property + @pulumi.getter(name="bufferOptions") + def buffer_options(self) -> Optional[pulumi.Input['PipelineBufferOptionsArgs']]: + return pulumi.get(self, "buffer_options") + + @buffer_options.setter + def buffer_options(self, value: Optional[pulumi.Input['PipelineBufferOptionsArgs']]): + pulumi.set(self, "buffer_options", value) + + @property + @pulumi.getter(name="encryptionAtRestOptions") + def encryption_at_rest_options(self) -> Optional[pulumi.Input['PipelineEncryptionAtRestOptionsArgs']]: + return pulumi.get(self, "encryption_at_rest_options") + + @encryption_at_rest_options.setter + def encryption_at_rest_options(self, value: Optional[pulumi.Input['PipelineEncryptionAtRestOptionsArgs']]): + pulumi.set(self, "encryption_at_rest_options", value) + @property @pulumi.getter(name="logPublishingOptions") def log_publishing_options(self) -> Optional[pulumi.Input['PipelineLogPublishingOptionsArgs']]: @@ -127,6 +151,8 @@ class Pipeline(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + buffer_options: Optional[pulumi.Input[pulumi.InputType['PipelineBufferOptionsArgs']]] = None, + encryption_at_rest_options: Optional[pulumi.Input[pulumi.InputType['PipelineEncryptionAtRestOptionsArgs']]] = None, log_publishing_options: Optional[pulumi.Input[pulumi.InputType['PipelineLogPublishingOptionsArgs']]] = None, max_units: Optional[pulumi.Input[int]] = None, min_units: Optional[pulumi.Input[int]] = None, @@ -170,6 +196,8 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + buffer_options: Optional[pulumi.Input[pulumi.InputType['PipelineBufferOptionsArgs']]] = None, + encryption_at_rest_options: Optional[pulumi.Input[pulumi.InputType['PipelineEncryptionAtRestOptionsArgs']]] = None, log_publishing_options: Optional[pulumi.Input[pulumi.InputType['PipelineLogPublishingOptionsArgs']]] = None, max_units: Optional[pulumi.Input[int]] = None, min_units: Optional[pulumi.Input[int]] = None, @@ -186,6 +214,8 @@ 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__ = PipelineArgs.__new__(PipelineArgs) + __props__.__dict__["buffer_options"] = buffer_options + __props__.__dict__["encryption_at_rest_options"] = encryption_at_rest_options __props__.__dict__["log_publishing_options"] = log_publishing_options if max_units is None and not opts.urn: raise TypeError("Missing required property 'max_units'") @@ -226,6 +256,8 @@ def get(resource_name: str, __props__ = PipelineArgs.__new__(PipelineArgs) + __props__.__dict__["buffer_options"] = None + __props__.__dict__["encryption_at_rest_options"] = None __props__.__dict__["ingest_endpoint_urls"] = None __props__.__dict__["log_publishing_options"] = None __props__.__dict__["max_units"] = None @@ -238,6 +270,16 @@ def get(resource_name: str, __props__.__dict__["vpc_options"] = None return Pipeline(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="bufferOptions") + def buffer_options(self) -> pulumi.Output[Optional['outputs.PipelineBufferOptions']]: + return pulumi.get(self, "buffer_options") + + @property + @pulumi.getter(name="encryptionAtRestOptions") + def encryption_at_rest_options(self) -> pulumi.Output[Optional['outputs.PipelineEncryptionAtRestOptions']]: + return pulumi.get(self, "encryption_at_rest_options") + @property @pulumi.getter(name="ingestEndpointUrls") def ingest_endpoint_urls(self) -> pulumi.Output[Sequence[str]]: diff --git a/sdk/python/pulumi_aws_native/route53resolver/get_resolver_config.py b/sdk/python/pulumi_aws_native/route53resolver/get_resolver_config.py index 54a58d6203..864b9749d9 100644 --- a/sdk/python/pulumi_aws_native/route53resolver/get_resolver_config.py +++ b/sdk/python/pulumi_aws_native/route53resolver/get_resolver_config.py @@ -66,16 +66,16 @@ def __await__(self): owner_id=self.owner_id) -def get_resolver_config(id: Optional[str] = None, +def get_resolver_config(resource_id: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetResolverConfigResult: """ Resource schema for AWS::Route53Resolver::ResolverConfig. - :param str id: Id + :param str resource_id: ResourceId """ __args__ = dict() - __args__['id'] = id + __args__['resourceId'] = resource_id opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:route53resolver:getResolverConfig', __args__, opts=opts, typ=GetResolverConfigResult).value @@ -86,12 +86,12 @@ def get_resolver_config(id: Optional[str] = None, @_utilities.lift_output_func(get_resolver_config) -def get_resolver_config_output(id: Optional[pulumi.Input[str]] = None, +def get_resolver_config_output(resource_id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetResolverConfigResult]: """ Resource schema for AWS::Route53Resolver::ResolverConfig. - :param str id: Id + :param str resource_id: ResourceId """ ... diff --git a/sdk/python/pulumi_aws_native/s3/_enums.py b/sdk/python/pulumi_aws_native/s3/_enums.py index a2aba78e87..f94125c695 100644 --- a/sdk/python/pulumi_aws_native/s3/_enums.py +++ b/sdk/python/pulumi_aws_native/s3/_enums.py @@ -151,6 +151,9 @@ class BucketInventoryConfigurationOptionalFieldsItem(str, Enum): OBJECT_LOCK_LEGAL_HOLD_STATUS = "ObjectLockLegalHoldStatus" INTELLIGENT_TIERING_ACCESS_TIER = "IntelligentTieringAccessTier" BUCKET_KEY_STATUS = "BucketKeyStatus" + CHECKSUM_ALGORITHM = "ChecksumAlgorithm" + OBJECT_ACCESS_CONTROL_LIST = "ObjectAccessControlList" + OBJECT_OWNER = "ObjectOwner" class BucketInventoryConfigurationScheduleFrequency(str, Enum): diff --git a/sdk/python/pulumi_aws_native/s3/_inputs.py b/sdk/python/pulumi_aws_native/s3/_inputs.py index f775633b79..0ef2b0ac34 100644 --- a/sdk/python/pulumi_aws_native/s3/_inputs.py +++ b/sdk/python/pulumi_aws_native/s3/_inputs.py @@ -70,6 +70,7 @@ 'BucketStorageClassAnalysisArgs', 'BucketTagFilterArgs', 'BucketTagArgs', + 'BucketTargetObjectKeyFormatArgs', 'BucketTieringArgs', 'BucketTopicConfigurationArgs', 'BucketTransitionArgs', @@ -1131,7 +1132,8 @@ def rules(self, value: pulumi.Input[Sequence[pulumi.Input['BucketRuleArgs']]]): class BucketLoggingConfigurationArgs: def __init__(__self__, *, destination_bucket_name: Optional[pulumi.Input[str]] = None, - log_file_prefix: Optional[pulumi.Input[str]] = None): + log_file_prefix: Optional[pulumi.Input[str]] = None, + target_object_key_format: Optional[pulumi.Input['BucketTargetObjectKeyFormatArgs']] = None): """ :param pulumi.Input[str] destination_bucket_name: The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. """ @@ -1139,6 +1141,8 @@ def __init__(__self__, *, pulumi.set(__self__, "destination_bucket_name", destination_bucket_name) if log_file_prefix is not None: pulumi.set(__self__, "log_file_prefix", log_file_prefix) + if target_object_key_format is not None: + pulumi.set(__self__, "target_object_key_format", target_object_key_format) @property @pulumi.getter(name="destinationBucketName") @@ -1161,6 +1165,15 @@ def log_file_prefix(self) -> Optional[pulumi.Input[str]]: def log_file_prefix(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "log_file_prefix", value) + @property + @pulumi.getter(name="targetObjectKeyFormat") + def target_object_key_format(self) -> Optional[pulumi.Input['BucketTargetObjectKeyFormatArgs']]: + return pulumi.get(self, "target_object_key_format") + + @target_object_key_format.setter + def target_object_key_format(self, value: Optional[pulumi.Input['BucketTargetObjectKeyFormatArgs']]): + pulumi.set(self, "target_object_key_format", value) + @pulumi.input_type class BucketMetricsConfigurationArgs: @@ -2649,6 +2662,15 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class BucketTargetObjectKeyFormatArgs: + def __init__(__self__): + """ + Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. + """ + pass + + @pulumi.input_type class BucketTieringArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/s3/outputs.py b/sdk/python/pulumi_aws_native/s3/outputs.py index cc9e1cf995..abd9f9f3ab 100644 --- a/sdk/python/pulumi_aws_native/s3/outputs.py +++ b/sdk/python/pulumi_aws_native/s3/outputs.py @@ -71,6 +71,7 @@ 'BucketStorageClassAnalysis', 'BucketTag', 'BucketTagFilter', + 'BucketTargetObjectKeyFormat', 'BucketTiering', 'BucketTopicConfiguration', 'BucketTransition', @@ -1237,6 +1238,8 @@ def __key_warning(key: str): suggest = "destination_bucket_name" elif key == "logFilePrefix": suggest = "log_file_prefix" + elif key == "targetObjectKeyFormat": + suggest = "target_object_key_format" if suggest: pulumi.log.warn(f"Key '{key}' not found in BucketLoggingConfiguration. Access the value via the '{suggest}' property getter instead.") @@ -1251,7 +1254,8 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, destination_bucket_name: Optional[str] = None, - log_file_prefix: Optional[str] = None): + log_file_prefix: Optional[str] = None, + target_object_key_format: Optional['outputs.BucketTargetObjectKeyFormat'] = None): """ :param str destination_bucket_name: The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined. """ @@ -1259,6 +1263,8 @@ def __init__(__self__, *, pulumi.set(__self__, "destination_bucket_name", destination_bucket_name) if log_file_prefix is not None: pulumi.set(__self__, "log_file_prefix", log_file_prefix) + if target_object_key_format is not None: + pulumi.set(__self__, "target_object_key_format", target_object_key_format) @property @pulumi.getter(name="destinationBucketName") @@ -1273,6 +1279,11 @@ def destination_bucket_name(self) -> Optional[str]: def log_file_prefix(self) -> Optional[str]: return pulumi.get(self, "log_file_prefix") + @property + @pulumi.getter(name="targetObjectKeyFormat") + def target_object_key_format(self) -> Optional['outputs.BucketTargetObjectKeyFormat']: + return pulumi.get(self, "target_object_key_format") + @pulumi.output_type class BucketMetrics(dict): @@ -2908,6 +2919,18 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class BucketTargetObjectKeyFormat(dict): + """ + Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. + """ + def __init__(__self__): + """ + Describes the key format for server access log file in the target bucket. You can choose between SimplePrefix and PartitionedPrefix. + """ + pass + + @pulumi.output_type class BucketTiering(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/s3express/_enums.py b/sdk/python/pulumi_aws_native/s3express/_enums.py index 58c88741c4..a0ca481d9c 100644 --- a/sdk/python/pulumi_aws_native/s3express/_enums.py +++ b/sdk/python/pulumi_aws_native/s3express/_enums.py @@ -11,6 +11,6 @@ class DirectoryBucketDataRedundancy(str, Enum): """ - Specifies the number of Avilability Zone that's used for redundancy for the bucket. + Specifies the number of Availability Zone that's used for redundancy for the bucket. """ SINGLE_AVAILABILITY_ZONE = "SingleAvailabilityZone" diff --git a/sdk/python/pulumi_aws_native/s3express/directory_bucket.py b/sdk/python/pulumi_aws_native/s3express/directory_bucket.py index b999ed67f1..8ae8e384eb 100644 --- a/sdk/python/pulumi_aws_native/s3express/directory_bucket.py +++ b/sdk/python/pulumi_aws_native/s3express/directory_bucket.py @@ -20,9 +20,9 @@ def __init__(__self__, *, bucket_name: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a DirectoryBucket resource. - :param pulumi.Input['DirectoryBucketDataRedundancy'] data_redundancy: Specifies the number of Avilability Zone that's used for redundancy for the bucket. + :param pulumi.Input['DirectoryBucketDataRedundancy'] data_redundancy: Specifies the number of Availability Zone that's used for redundancy for the bucket. :param pulumi.Input[str] location_name: Specifies the AZ ID of the Availability Zone where the directory bucket will be created. An example AZ ID value is 'use1-az5'. - :param pulumi.Input[str] bucket_name: Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + :param pulumi.Input[str] bucket_name: Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. """ pulumi.set(__self__, "data_redundancy", data_redundancy) pulumi.set(__self__, "location_name", location_name) @@ -33,7 +33,7 @@ def __init__(__self__, *, @pulumi.getter(name="dataRedundancy") def data_redundancy(self) -> pulumi.Input['DirectoryBucketDataRedundancy']: """ - Specifies the number of Avilability Zone that's used for redundancy for the bucket. + Specifies the number of Availability Zone that's used for redundancy for the bucket. """ return pulumi.get(self, "data_redundancy") @@ -57,7 +57,7 @@ def location_name(self, value: pulumi.Input[str]): @pulumi.getter(name="bucketName") def bucket_name(self) -> Optional[pulumi.Input[str]]: """ - Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. """ return pulumi.get(self, "bucket_name") @@ -80,8 +80,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] bucket_name: Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. - :param pulumi.Input['DirectoryBucketDataRedundancy'] data_redundancy: Specifies the number of Avilability Zone that's used for redundancy for the bucket. + :param pulumi.Input[str] bucket_name: Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + :param pulumi.Input['DirectoryBucketDataRedundancy'] data_redundancy: Specifies the number of Availability Zone that's used for redundancy for the bucket. :param pulumi.Input[str] location_name: Specifies the AZ ID of the Availability Zone where the directory bucket will be created. An example AZ ID value is 'use1-az5'. """ ... @@ -170,7 +170,7 @@ def arn(self) -> pulumi.Output[str]: @pulumi.getter(name="bucketName") def bucket_name(self) -> pulumi.Output[Optional[str]]: """ - Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. """ return pulumi.get(self, "bucket_name") @@ -178,7 +178,7 @@ def bucket_name(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="dataRedundancy") def data_redundancy(self) -> pulumi.Output['DirectoryBucketDataRedundancy']: """ - Specifies the number of Avilability Zone that's used for redundancy for the bucket. + Specifies the number of Availability Zone that's used for redundancy for the bucket. """ return pulumi.get(self, "data_redundancy") diff --git a/sdk/python/pulumi_aws_native/s3express/get_directory_bucket.py b/sdk/python/pulumi_aws_native/s3express/get_directory_bucket.py index a45a215bf6..98147ce0c9 100644 --- a/sdk/python/pulumi_aws_native/s3express/get_directory_bucket.py +++ b/sdk/python/pulumi_aws_native/s3express/get_directory_bucket.py @@ -47,7 +47,7 @@ def get_directory_bucket(bucket_name: Optional[str] = None, Resource Type definition for AWS::S3Express::DirectoryBucket. - :param str bucket_name: Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + :param str bucket_name: Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. """ __args__ = dict() __args__['bucketName'] = bucket_name @@ -65,6 +65,6 @@ def get_directory_bucket_output(bucket_name: Optional[pulumi.Input[str]] = None, Resource Type definition for AWS::S3Express::DirectoryBucket. - :param str bucket_name: Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, dots (.), and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az2--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. + :param str bucket_name: Specifies a name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Availability Zone. The bucket name must also follow the format 'bucket_base_name--az_id--x-s3' (for example, 'DOC-EXAMPLE-BUCKET--usw2-az1--x-s3'). If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name. """ ... diff --git a/sdk/python/pulumi_aws_native/sagemaker/_enums.py b/sdk/python/pulumi_aws_native/sagemaker/_enums.py index 26328a948c..27e5a20d51 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/_enums.py +++ b/sdk/python/pulumi_aws_native/sagemaker/_enums.py @@ -19,7 +19,9 @@ 'DomainRStudioServerProAppSettingsUserGroup', 'DomainResourceSpecInstanceType', 'DomainSharingSettingsNotebookOutputOption', + 'DomainUserSettingsStudioWebPortal', 'FeatureGroupFeatureDefinitionFeatureType', + 'FeatureGroupStorageType', 'FeatureGroupTableFormat', 'ImageVersionJobType', 'ImageVersionProcessor', @@ -80,6 +82,7 @@ 'UserProfileRStudioServerProAppSettingsUserGroup', 'UserProfileResourceSpecInstanceType', 'UserProfileSharingSettingsNotebookOutputOption', + 'UserProfileUserSettingsStudioWebPortal', ] @@ -147,6 +150,9 @@ class AppResourceSpecInstanceType(str, Enum): ML_P4D24XLARGE = "ml.p4d.24xlarge" ML_P4DE24XLARGE = "ml.p4de.24xlarge" ML_GEOSPATIAL_INTERACTIVE = "ml.geospatial.interactive" + ML_TRN12XLARGE = "ml.trn1.2xlarge" + ML_TRN132XLARGE = "ml.trn1.32xlarge" + ML_TRN1N32XLARGE = "ml.trn1n.32xlarge" class AppType(str, Enum): @@ -304,6 +310,9 @@ class DomainResourceSpecInstanceType(str, Enum): ML_P4D24XLARGE = "ml.p4d.24xlarge" ML_P4DE24XLARGE = "ml.p4de.24xlarge" ML_GEOSPATIAL_INTERACTIVE = "ml.geospatial.interactive" + ML_TRN12XLARGE = "ml.trn1.2xlarge" + ML_TRN132XLARGE = "ml.trn1.32xlarge" + ML_TRN1N32XLARGE = "ml.trn1n.32xlarge" class DomainSharingSettingsNotebookOutputOption(str, Enum): @@ -314,12 +323,25 @@ class DomainSharingSettingsNotebookOutputOption(str, Enum): DISABLED = "Disabled" +class DomainUserSettingsStudioWebPortal(str, Enum): + """ + Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + """ + ENABLED = "ENABLED" + DISABLED = "DISABLED" + + class FeatureGroupFeatureDefinitionFeatureType(str, Enum): INTEGRAL = "Integral" FRACTIONAL = "Fractional" STRING = "String" +class FeatureGroupStorageType(str, Enum): + STANDARD = "Standard" + IN_MEMORY = "InMemory" + + class FeatureGroupTableFormat(str, Enum): """ Format for the offline store feature group. Iceberg is the optimal format for feature groups shared between offline and online stores. @@ -944,6 +966,9 @@ class UserProfileResourceSpecInstanceType(str, Enum): ML_P4D24XLARGE = "ml.p4d.24xlarge" ML_P4DE24XLARGE = "ml.p4de.24xlarge" ML_GEOSPATIAL_INTERACTIVE = "ml.geospatial.interactive" + ML_TRN12XLARGE = "ml.trn1.2xlarge" + ML_TRN132XLARGE = "ml.trn1.32xlarge" + ML_TRN1N32XLARGE = "ml.trn1n.32xlarge" class UserProfileSharingSettingsNotebookOutputOption(str, Enum): @@ -952,3 +977,11 @@ class UserProfileSharingSettingsNotebookOutputOption(str, Enum): """ ALLOWED = "Allowed" DISABLED = "Disabled" + + +class UserProfileUserSettingsStudioWebPortal(str, Enum): + """ + Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + """ + ENABLED = "ENABLED" + DISABLED = "DISABLED" diff --git a/sdk/python/pulumi_aws_native/sagemaker/_inputs.py b/sdk/python/pulumi_aws_native/sagemaker/_inputs.py index 76521ae5e1..131efef6a9 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/_inputs.py +++ b/sdk/python/pulumi_aws_native/sagemaker/_inputs.py @@ -42,8 +42,16 @@ 'DeviceFleetTagArgs', 'DeviceTagArgs', 'DeviceArgs', + 'DomainCodeEditorAppSettingsArgs', + 'DomainCodeRepositoryArgs', + 'DomainCustomFileSystemConfigArgs', 'DomainCustomImageArgs', + 'DomainCustomPosixUserConfigArgs', + 'DomainDefaultEbsStorageSettingsArgs', 'DomainDefaultSpaceSettingsArgs', + 'DomainDefaultSpaceStorageSettingsArgs', + 'DomainEfsFileSystemConfigArgs', + 'DomainJupyterLabAppSettingsArgs', 'DomainJupyterServerAppSettingsArgs', 'DomainKernelGatewayAppSettingsArgs', 'DomainRSessionAppSettingsArgs', @@ -275,7 +283,15 @@ 'SpaceResourceSpecArgs', 'SpaceSettingsArgs', 'SpaceTagArgs', + 'UserProfileCodeEditorAppSettingsArgs', + 'UserProfileCodeRepositoryArgs', + 'UserProfileCustomFileSystemConfigArgs', 'UserProfileCustomImageArgs', + 'UserProfileCustomPosixUserConfigArgs', + 'UserProfileDefaultEbsStorageSettingsArgs', + 'UserProfileDefaultSpaceStorageSettingsArgs', + 'UserProfileEfsFileSystemConfigArgs', + 'UserProfileJupyterLabAppSettingsArgs', 'UserProfileJupyterServerAppSettingsArgs', 'UserProfileKernelGatewayAppSettingsArgs', 'UserProfileRStudioServerProAppSettingsArgs', @@ -1616,6 +1632,85 @@ def iot_thing_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "iot_thing_name", value) +@pulumi.input_type +class DomainCodeEditorAppSettingsArgs: + def __init__(__self__, *, + default_resource_spec: Optional[pulumi.Input['DomainResourceSpecArgs']] = None, + lifecycle_config_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + The CodeEditor app settings. + :param pulumi.Input['DomainResourceSpecArgs'] default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + :param pulumi.Input[Sequence[pulumi.Input[str]]] lifecycle_config_arns: A list of LifecycleConfigArns available for use with CodeEditor apps. + """ + if default_resource_spec is not None: + pulumi.set(__self__, "default_resource_spec", default_resource_spec) + if lifecycle_config_arns is not None: + pulumi.set(__self__, "lifecycle_config_arns", lifecycle_config_arns) + + @property + @pulumi.getter(name="defaultResourceSpec") + def default_resource_spec(self) -> Optional[pulumi.Input['DomainResourceSpecArgs']]: + """ + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + """ + return pulumi.get(self, "default_resource_spec") + + @default_resource_spec.setter + def default_resource_spec(self, value: Optional[pulumi.Input['DomainResourceSpecArgs']]): + pulumi.set(self, "default_resource_spec", value) + + @property + @pulumi.getter(name="lifecycleConfigArns") + def lifecycle_config_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + A list of LifecycleConfigArns available for use with CodeEditor apps. + """ + return pulumi.get(self, "lifecycle_config_arns") + + @lifecycle_config_arns.setter + def lifecycle_config_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "lifecycle_config_arns", value) + + +@pulumi.input_type +class DomainCodeRepositoryArgs: + def __init__(__self__, *, + repository_url: pulumi.Input[str]): + """ + :param pulumi.Input[str] repository_url: A CodeRepository (valid URL) to be used within Jupyter's Git extension. + """ + pulumi.set(__self__, "repository_url", repository_url) + + @property + @pulumi.getter(name="repositoryUrl") + def repository_url(self) -> pulumi.Input[str]: + """ + A CodeRepository (valid URL) to be used within Jupyter's Git extension. + """ + return pulumi.get(self, "repository_url") + + @repository_url.setter + def repository_url(self, value: pulumi.Input[str]): + pulumi.set(self, "repository_url", value) + + +@pulumi.input_type +class DomainCustomFileSystemConfigArgs: + def __init__(__self__, *, + efs_file_system_config: Optional[pulumi.Input['DomainEfsFileSystemConfigArgs']] = None): + if efs_file_system_config is not None: + pulumi.set(__self__, "efs_file_system_config", efs_file_system_config) + + @property + @pulumi.getter(name="efsFileSystemConfig") + def efs_file_system_config(self) -> Optional[pulumi.Input['DomainEfsFileSystemConfigArgs']]: + return pulumi.get(self, "efs_file_system_config") + + @efs_file_system_config.setter + def efs_file_system_config(self, value: Optional[pulumi.Input['DomainEfsFileSystemConfigArgs']]): + pulumi.set(self, "efs_file_system_config", value) + + @pulumi.input_type class DomainCustomImageArgs: def __init__(__self__, *, @@ -1670,6 +1765,71 @@ def image_version_number(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "image_version_number", value) +@pulumi.input_type +class DomainCustomPosixUserConfigArgs: + def __init__(__self__, *, + gid: pulumi.Input[int], + uid: pulumi.Input[int]): + pulumi.set(__self__, "gid", gid) + pulumi.set(__self__, "uid", uid) + + @property + @pulumi.getter + def gid(self) -> pulumi.Input[int]: + return pulumi.get(self, "gid") + + @gid.setter + def gid(self, value: pulumi.Input[int]): + pulumi.set(self, "gid", value) + + @property + @pulumi.getter + def uid(self) -> pulumi.Input[int]: + return pulumi.get(self, "uid") + + @uid.setter + def uid(self, value: pulumi.Input[int]): + pulumi.set(self, "uid", value) + + +@pulumi.input_type +class DomainDefaultEbsStorageSettingsArgs: + def __init__(__self__, *, + default_ebs_volume_size_in_gb: pulumi.Input[int], + maximum_ebs_volume_size_in_gb: pulumi.Input[int]): + """ + Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS + :param pulumi.Input[int] default_ebs_volume_size_in_gb: Default size of the Amazon EBS volume in Gb + :param pulumi.Input[int] maximum_ebs_volume_size_in_gb: Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + """ + pulumi.set(__self__, "default_ebs_volume_size_in_gb", default_ebs_volume_size_in_gb) + pulumi.set(__self__, "maximum_ebs_volume_size_in_gb", maximum_ebs_volume_size_in_gb) + + @property + @pulumi.getter(name="defaultEbsVolumeSizeInGb") + def default_ebs_volume_size_in_gb(self) -> pulumi.Input[int]: + """ + Default size of the Amazon EBS volume in Gb + """ + return pulumi.get(self, "default_ebs_volume_size_in_gb") + + @default_ebs_volume_size_in_gb.setter + def default_ebs_volume_size_in_gb(self, value: pulumi.Input[int]): + pulumi.set(self, "default_ebs_volume_size_in_gb", value) + + @property + @pulumi.getter(name="maximumEbsVolumeSizeInGb") + def maximum_ebs_volume_size_in_gb(self) -> pulumi.Input[int]: + """ + Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + """ + return pulumi.get(self, "maximum_ebs_volume_size_in_gb") + + @maximum_ebs_volume_size_in_gb.setter + def maximum_ebs_volume_size_in_gb(self, value: pulumi.Input[int]): + pulumi.set(self, "maximum_ebs_volume_size_in_gb", value) + + @pulumi.input_type class DomainDefaultSpaceSettingsArgs: def __init__(__self__, *, @@ -1741,6 +1901,126 @@ def security_groups(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str pulumi.set(self, "security_groups", value) +@pulumi.input_type +class DomainDefaultSpaceStorageSettingsArgs: + def __init__(__self__, *, + default_ebs_storage_settings: Optional[pulumi.Input['DomainDefaultEbsStorageSettingsArgs']] = None): + """ + Default storage settings for a space. + """ + if default_ebs_storage_settings is not None: + pulumi.set(__self__, "default_ebs_storage_settings", default_ebs_storage_settings) + + @property + @pulumi.getter(name="defaultEbsStorageSettings") + def default_ebs_storage_settings(self) -> Optional[pulumi.Input['DomainDefaultEbsStorageSettingsArgs']]: + return pulumi.get(self, "default_ebs_storage_settings") + + @default_ebs_storage_settings.setter + def default_ebs_storage_settings(self, value: Optional[pulumi.Input['DomainDefaultEbsStorageSettingsArgs']]): + pulumi.set(self, "default_ebs_storage_settings", value) + + +@pulumi.input_type +class DomainEfsFileSystemConfigArgs: + def __init__(__self__, *, + file_system_id: pulumi.Input[str], + file_system_path: Optional[pulumi.Input[str]] = None): + pulumi.set(__self__, "file_system_id", file_system_id) + if file_system_path is not None: + pulumi.set(__self__, "file_system_path", file_system_path) + + @property + @pulumi.getter(name="fileSystemId") + def file_system_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "file_system_id") + + @file_system_id.setter + def file_system_id(self, value: pulumi.Input[str]): + pulumi.set(self, "file_system_id", value) + + @property + @pulumi.getter(name="fileSystemPath") + def file_system_path(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "file_system_path") + + @file_system_path.setter + def file_system_path(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "file_system_path", value) + + +@pulumi.input_type +class DomainJupyterLabAppSettingsArgs: + def __init__(__self__, *, + code_repositories: Optional[pulumi.Input[Sequence[pulumi.Input['DomainCodeRepositoryArgs']]]] = None, + custom_images: Optional[pulumi.Input[Sequence[pulumi.Input['DomainCustomImageArgs']]]] = None, + default_resource_spec: Optional[pulumi.Input['DomainResourceSpecArgs']] = None, + lifecycle_config_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + The JupyterLab app settings. + :param pulumi.Input[Sequence[pulumi.Input['DomainCodeRepositoryArgs']]] code_repositories: A list of CodeRepositories available for use with JupyterLab apps. + :param pulumi.Input[Sequence[pulumi.Input['DomainCustomImageArgs']]] custom_images: A list of custom images for use for JupyterLab apps. + :param pulumi.Input['DomainResourceSpecArgs'] default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + :param pulumi.Input[Sequence[pulumi.Input[str]]] lifecycle_config_arns: A list of LifecycleConfigArns available for use with JupyterLab apps. + """ + if code_repositories is not None: + pulumi.set(__self__, "code_repositories", code_repositories) + if custom_images is not None: + pulumi.set(__self__, "custom_images", custom_images) + if default_resource_spec is not None: + pulumi.set(__self__, "default_resource_spec", default_resource_spec) + if lifecycle_config_arns is not None: + pulumi.set(__self__, "lifecycle_config_arns", lifecycle_config_arns) + + @property + @pulumi.getter(name="codeRepositories") + def code_repositories(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DomainCodeRepositoryArgs']]]]: + """ + A list of CodeRepositories available for use with JupyterLab apps. + """ + return pulumi.get(self, "code_repositories") + + @code_repositories.setter + def code_repositories(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DomainCodeRepositoryArgs']]]]): + pulumi.set(self, "code_repositories", value) + + @property + @pulumi.getter(name="customImages") + def custom_images(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DomainCustomImageArgs']]]]: + """ + A list of custom images for use for JupyterLab apps. + """ + return pulumi.get(self, "custom_images") + + @custom_images.setter + def custom_images(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DomainCustomImageArgs']]]]): + pulumi.set(self, "custom_images", value) + + @property + @pulumi.getter(name="defaultResourceSpec") + def default_resource_spec(self) -> Optional[pulumi.Input['DomainResourceSpecArgs']]: + """ + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + """ + return pulumi.get(self, "default_resource_spec") + + @default_resource_spec.setter + def default_resource_spec(self, value: Optional[pulumi.Input['DomainResourceSpecArgs']]): + pulumi.set(self, "default_resource_spec", value) + + @property + @pulumi.getter(name="lifecycleConfigArns") + def lifecycle_config_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + A list of LifecycleConfigArns available for use with JupyterLab apps. + """ + return pulumi.get(self, "lifecycle_config_arns") + + @lifecycle_config_arns.setter + def lifecycle_config_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "lifecycle_config_arns", value) + + @pulumi.input_type class DomainJupyterServerAppSettingsArgs: def __init__(__self__, *, @@ -2138,21 +2418,40 @@ def value(self, value: pulumi.Input[str]): class DomainUserSettingsArgs: def __init__(__self__, *, execution_role: pulumi.Input[str], + code_editor_app_settings: Optional[pulumi.Input['DomainCodeEditorAppSettingsArgs']] = None, + custom_file_system_configs: Optional[pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]]] = None, + custom_posix_user_config: Optional[pulumi.Input['DomainCustomPosixUserConfigArgs']] = None, + default_landing_uri: Optional[pulumi.Input[str]] = None, + jupyter_lab_app_settings: Optional[pulumi.Input['DomainJupyterLabAppSettingsArgs']] = None, jupyter_server_app_settings: Optional[pulumi.Input['DomainJupyterServerAppSettingsArgs']] = None, kernel_gateway_app_settings: Optional[pulumi.Input['DomainKernelGatewayAppSettingsArgs']] = None, r_session_app_settings: Optional[pulumi.Input['DomainRSessionAppSettingsArgs']] = None, r_studio_server_pro_app_settings: Optional[pulumi.Input['DomainRStudioServerProAppSettingsArgs']] = None, security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - sharing_settings: Optional[pulumi.Input['DomainSharingSettingsArgs']] = None): + sharing_settings: Optional[pulumi.Input['DomainSharingSettingsArgs']] = None, + space_storage_settings: Optional[pulumi.Input['DomainDefaultSpaceStorageSettingsArgs']] = None, + studio_web_portal: Optional[pulumi.Input['DomainUserSettingsStudioWebPortal']] = None): """ A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. :param pulumi.Input[str] execution_role: The execution role for the user. + :param pulumi.Input[str] default_landing_uri: Defines which Amazon SageMaker application users are directed to by default. :param pulumi.Input['DomainJupyterServerAppSettingsArgs'] jupyter_server_app_settings: The Jupyter server's app settings. :param pulumi.Input['DomainKernelGatewayAppSettingsArgs'] kernel_gateway_app_settings: The kernel gateway app settings. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. :param pulumi.Input['DomainSharingSettingsArgs'] sharing_settings: The sharing settings. + :param pulumi.Input['DomainUserSettingsStudioWebPortal'] studio_web_portal: Indicates whether the Studio experience is available to users. If not, users cannot access Studio. """ pulumi.set(__self__, "execution_role", execution_role) + if code_editor_app_settings is not None: + pulumi.set(__self__, "code_editor_app_settings", code_editor_app_settings) + if custom_file_system_configs is not None: + pulumi.set(__self__, "custom_file_system_configs", custom_file_system_configs) + if custom_posix_user_config is not None: + pulumi.set(__self__, "custom_posix_user_config", custom_posix_user_config) + if default_landing_uri is not None: + pulumi.set(__self__, "default_landing_uri", default_landing_uri) + if jupyter_lab_app_settings is not None: + pulumi.set(__self__, "jupyter_lab_app_settings", jupyter_lab_app_settings) if jupyter_server_app_settings is not None: pulumi.set(__self__, "jupyter_server_app_settings", jupyter_server_app_settings) if kernel_gateway_app_settings is not None: @@ -2165,6 +2464,10 @@ def __init__(__self__, *, pulumi.set(__self__, "security_groups", security_groups) if sharing_settings is not None: pulumi.set(__self__, "sharing_settings", sharing_settings) + if space_storage_settings is not None: + pulumi.set(__self__, "space_storage_settings", space_storage_settings) + if studio_web_portal is not None: + pulumi.set(__self__, "studio_web_portal", studio_web_portal) @property @pulumi.getter(name="executionRole") @@ -2178,6 +2481,54 @@ def execution_role(self) -> pulumi.Input[str]: def execution_role(self, value: pulumi.Input[str]): pulumi.set(self, "execution_role", value) + @property + @pulumi.getter(name="codeEditorAppSettings") + def code_editor_app_settings(self) -> Optional[pulumi.Input['DomainCodeEditorAppSettingsArgs']]: + return pulumi.get(self, "code_editor_app_settings") + + @code_editor_app_settings.setter + def code_editor_app_settings(self, value: Optional[pulumi.Input['DomainCodeEditorAppSettingsArgs']]): + pulumi.set(self, "code_editor_app_settings", value) + + @property + @pulumi.getter(name="customFileSystemConfigs") + def custom_file_system_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]]]: + return pulumi.get(self, "custom_file_system_configs") + + @custom_file_system_configs.setter + def custom_file_system_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['DomainCustomFileSystemConfigArgs']]]]): + pulumi.set(self, "custom_file_system_configs", value) + + @property + @pulumi.getter(name="customPosixUserConfig") + def custom_posix_user_config(self) -> Optional[pulumi.Input['DomainCustomPosixUserConfigArgs']]: + return pulumi.get(self, "custom_posix_user_config") + + @custom_posix_user_config.setter + def custom_posix_user_config(self, value: Optional[pulumi.Input['DomainCustomPosixUserConfigArgs']]): + pulumi.set(self, "custom_posix_user_config", value) + + @property + @pulumi.getter(name="defaultLandingUri") + def default_landing_uri(self) -> Optional[pulumi.Input[str]]: + """ + Defines which Amazon SageMaker application users are directed to by default. + """ + return pulumi.get(self, "default_landing_uri") + + @default_landing_uri.setter + def default_landing_uri(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "default_landing_uri", value) + + @property + @pulumi.getter(name="jupyterLabAppSettings") + def jupyter_lab_app_settings(self) -> Optional[pulumi.Input['DomainJupyterLabAppSettingsArgs']]: + return pulumi.get(self, "jupyter_lab_app_settings") + + @jupyter_lab_app_settings.setter + def jupyter_lab_app_settings(self, value: Optional[pulumi.Input['DomainJupyterLabAppSettingsArgs']]): + pulumi.set(self, "jupyter_lab_app_settings", value) + @property @pulumi.getter(name="jupyterServerAppSettings") def jupyter_server_app_settings(self) -> Optional[pulumi.Input['DomainJupyterServerAppSettingsArgs']]: @@ -2244,6 +2595,27 @@ def sharing_settings(self) -> Optional[pulumi.Input['DomainSharingSettingsArgs'] def sharing_settings(self, value: Optional[pulumi.Input['DomainSharingSettingsArgs']]): pulumi.set(self, "sharing_settings", value) + @property + @pulumi.getter(name="spaceStorageSettings") + def space_storage_settings(self) -> Optional[pulumi.Input['DomainDefaultSpaceStorageSettingsArgs']]: + return pulumi.get(self, "space_storage_settings") + + @space_storage_settings.setter + def space_storage_settings(self, value: Optional[pulumi.Input['DomainDefaultSpaceStorageSettingsArgs']]): + pulumi.set(self, "space_storage_settings", value) + + @property + @pulumi.getter(name="studioWebPortal") + def studio_web_portal(self) -> Optional[pulumi.Input['DomainUserSettingsStudioWebPortal']]: + """ + Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + """ + return pulumi.get(self, "studio_web_portal") + + @studio_web_portal.setter + def studio_web_portal(self, value: Optional[pulumi.Input['DomainUserSettingsStudioWebPortal']]): + pulumi.set(self, "studio_web_portal", value) + @pulumi.input_type class EndpointAlarmArgs: @@ -11919,11 +12291,14 @@ def table_format(self, value: Optional[pulumi.Input['FeatureGroupTableFormat']]) class OnlineStoreConfigPropertiesArgs: def __init__(__self__, *, enable_online_store: Optional[pulumi.Input[bool]] = None, - security_config: Optional[pulumi.Input['FeatureGroupOnlineStoreSecurityConfigArgs']] = None): + security_config: Optional[pulumi.Input['FeatureGroupOnlineStoreSecurityConfigArgs']] = None, + storage_type: Optional[pulumi.Input['FeatureGroupStorageType']] = None): if enable_online_store is not None: pulumi.set(__self__, "enable_online_store", enable_online_store) if security_config is not None: pulumi.set(__self__, "security_config", security_config) + if storage_type is not None: + pulumi.set(__self__, "storage_type", storage_type) @property @pulumi.getter(name="enableOnlineStore") @@ -11943,6 +12318,15 @@ def security_config(self) -> Optional[pulumi.Input['FeatureGroupOnlineStoreSecur def security_config(self, value: Optional[pulumi.Input['FeatureGroupOnlineStoreSecurityConfigArgs']]): pulumi.set(self, "security_config", value) + @property + @pulumi.getter(name="storageType") + def storage_type(self) -> Optional[pulumi.Input['FeatureGroupStorageType']]: + return pulumi.get(self, "storage_type") + + @storage_type.setter + def storage_type(self, value: Optional[pulumi.Input['FeatureGroupStorageType']]): + pulumi.set(self, "storage_type", value) + @pulumi.input_type class ParallelismConfigurationPropertiesArgs: @@ -12503,6 +12887,85 @@ def value(self, value: pulumi.Input[str]): pulumi.set(self, "value", value) +@pulumi.input_type +class UserProfileCodeEditorAppSettingsArgs: + def __init__(__self__, *, + default_resource_spec: Optional[pulumi.Input['UserProfileResourceSpecArgs']] = None, + lifecycle_config_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + The CodeEditor app settings. + :param pulumi.Input['UserProfileResourceSpecArgs'] default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + :param pulumi.Input[Sequence[pulumi.Input[str]]] lifecycle_config_arns: A list of LifecycleConfigArns available for use with CodeEditor apps. + """ + if default_resource_spec is not None: + pulumi.set(__self__, "default_resource_spec", default_resource_spec) + if lifecycle_config_arns is not None: + pulumi.set(__self__, "lifecycle_config_arns", lifecycle_config_arns) + + @property + @pulumi.getter(name="defaultResourceSpec") + def default_resource_spec(self) -> Optional[pulumi.Input['UserProfileResourceSpecArgs']]: + """ + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + """ + return pulumi.get(self, "default_resource_spec") + + @default_resource_spec.setter + def default_resource_spec(self, value: Optional[pulumi.Input['UserProfileResourceSpecArgs']]): + pulumi.set(self, "default_resource_spec", value) + + @property + @pulumi.getter(name="lifecycleConfigArns") + def lifecycle_config_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + A list of LifecycleConfigArns available for use with CodeEditor apps. + """ + return pulumi.get(self, "lifecycle_config_arns") + + @lifecycle_config_arns.setter + def lifecycle_config_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "lifecycle_config_arns", value) + + +@pulumi.input_type +class UserProfileCodeRepositoryArgs: + def __init__(__self__, *, + repository_url: pulumi.Input[str]): + """ + :param pulumi.Input[str] repository_url: A CodeRepository (valid URL) to be used within Jupyter's Git extension. + """ + pulumi.set(__self__, "repository_url", repository_url) + + @property + @pulumi.getter(name="repositoryUrl") + def repository_url(self) -> pulumi.Input[str]: + """ + A CodeRepository (valid URL) to be used within Jupyter's Git extension. + """ + return pulumi.get(self, "repository_url") + + @repository_url.setter + def repository_url(self, value: pulumi.Input[str]): + pulumi.set(self, "repository_url", value) + + +@pulumi.input_type +class UserProfileCustomFileSystemConfigArgs: + def __init__(__self__, *, + efs_file_system_config: Optional[pulumi.Input['UserProfileEfsFileSystemConfigArgs']] = None): + if efs_file_system_config is not None: + pulumi.set(__self__, "efs_file_system_config", efs_file_system_config) + + @property + @pulumi.getter(name="efsFileSystemConfig") + def efs_file_system_config(self) -> Optional[pulumi.Input['UserProfileEfsFileSystemConfigArgs']]: + return pulumi.get(self, "efs_file_system_config") + + @efs_file_system_config.setter + def efs_file_system_config(self, value: Optional[pulumi.Input['UserProfileEfsFileSystemConfigArgs']]): + pulumi.set(self, "efs_file_system_config", value) + + @pulumi.input_type class UserProfileCustomImageArgs: def __init__(__self__, *, @@ -12557,6 +13020,191 @@ def image_version_number(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "image_version_number", value) +@pulumi.input_type +class UserProfileCustomPosixUserConfigArgs: + def __init__(__self__, *, + gid: pulumi.Input[int], + uid: pulumi.Input[int]): + pulumi.set(__self__, "gid", gid) + pulumi.set(__self__, "uid", uid) + + @property + @pulumi.getter + def gid(self) -> pulumi.Input[int]: + return pulumi.get(self, "gid") + + @gid.setter + def gid(self, value: pulumi.Input[int]): + pulumi.set(self, "gid", value) + + @property + @pulumi.getter + def uid(self) -> pulumi.Input[int]: + return pulumi.get(self, "uid") + + @uid.setter + def uid(self, value: pulumi.Input[int]): + pulumi.set(self, "uid", value) + + +@pulumi.input_type +class UserProfileDefaultEbsStorageSettingsArgs: + def __init__(__self__, *, + default_ebs_volume_size_in_gb: pulumi.Input[int], + maximum_ebs_volume_size_in_gb: pulumi.Input[int]): + """ + Properties related to the Amazon Elastic Block Store volume. + :param pulumi.Input[int] default_ebs_volume_size_in_gb: Default size of the Amazon EBS volume in Gb + :param pulumi.Input[int] maximum_ebs_volume_size_in_gb: Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + """ + pulumi.set(__self__, "default_ebs_volume_size_in_gb", default_ebs_volume_size_in_gb) + pulumi.set(__self__, "maximum_ebs_volume_size_in_gb", maximum_ebs_volume_size_in_gb) + + @property + @pulumi.getter(name="defaultEbsVolumeSizeInGb") + def default_ebs_volume_size_in_gb(self) -> pulumi.Input[int]: + """ + Default size of the Amazon EBS volume in Gb + """ + return pulumi.get(self, "default_ebs_volume_size_in_gb") + + @default_ebs_volume_size_in_gb.setter + def default_ebs_volume_size_in_gb(self, value: pulumi.Input[int]): + pulumi.set(self, "default_ebs_volume_size_in_gb", value) + + @property + @pulumi.getter(name="maximumEbsVolumeSizeInGb") + def maximum_ebs_volume_size_in_gb(self) -> pulumi.Input[int]: + """ + Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + """ + return pulumi.get(self, "maximum_ebs_volume_size_in_gb") + + @maximum_ebs_volume_size_in_gb.setter + def maximum_ebs_volume_size_in_gb(self, value: pulumi.Input[int]): + pulumi.set(self, "maximum_ebs_volume_size_in_gb", value) + + +@pulumi.input_type +class UserProfileDefaultSpaceStorageSettingsArgs: + def __init__(__self__, *, + default_ebs_storage_settings: Optional[pulumi.Input['UserProfileDefaultEbsStorageSettingsArgs']] = None): + """ + Default storage settings for a space. + """ + if default_ebs_storage_settings is not None: + pulumi.set(__self__, "default_ebs_storage_settings", default_ebs_storage_settings) + + @property + @pulumi.getter(name="defaultEbsStorageSettings") + def default_ebs_storage_settings(self) -> Optional[pulumi.Input['UserProfileDefaultEbsStorageSettingsArgs']]: + return pulumi.get(self, "default_ebs_storage_settings") + + @default_ebs_storage_settings.setter + def default_ebs_storage_settings(self, value: Optional[pulumi.Input['UserProfileDefaultEbsStorageSettingsArgs']]): + pulumi.set(self, "default_ebs_storage_settings", value) + + +@pulumi.input_type +class UserProfileEfsFileSystemConfigArgs: + def __init__(__self__, *, + file_system_id: pulumi.Input[str], + file_system_path: Optional[pulumi.Input[str]] = None): + pulumi.set(__self__, "file_system_id", file_system_id) + if file_system_path is not None: + pulumi.set(__self__, "file_system_path", file_system_path) + + @property + @pulumi.getter(name="fileSystemId") + def file_system_id(self) -> pulumi.Input[str]: + return pulumi.get(self, "file_system_id") + + @file_system_id.setter + def file_system_id(self, value: pulumi.Input[str]): + pulumi.set(self, "file_system_id", value) + + @property + @pulumi.getter(name="fileSystemPath") + def file_system_path(self) -> Optional[pulumi.Input[str]]: + return pulumi.get(self, "file_system_path") + + @file_system_path.setter + def file_system_path(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "file_system_path", value) + + +@pulumi.input_type +class UserProfileJupyterLabAppSettingsArgs: + def __init__(__self__, *, + code_repositories: Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCodeRepositoryArgs']]]] = None, + custom_images: Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCustomImageArgs']]]] = None, + default_resource_spec: Optional[pulumi.Input['UserProfileResourceSpecArgs']] = None, + lifecycle_config_arns: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + """ + The JupyterLab app settings. + :param pulumi.Input[Sequence[pulumi.Input['UserProfileCodeRepositoryArgs']]] code_repositories: A list of CodeRepositories available for use with JupyterLab apps. + :param pulumi.Input[Sequence[pulumi.Input['UserProfileCustomImageArgs']]] custom_images: A list of custom images available for use for JupyterLab apps + :param pulumi.Input['UserProfileResourceSpecArgs'] default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + :param pulumi.Input[Sequence[pulumi.Input[str]]] lifecycle_config_arns: A list of LifecycleConfigArns available for use with JupyterLab apps. + """ + if code_repositories is not None: + pulumi.set(__self__, "code_repositories", code_repositories) + if custom_images is not None: + pulumi.set(__self__, "custom_images", custom_images) + if default_resource_spec is not None: + pulumi.set(__self__, "default_resource_spec", default_resource_spec) + if lifecycle_config_arns is not None: + pulumi.set(__self__, "lifecycle_config_arns", lifecycle_config_arns) + + @property + @pulumi.getter(name="codeRepositories") + def code_repositories(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCodeRepositoryArgs']]]]: + """ + A list of CodeRepositories available for use with JupyterLab apps. + """ + return pulumi.get(self, "code_repositories") + + @code_repositories.setter + def code_repositories(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCodeRepositoryArgs']]]]): + pulumi.set(self, "code_repositories", value) + + @property + @pulumi.getter(name="customImages") + def custom_images(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCustomImageArgs']]]]: + """ + A list of custom images available for use for JupyterLab apps + """ + return pulumi.get(self, "custom_images") + + @custom_images.setter + def custom_images(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCustomImageArgs']]]]): + pulumi.set(self, "custom_images", value) + + @property + @pulumi.getter(name="defaultResourceSpec") + def default_resource_spec(self) -> Optional[pulumi.Input['UserProfileResourceSpecArgs']]: + """ + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + """ + return pulumi.get(self, "default_resource_spec") + + @default_resource_spec.setter + def default_resource_spec(self, value: Optional[pulumi.Input['UserProfileResourceSpecArgs']]): + pulumi.set(self, "default_resource_spec", value) + + @property + @pulumi.getter(name="lifecycleConfigArns") + def lifecycle_config_arns(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + A list of LifecycleConfigArns available for use with JupyterLab apps. + """ + return pulumi.get(self, "lifecycle_config_arns") + + @lifecycle_config_arns.setter + def lifecycle_config_arns(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "lifecycle_config_arns", value) + + @pulumi.input_type class UserProfileJupyterServerAppSettingsArgs: def __init__(__self__, *, @@ -12798,22 +13446,41 @@ def value(self, value: pulumi.Input[str]): @pulumi.input_type class UserProfileUserSettingsArgs: def __init__(__self__, *, + code_editor_app_settings: Optional[pulumi.Input['UserProfileCodeEditorAppSettingsArgs']] = None, + custom_file_system_configs: Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCustomFileSystemConfigArgs']]]] = None, + custom_posix_user_config: Optional[pulumi.Input['UserProfileCustomPosixUserConfigArgs']] = None, + default_landing_uri: Optional[pulumi.Input[str]] = None, execution_role: Optional[pulumi.Input[str]] = None, + jupyter_lab_app_settings: Optional[pulumi.Input['UserProfileJupyterLabAppSettingsArgs']] = None, jupyter_server_app_settings: Optional[pulumi.Input['UserProfileJupyterServerAppSettingsArgs']] = None, kernel_gateway_app_settings: Optional[pulumi.Input['UserProfileKernelGatewayAppSettingsArgs']] = None, r_studio_server_pro_app_settings: Optional[pulumi.Input['UserProfileRStudioServerProAppSettingsArgs']] = None, security_groups: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - sharing_settings: Optional[pulumi.Input['UserProfileSharingSettingsArgs']] = None): + sharing_settings: Optional[pulumi.Input['UserProfileSharingSettingsArgs']] = None, + space_storage_settings: Optional[pulumi.Input['UserProfileDefaultSpaceStorageSettingsArgs']] = None, + studio_web_portal: Optional[pulumi.Input['UserProfileUserSettingsStudioWebPortal']] = None): """ A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. + :param pulumi.Input[str] default_landing_uri: Defines which Amazon SageMaker application users are directed to by default. :param pulumi.Input[str] execution_role: The user profile Amazon Resource Name (ARN). :param pulumi.Input['UserProfileJupyterServerAppSettingsArgs'] jupyter_server_app_settings: The Jupyter server's app settings. :param pulumi.Input['UserProfileKernelGatewayAppSettingsArgs'] kernel_gateway_app_settings: The kernel gateway app settings. :param pulumi.Input[Sequence[pulumi.Input[str]]] security_groups: The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. :param pulumi.Input['UserProfileSharingSettingsArgs'] sharing_settings: The sharing settings. - """ + :param pulumi.Input['UserProfileUserSettingsStudioWebPortal'] studio_web_portal: Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + """ + if code_editor_app_settings is not None: + pulumi.set(__self__, "code_editor_app_settings", code_editor_app_settings) + if custom_file_system_configs is not None: + pulumi.set(__self__, "custom_file_system_configs", custom_file_system_configs) + if custom_posix_user_config is not None: + pulumi.set(__self__, "custom_posix_user_config", custom_posix_user_config) + if default_landing_uri is not None: + pulumi.set(__self__, "default_landing_uri", default_landing_uri) if execution_role is not None: pulumi.set(__self__, "execution_role", execution_role) + if jupyter_lab_app_settings is not None: + pulumi.set(__self__, "jupyter_lab_app_settings", jupyter_lab_app_settings) if jupyter_server_app_settings is not None: pulumi.set(__self__, "jupyter_server_app_settings", jupyter_server_app_settings) if kernel_gateway_app_settings is not None: @@ -12824,6 +13491,49 @@ def __init__(__self__, *, pulumi.set(__self__, "security_groups", security_groups) if sharing_settings is not None: pulumi.set(__self__, "sharing_settings", sharing_settings) + if space_storage_settings is not None: + pulumi.set(__self__, "space_storage_settings", space_storage_settings) + if studio_web_portal is not None: + pulumi.set(__self__, "studio_web_portal", studio_web_portal) + + @property + @pulumi.getter(name="codeEditorAppSettings") + def code_editor_app_settings(self) -> Optional[pulumi.Input['UserProfileCodeEditorAppSettingsArgs']]: + return pulumi.get(self, "code_editor_app_settings") + + @code_editor_app_settings.setter + def code_editor_app_settings(self, value: Optional[pulumi.Input['UserProfileCodeEditorAppSettingsArgs']]): + pulumi.set(self, "code_editor_app_settings", value) + + @property + @pulumi.getter(name="customFileSystemConfigs") + def custom_file_system_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCustomFileSystemConfigArgs']]]]: + return pulumi.get(self, "custom_file_system_configs") + + @custom_file_system_configs.setter + def custom_file_system_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['UserProfileCustomFileSystemConfigArgs']]]]): + pulumi.set(self, "custom_file_system_configs", value) + + @property + @pulumi.getter(name="customPosixUserConfig") + def custom_posix_user_config(self) -> Optional[pulumi.Input['UserProfileCustomPosixUserConfigArgs']]: + return pulumi.get(self, "custom_posix_user_config") + + @custom_posix_user_config.setter + def custom_posix_user_config(self, value: Optional[pulumi.Input['UserProfileCustomPosixUserConfigArgs']]): + pulumi.set(self, "custom_posix_user_config", value) + + @property + @pulumi.getter(name="defaultLandingUri") + def default_landing_uri(self) -> Optional[pulumi.Input[str]]: + """ + Defines which Amazon SageMaker application users are directed to by default. + """ + return pulumi.get(self, "default_landing_uri") + + @default_landing_uri.setter + def default_landing_uri(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "default_landing_uri", value) @property @pulumi.getter(name="executionRole") @@ -12837,6 +13547,15 @@ def execution_role(self) -> Optional[pulumi.Input[str]]: def execution_role(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "execution_role", value) + @property + @pulumi.getter(name="jupyterLabAppSettings") + def jupyter_lab_app_settings(self) -> Optional[pulumi.Input['UserProfileJupyterLabAppSettingsArgs']]: + return pulumi.get(self, "jupyter_lab_app_settings") + + @jupyter_lab_app_settings.setter + def jupyter_lab_app_settings(self, value: Optional[pulumi.Input['UserProfileJupyterLabAppSettingsArgs']]): + pulumi.set(self, "jupyter_lab_app_settings", value) + @property @pulumi.getter(name="jupyterServerAppSettings") def jupyter_server_app_settings(self) -> Optional[pulumi.Input['UserProfileJupyterServerAppSettingsArgs']]: @@ -12894,6 +13613,27 @@ def sharing_settings(self) -> Optional[pulumi.Input['UserProfileSharingSettingsA def sharing_settings(self, value: Optional[pulumi.Input['UserProfileSharingSettingsArgs']]): pulumi.set(self, "sharing_settings", value) + @property + @pulumi.getter(name="spaceStorageSettings") + def space_storage_settings(self) -> Optional[pulumi.Input['UserProfileDefaultSpaceStorageSettingsArgs']]: + return pulumi.get(self, "space_storage_settings") + + @space_storage_settings.setter + def space_storage_settings(self, value: Optional[pulumi.Input['UserProfileDefaultSpaceStorageSettingsArgs']]): + pulumi.set(self, "space_storage_settings", value) + + @property + @pulumi.getter(name="studioWebPortal") + def studio_web_portal(self) -> Optional[pulumi.Input['UserProfileUserSettingsStudioWebPortal']]: + """ + Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + """ + return pulumi.get(self, "studio_web_portal") + + @studio_web_portal.setter + def studio_web_portal(self, value: Optional[pulumi.Input['UserProfileUserSettingsStudioWebPortal']]): + pulumi.set(self, "studio_web_portal", value) + @pulumi.input_type class WorkteamCognitoMemberDefinitionArgs: diff --git a/sdk/python/pulumi_aws_native/sagemaker/domain.py b/sdk/python/pulumi_aws_native/sagemaker/domain.py index 72d5cc3047..eebb2f67ee 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/domain.py +++ b/sdk/python/pulumi_aws_native/sagemaker/domain.py @@ -290,9 +290,10 @@ def _internal_init(__self__, __props__.__dict__["domain_id"] = None __props__.__dict__["home_efs_file_system_id"] = None __props__.__dict__["security_group_id_for_domain_boundary"] = None + __props__.__dict__["single_sign_on_application_arn"] = None __props__.__dict__["single_sign_on_managed_application_instance_id"] = None __props__.__dict__["url"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["app_network_access_type", "auth_mode", "domain_name", "domain_settings.r_studio_server_pro_domain_settings.default_resource_spec", "kms_key_id", "subnet_ids[*]", "tags[*]", "vpc_id"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["auth_mode", "domain_name", "domain_settings.r_studio_server_pro_domain_settings.default_resource_spec", "kms_key_id", "tags[*]", "vpc_id"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Domain, __self__).__init__( 'aws-native:sagemaker:Domain', @@ -328,6 +329,7 @@ def get(resource_name: str, __props__.__dict__["home_efs_file_system_id"] = None __props__.__dict__["kms_key_id"] = None __props__.__dict__["security_group_id_for_domain_boundary"] = None + __props__.__dict__["single_sign_on_application_arn"] = None __props__.__dict__["single_sign_on_managed_application_instance_id"] = None __props__.__dict__["subnet_ids"] = None __props__.__dict__["tags"] = None @@ -428,6 +430,14 @@ def security_group_id_for_domain_boundary(self) -> pulumi.Output[str]: """ return pulumi.get(self, "security_group_id_for_domain_boundary") + @property + @pulumi.getter(name="singleSignOnApplicationArn") + def single_sign_on_application_arn(self) -> pulumi.Output[str]: + """ + The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. + """ + return pulumi.get(self, "single_sign_on_application_arn") + @property @pulumi.getter(name="singleSignOnManagedApplicationInstanceId") def single_sign_on_managed_application_instance_id(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/sagemaker/get_domain.py b/sdk/python/pulumi_aws_native/sagemaker/get_domain.py index 02b4dbb27f..51dbd5a6f4 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/get_domain.py +++ b/sdk/python/pulumi_aws_native/sagemaker/get_domain.py @@ -20,7 +20,10 @@ @pulumi.output_type class GetDomainResult: - def __init__(__self__, app_security_group_management=None, default_space_settings=None, default_user_settings=None, domain_arn=None, domain_id=None, domain_settings=None, home_efs_file_system_id=None, security_group_id_for_domain_boundary=None, single_sign_on_managed_application_instance_id=None, url=None): + def __init__(__self__, app_network_access_type=None, app_security_group_management=None, default_space_settings=None, default_user_settings=None, domain_arn=None, domain_id=None, domain_settings=None, home_efs_file_system_id=None, security_group_id_for_domain_boundary=None, single_sign_on_application_arn=None, single_sign_on_managed_application_instance_id=None, subnet_ids=None, url=None): + if app_network_access_type and not isinstance(app_network_access_type, str): + raise TypeError("Expected argument 'app_network_access_type' to be a str") + pulumi.set(__self__, "app_network_access_type", app_network_access_type) if app_security_group_management and not isinstance(app_security_group_management, str): raise TypeError("Expected argument 'app_security_group_management' to be a str") pulumi.set(__self__, "app_security_group_management", app_security_group_management) @@ -45,13 +48,27 @@ def __init__(__self__, app_security_group_management=None, default_space_setting if security_group_id_for_domain_boundary and not isinstance(security_group_id_for_domain_boundary, str): raise TypeError("Expected argument 'security_group_id_for_domain_boundary' to be a str") pulumi.set(__self__, "security_group_id_for_domain_boundary", security_group_id_for_domain_boundary) + if single_sign_on_application_arn and not isinstance(single_sign_on_application_arn, str): + raise TypeError("Expected argument 'single_sign_on_application_arn' to be a str") + pulumi.set(__self__, "single_sign_on_application_arn", single_sign_on_application_arn) if single_sign_on_managed_application_instance_id and not isinstance(single_sign_on_managed_application_instance_id, str): raise TypeError("Expected argument 'single_sign_on_managed_application_instance_id' to be a str") pulumi.set(__self__, "single_sign_on_managed_application_instance_id", single_sign_on_managed_application_instance_id) + if subnet_ids and not isinstance(subnet_ids, list): + raise TypeError("Expected argument 'subnet_ids' to be a list") + pulumi.set(__self__, "subnet_ids", subnet_ids) if url and not isinstance(url, str): raise TypeError("Expected argument 'url' to be a str") pulumi.set(__self__, "url", url) + @property + @pulumi.getter(name="appNetworkAccessType") + def app_network_access_type(self) -> Optional['DomainAppNetworkAccessType']: + """ + Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly. + """ + return pulumi.get(self, "app_network_access_type") + @property @pulumi.getter(name="appSecurityGroupManagement") def app_security_group_management(self) -> Optional['DomainAppSecurityGroupManagement']: @@ -113,6 +130,14 @@ def security_group_id_for_domain_boundary(self) -> Optional[str]: """ return pulumi.get(self, "security_group_id_for_domain_boundary") + @property + @pulumi.getter(name="singleSignOnApplicationArn") + def single_sign_on_application_arn(self) -> Optional[str]: + """ + The ARN of the application managed by SageMaker in IAM Identity Center. This value is only returned for domains created after October 1, 2023. + """ + return pulumi.get(self, "single_sign_on_application_arn") + @property @pulumi.getter(name="singleSignOnManagedApplicationInstanceId") def single_sign_on_managed_application_instance_id(self) -> Optional[str]: @@ -121,6 +146,14 @@ def single_sign_on_managed_application_instance_id(self) -> Optional[str]: """ return pulumi.get(self, "single_sign_on_managed_application_instance_id") + @property + @pulumi.getter(name="subnetIds") + def subnet_ids(self) -> Optional[Sequence[str]]: + """ + The VPC subnets that Studio uses for communication. + """ + return pulumi.get(self, "subnet_ids") + @property @pulumi.getter def url(self) -> Optional[str]: @@ -136,6 +169,7 @@ def __await__(self): if False: yield self return GetDomainResult( + app_network_access_type=self.app_network_access_type, app_security_group_management=self.app_security_group_management, default_space_settings=self.default_space_settings, default_user_settings=self.default_user_settings, @@ -144,7 +178,9 @@ def __await__(self): domain_settings=self.domain_settings, home_efs_file_system_id=self.home_efs_file_system_id, security_group_id_for_domain_boundary=self.security_group_id_for_domain_boundary, + single_sign_on_application_arn=self.single_sign_on_application_arn, single_sign_on_managed_application_instance_id=self.single_sign_on_managed_application_instance_id, + subnet_ids=self.subnet_ids, url=self.url) @@ -162,6 +198,7 @@ def get_domain(domain_id: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:sagemaker:getDomain', __args__, opts=opts, typ=GetDomainResult).value return AwaitableGetDomainResult( + app_network_access_type=pulumi.get(__ret__, 'app_network_access_type'), app_security_group_management=pulumi.get(__ret__, 'app_security_group_management'), default_space_settings=pulumi.get(__ret__, 'default_space_settings'), default_user_settings=pulumi.get(__ret__, 'default_user_settings'), @@ -170,7 +207,9 @@ def get_domain(domain_id: Optional[str] = None, domain_settings=pulumi.get(__ret__, 'domain_settings'), home_efs_file_system_id=pulumi.get(__ret__, 'home_efs_file_system_id'), security_group_id_for_domain_boundary=pulumi.get(__ret__, 'security_group_id_for_domain_boundary'), + single_sign_on_application_arn=pulumi.get(__ret__, 'single_sign_on_application_arn'), single_sign_on_managed_application_instance_id=pulumi.get(__ret__, 'single_sign_on_managed_application_instance_id'), + subnet_ids=pulumi.get(__ret__, 'subnet_ids'), url=pulumi.get(__ret__, 'url')) diff --git a/sdk/python/pulumi_aws_native/sagemaker/outputs.py b/sdk/python/pulumi_aws_native/sagemaker/outputs.py index 7545bba087..320f4787fc 100644 --- a/sdk/python/pulumi_aws_native/sagemaker/outputs.py +++ b/sdk/python/pulumi_aws_native/sagemaker/outputs.py @@ -43,8 +43,16 @@ 'DeviceFleetEdgeOutputConfig', 'DeviceFleetTag', 'DeviceTag', + 'DomainCodeEditorAppSettings', + 'DomainCodeRepository', + 'DomainCustomFileSystemConfig', 'DomainCustomImage', + 'DomainCustomPosixUserConfig', + 'DomainDefaultEbsStorageSettings', 'DomainDefaultSpaceSettings', + 'DomainDefaultSpaceStorageSettings', + 'DomainEfsFileSystemConfig', + 'DomainJupyterLabAppSettings', 'DomainJupyterServerAppSettings', 'DomainKernelGatewayAppSettings', 'DomainRSessionAppSettings', @@ -277,7 +285,15 @@ 'SpaceResourceSpec', 'SpaceSettings', 'SpaceTag', + 'UserProfileCodeEditorAppSettings', + 'UserProfileCodeRepository', + 'UserProfileCustomFileSystemConfig', 'UserProfileCustomImage', + 'UserProfileCustomPosixUserConfig', + 'UserProfileDefaultEbsStorageSettings', + 'UserProfileDefaultSpaceStorageSettings', + 'UserProfileEfsFileSystemConfig', + 'UserProfileJupyterLabAppSettings', 'UserProfileJupyterServerAppSettings', 'UserProfileKernelGatewayAppSettings', 'UserProfileRStudioServerProAppSettings', @@ -1821,6 +1837,125 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class DomainCodeEditorAppSettings(dict): + """ + The CodeEditor app settings. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultResourceSpec": + suggest = "default_resource_spec" + elif key == "lifecycleConfigArns": + suggest = "lifecycle_config_arns" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainCodeEditorAppSettings. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainCodeEditorAppSettings.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainCodeEditorAppSettings.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_resource_spec: Optional['outputs.DomainResourceSpec'] = None, + lifecycle_config_arns: Optional[Sequence[str]] = None): + """ + The CodeEditor app settings. + :param 'DomainResourceSpec' default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + :param Sequence[str] lifecycle_config_arns: A list of LifecycleConfigArns available for use with CodeEditor apps. + """ + if default_resource_spec is not None: + pulumi.set(__self__, "default_resource_spec", default_resource_spec) + if lifecycle_config_arns is not None: + pulumi.set(__self__, "lifecycle_config_arns", lifecycle_config_arns) + + @property + @pulumi.getter(name="defaultResourceSpec") + def default_resource_spec(self) -> Optional['outputs.DomainResourceSpec']: + """ + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + """ + return pulumi.get(self, "default_resource_spec") + + @property + @pulumi.getter(name="lifecycleConfigArns") + def lifecycle_config_arns(self) -> Optional[Sequence[str]]: + """ + A list of LifecycleConfigArns available for use with CodeEditor apps. + """ + return pulumi.get(self, "lifecycle_config_arns") + + +@pulumi.output_type +class DomainCodeRepository(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "repositoryUrl": + suggest = "repository_url" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainCodeRepository. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainCodeRepository.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainCodeRepository.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + repository_url: str): + """ + :param str repository_url: A CodeRepository (valid URL) to be used within Jupyter's Git extension. + """ + pulumi.set(__self__, "repository_url", repository_url) + + @property + @pulumi.getter(name="repositoryUrl") + def repository_url(self) -> str: + """ + A CodeRepository (valid URL) to be used within Jupyter's Git extension. + """ + return pulumi.get(self, "repository_url") + + +@pulumi.output_type +class DomainCustomFileSystemConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "efsFileSystemConfig": + suggest = "efs_file_system_config" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainCustomFileSystemConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainCustomFileSystemConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainCustomFileSystemConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + efs_file_system_config: Optional['outputs.DomainEfsFileSystemConfig'] = None): + if efs_file_system_config is not None: + pulumi.set(__self__, "efs_file_system_config", efs_file_system_config) + + @property + @pulumi.getter(name="efsFileSystemConfig") + def efs_file_system_config(self) -> Optional['outputs.DomainEfsFileSystemConfig']: + return pulumi.get(self, "efs_file_system_config") + + @pulumi.output_type class DomainCustomImage(dict): """ @@ -1887,6 +2022,77 @@ def image_version_number(self) -> Optional[int]: return pulumi.get(self, "image_version_number") +@pulumi.output_type +class DomainCustomPosixUserConfig(dict): + def __init__(__self__, *, + gid: int, + uid: int): + pulumi.set(__self__, "gid", gid) + pulumi.set(__self__, "uid", uid) + + @property + @pulumi.getter + def gid(self) -> int: + return pulumi.get(self, "gid") + + @property + @pulumi.getter + def uid(self) -> int: + return pulumi.get(self, "uid") + + +@pulumi.output_type +class DomainDefaultEbsStorageSettings(dict): + """ + Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultEbsVolumeSizeInGb": + suggest = "default_ebs_volume_size_in_gb" + elif key == "maximumEbsVolumeSizeInGb": + suggest = "maximum_ebs_volume_size_in_gb" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainDefaultEbsStorageSettings. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainDefaultEbsStorageSettings.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainDefaultEbsStorageSettings.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_ebs_volume_size_in_gb: int, + maximum_ebs_volume_size_in_gb: int): + """ + Properties related to the Amazon Elastic Block Store volume. Must be provided if storage type is Amazon EBS and must not be provided if storage type is not Amazon EBS + :param int default_ebs_volume_size_in_gb: Default size of the Amazon EBS volume in Gb + :param int maximum_ebs_volume_size_in_gb: Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + """ + pulumi.set(__self__, "default_ebs_volume_size_in_gb", default_ebs_volume_size_in_gb) + pulumi.set(__self__, "maximum_ebs_volume_size_in_gb", maximum_ebs_volume_size_in_gb) + + @property + @pulumi.getter(name="defaultEbsVolumeSizeInGb") + def default_ebs_volume_size_in_gb(self) -> int: + """ + Default size of the Amazon EBS volume in Gb + """ + return pulumi.get(self, "default_ebs_volume_size_in_gb") + + @property + @pulumi.getter(name="maximumEbsVolumeSizeInGb") + def maximum_ebs_volume_size_in_gb(self) -> int: + """ + Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + """ + return pulumi.get(self, "maximum_ebs_volume_size_in_gb") + + @pulumi.output_type class DomainDefaultSpaceSettings(dict): """ @@ -1968,6 +2174,163 @@ def security_groups(self) -> Optional[Sequence[str]]: return pulumi.get(self, "security_groups") +@pulumi.output_type +class DomainDefaultSpaceStorageSettings(dict): + """ + Default storage settings for a space. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultEbsStorageSettings": + suggest = "default_ebs_storage_settings" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainDefaultSpaceStorageSettings. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainDefaultSpaceStorageSettings.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainDefaultSpaceStorageSettings.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_ebs_storage_settings: Optional['outputs.DomainDefaultEbsStorageSettings'] = None): + """ + Default storage settings for a space. + """ + if default_ebs_storage_settings is not None: + pulumi.set(__self__, "default_ebs_storage_settings", default_ebs_storage_settings) + + @property + @pulumi.getter(name="defaultEbsStorageSettings") + def default_ebs_storage_settings(self) -> Optional['outputs.DomainDefaultEbsStorageSettings']: + return pulumi.get(self, "default_ebs_storage_settings") + + +@pulumi.output_type +class DomainEfsFileSystemConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "fileSystemId": + suggest = "file_system_id" + elif key == "fileSystemPath": + suggest = "file_system_path" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainEfsFileSystemConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainEfsFileSystemConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainEfsFileSystemConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + file_system_id: str, + file_system_path: Optional[str] = None): + pulumi.set(__self__, "file_system_id", file_system_id) + if file_system_path is not None: + pulumi.set(__self__, "file_system_path", file_system_path) + + @property + @pulumi.getter(name="fileSystemId") + def file_system_id(self) -> str: + return pulumi.get(self, "file_system_id") + + @property + @pulumi.getter(name="fileSystemPath") + def file_system_path(self) -> Optional[str]: + return pulumi.get(self, "file_system_path") + + +@pulumi.output_type +class DomainJupyterLabAppSettings(dict): + """ + The JupyterLab app settings. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "codeRepositories": + suggest = "code_repositories" + elif key == "customImages": + suggest = "custom_images" + elif key == "defaultResourceSpec": + suggest = "default_resource_spec" + elif key == "lifecycleConfigArns": + suggest = "lifecycle_config_arns" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in DomainJupyterLabAppSettings. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + DomainJupyterLabAppSettings.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + DomainJupyterLabAppSettings.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + code_repositories: Optional[Sequence['outputs.DomainCodeRepository']] = None, + custom_images: Optional[Sequence['outputs.DomainCustomImage']] = None, + default_resource_spec: Optional['outputs.DomainResourceSpec'] = None, + lifecycle_config_arns: Optional[Sequence[str]] = None): + """ + The JupyterLab app settings. + :param Sequence['DomainCodeRepository'] code_repositories: A list of CodeRepositories available for use with JupyterLab apps. + :param Sequence['DomainCustomImage'] custom_images: A list of custom images for use for JupyterLab apps. + :param 'DomainResourceSpec' default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + :param Sequence[str] lifecycle_config_arns: A list of LifecycleConfigArns available for use with JupyterLab apps. + """ + if code_repositories is not None: + pulumi.set(__self__, "code_repositories", code_repositories) + if custom_images is not None: + pulumi.set(__self__, "custom_images", custom_images) + if default_resource_spec is not None: + pulumi.set(__self__, "default_resource_spec", default_resource_spec) + if lifecycle_config_arns is not None: + pulumi.set(__self__, "lifecycle_config_arns", lifecycle_config_arns) + + @property + @pulumi.getter(name="codeRepositories") + def code_repositories(self) -> Optional[Sequence['outputs.DomainCodeRepository']]: + """ + A list of CodeRepositories available for use with JupyterLab apps. + """ + return pulumi.get(self, "code_repositories") + + @property + @pulumi.getter(name="customImages") + def custom_images(self) -> Optional[Sequence['outputs.DomainCustomImage']]: + """ + A list of custom images for use for JupyterLab apps. + """ + return pulumi.get(self, "custom_images") + + @property + @pulumi.getter(name="defaultResourceSpec") + def default_resource_spec(self) -> Optional['outputs.DomainResourceSpec']: + """ + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + """ + return pulumi.get(self, "default_resource_spec") + + @property + @pulumi.getter(name="lifecycleConfigArns") + def lifecycle_config_arns(self) -> Optional[Sequence[str]]: + """ + A list of LifecycleConfigArns available for use with JupyterLab apps. + """ + return pulumi.get(self, "lifecycle_config_arns") + + @pulumi.output_type class DomainJupyterServerAppSettings(dict): """ @@ -2464,6 +2827,16 @@ def __key_warning(key: str): suggest = None if key == "executionRole": suggest = "execution_role" + elif key == "codeEditorAppSettings": + suggest = "code_editor_app_settings" + elif key == "customFileSystemConfigs": + suggest = "custom_file_system_configs" + elif key == "customPosixUserConfig": + suggest = "custom_posix_user_config" + elif key == "defaultLandingUri": + suggest = "default_landing_uri" + elif key == "jupyterLabAppSettings": + suggest = "jupyter_lab_app_settings" elif key == "jupyterServerAppSettings": suggest = "jupyter_server_app_settings" elif key == "kernelGatewayAppSettings": @@ -2476,6 +2849,10 @@ def __key_warning(key: str): suggest = "security_groups" elif key == "sharingSettings": suggest = "sharing_settings" + elif key == "spaceStorageSettings": + suggest = "space_storage_settings" + elif key == "studioWebPortal": + suggest = "studio_web_portal" if suggest: pulumi.log.warn(f"Key '{key}' not found in DomainUserSettings. Access the value via the '{suggest}' property getter instead.") @@ -2490,21 +2867,40 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, execution_role: str, + code_editor_app_settings: Optional['outputs.DomainCodeEditorAppSettings'] = None, + custom_file_system_configs: Optional[Sequence['outputs.DomainCustomFileSystemConfig']] = None, + custom_posix_user_config: Optional['outputs.DomainCustomPosixUserConfig'] = None, + default_landing_uri: Optional[str] = None, + jupyter_lab_app_settings: Optional['outputs.DomainJupyterLabAppSettings'] = None, jupyter_server_app_settings: Optional['outputs.DomainJupyterServerAppSettings'] = None, kernel_gateway_app_settings: Optional['outputs.DomainKernelGatewayAppSettings'] = None, r_session_app_settings: Optional['outputs.DomainRSessionAppSettings'] = None, r_studio_server_pro_app_settings: Optional['outputs.DomainRStudioServerProAppSettings'] = None, security_groups: Optional[Sequence[str]] = None, - sharing_settings: Optional['outputs.DomainSharingSettings'] = None): + sharing_settings: Optional['outputs.DomainSharingSettings'] = None, + space_storage_settings: Optional['outputs.DomainDefaultSpaceStorageSettings'] = None, + studio_web_portal: Optional['DomainUserSettingsStudioWebPortal'] = None): """ A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. :param str execution_role: The execution role for the user. + :param str default_landing_uri: Defines which Amazon SageMaker application users are directed to by default. :param 'DomainJupyterServerAppSettings' jupyter_server_app_settings: The Jupyter server's app settings. :param 'DomainKernelGatewayAppSettings' kernel_gateway_app_settings: The kernel gateway app settings. :param Sequence[str] security_groups: The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. :param 'DomainSharingSettings' sharing_settings: The sharing settings. + :param 'DomainUserSettingsStudioWebPortal' studio_web_portal: Indicates whether the Studio experience is available to users. If not, users cannot access Studio. """ pulumi.set(__self__, "execution_role", execution_role) + if code_editor_app_settings is not None: + pulumi.set(__self__, "code_editor_app_settings", code_editor_app_settings) + if custom_file_system_configs is not None: + pulumi.set(__self__, "custom_file_system_configs", custom_file_system_configs) + if custom_posix_user_config is not None: + pulumi.set(__self__, "custom_posix_user_config", custom_posix_user_config) + if default_landing_uri is not None: + pulumi.set(__self__, "default_landing_uri", default_landing_uri) + if jupyter_lab_app_settings is not None: + pulumi.set(__self__, "jupyter_lab_app_settings", jupyter_lab_app_settings) if jupyter_server_app_settings is not None: pulumi.set(__self__, "jupyter_server_app_settings", jupyter_server_app_settings) if kernel_gateway_app_settings is not None: @@ -2517,6 +2913,10 @@ def __init__(__self__, *, pulumi.set(__self__, "security_groups", security_groups) if sharing_settings is not None: pulumi.set(__self__, "sharing_settings", sharing_settings) + if space_storage_settings is not None: + pulumi.set(__self__, "space_storage_settings", space_storage_settings) + if studio_web_portal is not None: + pulumi.set(__self__, "studio_web_portal", studio_web_portal) @property @pulumi.getter(name="executionRole") @@ -2526,6 +2926,34 @@ def execution_role(self) -> str: """ return pulumi.get(self, "execution_role") + @property + @pulumi.getter(name="codeEditorAppSettings") + def code_editor_app_settings(self) -> Optional['outputs.DomainCodeEditorAppSettings']: + return pulumi.get(self, "code_editor_app_settings") + + @property + @pulumi.getter(name="customFileSystemConfigs") + def custom_file_system_configs(self) -> Optional[Sequence['outputs.DomainCustomFileSystemConfig']]: + return pulumi.get(self, "custom_file_system_configs") + + @property + @pulumi.getter(name="customPosixUserConfig") + def custom_posix_user_config(self) -> Optional['outputs.DomainCustomPosixUserConfig']: + return pulumi.get(self, "custom_posix_user_config") + + @property + @pulumi.getter(name="defaultLandingUri") + def default_landing_uri(self) -> Optional[str]: + """ + Defines which Amazon SageMaker application users are directed to by default. + """ + return pulumi.get(self, "default_landing_uri") + + @property + @pulumi.getter(name="jupyterLabAppSettings") + def jupyter_lab_app_settings(self) -> Optional['outputs.DomainJupyterLabAppSettings']: + return pulumi.get(self, "jupyter_lab_app_settings") + @property @pulumi.getter(name="jupyterServerAppSettings") def jupyter_server_app_settings(self) -> Optional['outputs.DomainJupyterServerAppSettings']: @@ -2568,6 +2996,19 @@ def sharing_settings(self) -> Optional['outputs.DomainSharingSettings']: """ return pulumi.get(self, "sharing_settings") + @property + @pulumi.getter(name="spaceStorageSettings") + def space_storage_settings(self) -> Optional['outputs.DomainDefaultSpaceStorageSettings']: + return pulumi.get(self, "space_storage_settings") + + @property + @pulumi.getter(name="studioWebPortal") + def studio_web_portal(self) -> Optional['DomainUserSettingsStudioWebPortal']: + """ + Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + """ + return pulumi.get(self, "studio_web_portal") + @pulumi.output_type class EndpointAlarm(dict): @@ -13625,6 +14066,8 @@ def __key_warning(key: str): suggest = "enable_online_store" elif key == "securityConfig": suggest = "security_config" + elif key == "storageType": + suggest = "storage_type" if suggest: pulumi.log.warn(f"Key '{key}' not found in OnlineStoreConfigProperties. Access the value via the '{suggest}' property getter instead.") @@ -13639,11 +14082,14 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, enable_online_store: Optional[bool] = None, - security_config: Optional['outputs.FeatureGroupOnlineStoreSecurityConfig'] = None): + security_config: Optional['outputs.FeatureGroupOnlineStoreSecurityConfig'] = None, + storage_type: Optional['FeatureGroupStorageType'] = None): if enable_online_store is not None: pulumi.set(__self__, "enable_online_store", enable_online_store) if security_config is not None: pulumi.set(__self__, "security_config", security_config) + if storage_type is not None: + pulumi.set(__self__, "storage_type", storage_type) @property @pulumi.getter(name="enableOnlineStore") @@ -13655,6 +14101,11 @@ def enable_online_store(self) -> Optional[bool]: def security_config(self) -> Optional['outputs.FeatureGroupOnlineStoreSecurityConfig']: return pulumi.get(self, "security_config") + @property + @pulumi.getter(name="storageType") + def storage_type(self) -> Optional['FeatureGroupStorageType']: + return pulumi.get(self, "storage_type") + @pulumi.output_type class ParallelismConfigurationProperties(dict): @@ -14318,6 +14769,125 @@ def value(self) -> str: return pulumi.get(self, "value") +@pulumi.output_type +class UserProfileCodeEditorAppSettings(dict): + """ + The CodeEditor app settings. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultResourceSpec": + suggest = "default_resource_spec" + elif key == "lifecycleConfigArns": + suggest = "lifecycle_config_arns" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserProfileCodeEditorAppSettings. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserProfileCodeEditorAppSettings.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserProfileCodeEditorAppSettings.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_resource_spec: Optional['outputs.UserProfileResourceSpec'] = None, + lifecycle_config_arns: Optional[Sequence[str]] = None): + """ + The CodeEditor app settings. + :param 'UserProfileResourceSpec' default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + :param Sequence[str] lifecycle_config_arns: A list of LifecycleConfigArns available for use with CodeEditor apps. + """ + if default_resource_spec is not None: + pulumi.set(__self__, "default_resource_spec", default_resource_spec) + if lifecycle_config_arns is not None: + pulumi.set(__self__, "lifecycle_config_arns", lifecycle_config_arns) + + @property + @pulumi.getter(name="defaultResourceSpec") + def default_resource_spec(self) -> Optional['outputs.UserProfileResourceSpec']: + """ + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the CodeEditor app. + """ + return pulumi.get(self, "default_resource_spec") + + @property + @pulumi.getter(name="lifecycleConfigArns") + def lifecycle_config_arns(self) -> Optional[Sequence[str]]: + """ + A list of LifecycleConfigArns available for use with CodeEditor apps. + """ + return pulumi.get(self, "lifecycle_config_arns") + + +@pulumi.output_type +class UserProfileCodeRepository(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "repositoryUrl": + suggest = "repository_url" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserProfileCodeRepository. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserProfileCodeRepository.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserProfileCodeRepository.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + repository_url: str): + """ + :param str repository_url: A CodeRepository (valid URL) to be used within Jupyter's Git extension. + """ + pulumi.set(__self__, "repository_url", repository_url) + + @property + @pulumi.getter(name="repositoryUrl") + def repository_url(self) -> str: + """ + A CodeRepository (valid URL) to be used within Jupyter's Git extension. + """ + return pulumi.get(self, "repository_url") + + +@pulumi.output_type +class UserProfileCustomFileSystemConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "efsFileSystemConfig": + suggest = "efs_file_system_config" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserProfileCustomFileSystemConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserProfileCustomFileSystemConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserProfileCustomFileSystemConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + efs_file_system_config: Optional['outputs.UserProfileEfsFileSystemConfig'] = None): + if efs_file_system_config is not None: + pulumi.set(__self__, "efs_file_system_config", efs_file_system_config) + + @property + @pulumi.getter(name="efsFileSystemConfig") + def efs_file_system_config(self) -> Optional['outputs.UserProfileEfsFileSystemConfig']: + return pulumi.get(self, "efs_file_system_config") + + @pulumi.output_type class UserProfileCustomImage(dict): """ @@ -14384,6 +14954,234 @@ def image_version_number(self) -> Optional[int]: return pulumi.get(self, "image_version_number") +@pulumi.output_type +class UserProfileCustomPosixUserConfig(dict): + def __init__(__self__, *, + gid: int, + uid: int): + pulumi.set(__self__, "gid", gid) + pulumi.set(__self__, "uid", uid) + + @property + @pulumi.getter + def gid(self) -> int: + return pulumi.get(self, "gid") + + @property + @pulumi.getter + def uid(self) -> int: + return pulumi.get(self, "uid") + + +@pulumi.output_type +class UserProfileDefaultEbsStorageSettings(dict): + """ + Properties related to the Amazon Elastic Block Store volume. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultEbsVolumeSizeInGb": + suggest = "default_ebs_volume_size_in_gb" + elif key == "maximumEbsVolumeSizeInGb": + suggest = "maximum_ebs_volume_size_in_gb" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserProfileDefaultEbsStorageSettings. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserProfileDefaultEbsStorageSettings.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserProfileDefaultEbsStorageSettings.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_ebs_volume_size_in_gb: int, + maximum_ebs_volume_size_in_gb: int): + """ + Properties related to the Amazon Elastic Block Store volume. + :param int default_ebs_volume_size_in_gb: Default size of the Amazon EBS volume in Gb + :param int maximum_ebs_volume_size_in_gb: Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + """ + pulumi.set(__self__, "default_ebs_volume_size_in_gb", default_ebs_volume_size_in_gb) + pulumi.set(__self__, "maximum_ebs_volume_size_in_gb", maximum_ebs_volume_size_in_gb) + + @property + @pulumi.getter(name="defaultEbsVolumeSizeInGb") + def default_ebs_volume_size_in_gb(self) -> int: + """ + Default size of the Amazon EBS volume in Gb + """ + return pulumi.get(self, "default_ebs_volume_size_in_gb") + + @property + @pulumi.getter(name="maximumEbsVolumeSizeInGb") + def maximum_ebs_volume_size_in_gb(self) -> int: + """ + Maximum size of the Amazon EBS volume in Gb. Must be greater than or equal to the DefaultEbsVolumeSizeInGb. + """ + return pulumi.get(self, "maximum_ebs_volume_size_in_gb") + + +@pulumi.output_type +class UserProfileDefaultSpaceStorageSettings(dict): + """ + Default storage settings for a space. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultEbsStorageSettings": + suggest = "default_ebs_storage_settings" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserProfileDefaultSpaceStorageSettings. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserProfileDefaultSpaceStorageSettings.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserProfileDefaultSpaceStorageSettings.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_ebs_storage_settings: Optional['outputs.UserProfileDefaultEbsStorageSettings'] = None): + """ + Default storage settings for a space. + """ + if default_ebs_storage_settings is not None: + pulumi.set(__self__, "default_ebs_storage_settings", default_ebs_storage_settings) + + @property + @pulumi.getter(name="defaultEbsStorageSettings") + def default_ebs_storage_settings(self) -> Optional['outputs.UserProfileDefaultEbsStorageSettings']: + return pulumi.get(self, "default_ebs_storage_settings") + + +@pulumi.output_type +class UserProfileEfsFileSystemConfig(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "fileSystemId": + suggest = "file_system_id" + elif key == "fileSystemPath": + suggest = "file_system_path" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserProfileEfsFileSystemConfig. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserProfileEfsFileSystemConfig.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserProfileEfsFileSystemConfig.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + file_system_id: str, + file_system_path: Optional[str] = None): + pulumi.set(__self__, "file_system_id", file_system_id) + if file_system_path is not None: + pulumi.set(__self__, "file_system_path", file_system_path) + + @property + @pulumi.getter(name="fileSystemId") + def file_system_id(self) -> str: + return pulumi.get(self, "file_system_id") + + @property + @pulumi.getter(name="fileSystemPath") + def file_system_path(self) -> Optional[str]: + return pulumi.get(self, "file_system_path") + + +@pulumi.output_type +class UserProfileJupyterLabAppSettings(dict): + """ + The JupyterLab app settings. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "codeRepositories": + suggest = "code_repositories" + elif key == "customImages": + suggest = "custom_images" + elif key == "defaultResourceSpec": + suggest = "default_resource_spec" + elif key == "lifecycleConfigArns": + suggest = "lifecycle_config_arns" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in UserProfileJupyterLabAppSettings. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + UserProfileJupyterLabAppSettings.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + UserProfileJupyterLabAppSettings.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + code_repositories: Optional[Sequence['outputs.UserProfileCodeRepository']] = None, + custom_images: Optional[Sequence['outputs.UserProfileCustomImage']] = None, + default_resource_spec: Optional['outputs.UserProfileResourceSpec'] = None, + lifecycle_config_arns: Optional[Sequence[str]] = None): + """ + The JupyterLab app settings. + :param Sequence['UserProfileCodeRepository'] code_repositories: A list of CodeRepositories available for use with JupyterLab apps. + :param Sequence['UserProfileCustomImage'] custom_images: A list of custom images available for use for JupyterLab apps + :param 'UserProfileResourceSpec' default_resource_spec: The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + :param Sequence[str] lifecycle_config_arns: A list of LifecycleConfigArns available for use with JupyterLab apps. + """ + if code_repositories is not None: + pulumi.set(__self__, "code_repositories", code_repositories) + if custom_images is not None: + pulumi.set(__self__, "custom_images", custom_images) + if default_resource_spec is not None: + pulumi.set(__self__, "default_resource_spec", default_resource_spec) + if lifecycle_config_arns is not None: + pulumi.set(__self__, "lifecycle_config_arns", lifecycle_config_arns) + + @property + @pulumi.getter(name="codeRepositories") + def code_repositories(self) -> Optional[Sequence['outputs.UserProfileCodeRepository']]: + """ + A list of CodeRepositories available for use with JupyterLab apps. + """ + return pulumi.get(self, "code_repositories") + + @property + @pulumi.getter(name="customImages") + def custom_images(self) -> Optional[Sequence['outputs.UserProfileCustomImage']]: + """ + A list of custom images available for use for JupyterLab apps + """ + return pulumi.get(self, "custom_images") + + @property + @pulumi.getter(name="defaultResourceSpec") + def default_resource_spec(self) -> Optional['outputs.UserProfileResourceSpec']: + """ + The default instance type and the Amazon Resource Name (ARN) of the default SageMaker image used by the JupyterLab app. + """ + return pulumi.get(self, "default_resource_spec") + + @property + @pulumi.getter(name="lifecycleConfigArns") + def lifecycle_config_arns(self) -> Optional[Sequence[str]]: + """ + A list of LifecycleConfigArns available for use with JupyterLab apps. + """ + return pulumi.get(self, "lifecycle_config_arns") + + @pulumi.output_type class UserProfileJupyterServerAppSettings(dict): """ @@ -14687,8 +15485,18 @@ class UserProfileUserSettings(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "executionRole": + if key == "codeEditorAppSettings": + suggest = "code_editor_app_settings" + elif key == "customFileSystemConfigs": + suggest = "custom_file_system_configs" + elif key == "customPosixUserConfig": + suggest = "custom_posix_user_config" + elif key == "defaultLandingUri": + suggest = "default_landing_uri" + elif key == "executionRole": suggest = "execution_role" + elif key == "jupyterLabAppSettings": + suggest = "jupyter_lab_app_settings" elif key == "jupyterServerAppSettings": suggest = "jupyter_server_app_settings" elif key == "kernelGatewayAppSettings": @@ -14699,6 +15507,10 @@ def __key_warning(key: str): suggest = "security_groups" elif key == "sharingSettings": suggest = "sharing_settings" + elif key == "spaceStorageSettings": + suggest = "space_storage_settings" + elif key == "studioWebPortal": + suggest = "studio_web_portal" if suggest: pulumi.log.warn(f"Key '{key}' not found in UserProfileUserSettings. Access the value via the '{suggest}' property getter instead.") @@ -14712,22 +15524,41 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, + code_editor_app_settings: Optional['outputs.UserProfileCodeEditorAppSettings'] = None, + custom_file_system_configs: Optional[Sequence['outputs.UserProfileCustomFileSystemConfig']] = None, + custom_posix_user_config: Optional['outputs.UserProfileCustomPosixUserConfig'] = None, + default_landing_uri: Optional[str] = None, execution_role: Optional[str] = None, + jupyter_lab_app_settings: Optional['outputs.UserProfileJupyterLabAppSettings'] = None, jupyter_server_app_settings: Optional['outputs.UserProfileJupyterServerAppSettings'] = None, kernel_gateway_app_settings: Optional['outputs.UserProfileKernelGatewayAppSettings'] = None, r_studio_server_pro_app_settings: Optional['outputs.UserProfileRStudioServerProAppSettings'] = None, security_groups: Optional[Sequence[str]] = None, - sharing_settings: Optional['outputs.UserProfileSharingSettings'] = None): + sharing_settings: Optional['outputs.UserProfileSharingSettings'] = None, + space_storage_settings: Optional['outputs.UserProfileDefaultSpaceStorageSettings'] = None, + studio_web_portal: Optional['UserProfileUserSettingsStudioWebPortal'] = None): """ A collection of settings that apply to users of Amazon SageMaker Studio. These settings are specified when the CreateUserProfile API is called, and as DefaultUserSettings when the CreateDomain API is called. + :param str default_landing_uri: Defines which Amazon SageMaker application users are directed to by default. :param str execution_role: The user profile Amazon Resource Name (ARN). :param 'UserProfileJupyterServerAppSettings' jupyter_server_app_settings: The Jupyter server's app settings. :param 'UserProfileKernelGatewayAppSettings' kernel_gateway_app_settings: The kernel gateway app settings. :param Sequence[str] security_groups: The security groups for the Amazon Virtual Private Cloud (VPC) that Studio uses for communication. :param 'UserProfileSharingSettings' sharing_settings: The sharing settings. - """ + :param 'UserProfileUserSettingsStudioWebPortal' studio_web_portal: Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + """ + if code_editor_app_settings is not None: + pulumi.set(__self__, "code_editor_app_settings", code_editor_app_settings) + if custom_file_system_configs is not None: + pulumi.set(__self__, "custom_file_system_configs", custom_file_system_configs) + if custom_posix_user_config is not None: + pulumi.set(__self__, "custom_posix_user_config", custom_posix_user_config) + if default_landing_uri is not None: + pulumi.set(__self__, "default_landing_uri", default_landing_uri) if execution_role is not None: pulumi.set(__self__, "execution_role", execution_role) + if jupyter_lab_app_settings is not None: + pulumi.set(__self__, "jupyter_lab_app_settings", jupyter_lab_app_settings) if jupyter_server_app_settings is not None: pulumi.set(__self__, "jupyter_server_app_settings", jupyter_server_app_settings) if kernel_gateway_app_settings is not None: @@ -14738,6 +15569,33 @@ def __init__(__self__, *, pulumi.set(__self__, "security_groups", security_groups) if sharing_settings is not None: pulumi.set(__self__, "sharing_settings", sharing_settings) + if space_storage_settings is not None: + pulumi.set(__self__, "space_storage_settings", space_storage_settings) + if studio_web_portal is not None: + pulumi.set(__self__, "studio_web_portal", studio_web_portal) + + @property + @pulumi.getter(name="codeEditorAppSettings") + def code_editor_app_settings(self) -> Optional['outputs.UserProfileCodeEditorAppSettings']: + return pulumi.get(self, "code_editor_app_settings") + + @property + @pulumi.getter(name="customFileSystemConfigs") + def custom_file_system_configs(self) -> Optional[Sequence['outputs.UserProfileCustomFileSystemConfig']]: + return pulumi.get(self, "custom_file_system_configs") + + @property + @pulumi.getter(name="customPosixUserConfig") + def custom_posix_user_config(self) -> Optional['outputs.UserProfileCustomPosixUserConfig']: + return pulumi.get(self, "custom_posix_user_config") + + @property + @pulumi.getter(name="defaultLandingUri") + def default_landing_uri(self) -> Optional[str]: + """ + Defines which Amazon SageMaker application users are directed to by default. + """ + return pulumi.get(self, "default_landing_uri") @property @pulumi.getter(name="executionRole") @@ -14747,6 +15605,11 @@ def execution_role(self) -> Optional[str]: """ return pulumi.get(self, "execution_role") + @property + @pulumi.getter(name="jupyterLabAppSettings") + def jupyter_lab_app_settings(self) -> Optional['outputs.UserProfileJupyterLabAppSettings']: + return pulumi.get(self, "jupyter_lab_app_settings") + @property @pulumi.getter(name="jupyterServerAppSettings") def jupyter_server_app_settings(self) -> Optional['outputs.UserProfileJupyterServerAppSettings']: @@ -14784,6 +15647,19 @@ def sharing_settings(self) -> Optional['outputs.UserProfileSharingSettings']: """ return pulumi.get(self, "sharing_settings") + @property + @pulumi.getter(name="spaceStorageSettings") + def space_storage_settings(self) -> Optional['outputs.UserProfileDefaultSpaceStorageSettings']: + return pulumi.get(self, "space_storage_settings") + + @property + @pulumi.getter(name="studioWebPortal") + def studio_web_portal(self) -> Optional['UserProfileUserSettingsStudioWebPortal']: + """ + Indicates whether the Studio experience is available to users. If not, users cannot access Studio. + """ + return pulumi.get(self, "studio_web_portal") + @pulumi.output_type class WorkteamCognitoMemberDefinition(dict): diff --git a/sdk/python/pulumi_aws_native/securityhub/_inputs.py b/sdk/python/pulumi_aws_native/securityhub/_inputs.py index ab3a0cd40d..97588a51cd 100644 --- a/sdk/python/pulumi_aws_native/securityhub/_inputs.py +++ b/sdk/python/pulumi_aws_native/securityhub/_inputs.py @@ -25,6 +25,7 @@ 'AutomationRulesActionArgs', 'AutomationRulesFindingFieldsUpdateArgs', 'AutomationRulesFindingFiltersArgs', + 'HubTagsArgs', 'StandardsControlArgs', ] @@ -907,6 +908,15 @@ def workflow_status(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Au pulumi.set(self, "workflow_status", value) +@pulumi.input_type +class HubTagsArgs: + def __init__(__self__): + """ + A key-value pair to associate with a resource. + """ + pass + + @pulumi.input_type class StandardsControlArgs: def __init__(__self__, *, diff --git a/sdk/python/pulumi_aws_native/securityhub/get_hub.py b/sdk/python/pulumi_aws_native/securityhub/get_hub.py index c67e7fd16d..ae3cbfb64a 100644 --- a/sdk/python/pulumi_aws_native/securityhub/get_hub.py +++ b/sdk/python/pulumi_aws_native/securityhub/get_hub.py @@ -8,6 +8,7 @@ import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities +from . import outputs __all__ = [ 'GetHubResult', @@ -18,46 +19,58 @@ @pulumi.output_type class GetHubResult: - def __init__(__self__, auto_enable_controls=None, control_finding_generator=None, enable_default_standards=None, id=None, tags=None): + def __init__(__self__, arn=None, auto_enable_controls=None, control_finding_generator=None, subscribed_at=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 auto_enable_controls and not isinstance(auto_enable_controls, bool): raise TypeError("Expected argument 'auto_enable_controls' to be a bool") pulumi.set(__self__, "auto_enable_controls", auto_enable_controls) if control_finding_generator and not isinstance(control_finding_generator, str): raise TypeError("Expected argument 'control_finding_generator' to be a str") pulumi.set(__self__, "control_finding_generator", control_finding_generator) - if enable_default_standards and not isinstance(enable_default_standards, bool): - raise TypeError("Expected argument 'enable_default_standards' to be a bool") - pulumi.set(__self__, "enable_default_standards", enable_default_standards) - if id and not isinstance(id, str): - raise TypeError("Expected argument 'id' to be a str") - pulumi.set(__self__, "id", id) + if subscribed_at and not isinstance(subscribed_at, str): + raise TypeError("Expected argument 'subscribed_at' to be a str") + pulumi.set(__self__, "subscribed_at", subscribed_at) if tags and not isinstance(tags, dict): raise TypeError("Expected argument 'tags' to be a dict") pulumi.set(__self__, "tags", tags) + @property + @pulumi.getter + def arn(self) -> Optional[str]: + """ + An ARN is automatically created for the customer. + """ + return pulumi.get(self, "arn") + @property @pulumi.getter(name="autoEnableControls") def auto_enable_controls(self) -> Optional[bool]: + """ + Whether to automatically enable new controls when they are added to standards that are enabled + """ return pulumi.get(self, "auto_enable_controls") @property @pulumi.getter(name="controlFindingGenerator") def control_finding_generator(self) -> Optional[str]: + """ + This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + """ return pulumi.get(self, "control_finding_generator") @property - @pulumi.getter(name="enableDefaultStandards") - def enable_default_standards(self) -> Optional[bool]: - return pulumi.get(self, "enable_default_standards") - - @property - @pulumi.getter - def id(self) -> Optional[str]: - return pulumi.get(self, "id") + @pulumi.getter(name="subscribedAt") + def subscribed_at(self) -> Optional[str]: + """ + The date and time when Security Hub was enabled in the account. + """ + return pulumi.get(self, "subscribed_at") @property @pulumi.getter - def tags(self) -> Optional[Any]: + def tags(self) -> Optional['outputs.HubTags']: return pulumi.get(self, "tags") @@ -67,35 +80,41 @@ def __await__(self): if False: yield self return GetHubResult( + arn=self.arn, auto_enable_controls=self.auto_enable_controls, control_finding_generator=self.control_finding_generator, - enable_default_standards=self.enable_default_standards, - id=self.id, + subscribed_at=self.subscribed_at, tags=self.tags) -def get_hub(id: Optional[str] = None, +def get_hub(arn: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetHubResult: """ - Resource Type definition for AWS::SecurityHub::Hub + The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. + + + :param str arn: An ARN is automatically created for the customer. """ __args__ = dict() - __args__['id'] = id + __args__['arn'] = arn opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke('aws-native:securityhub:getHub', __args__, opts=opts, typ=GetHubResult).value return AwaitableGetHubResult( + arn=pulumi.get(__ret__, 'arn'), auto_enable_controls=pulumi.get(__ret__, 'auto_enable_controls'), control_finding_generator=pulumi.get(__ret__, 'control_finding_generator'), - enable_default_standards=pulumi.get(__ret__, 'enable_default_standards'), - id=pulumi.get(__ret__, 'id'), + subscribed_at=pulumi.get(__ret__, 'subscribed_at'), tags=pulumi.get(__ret__, 'tags')) @_utilities.lift_output_func(get_hub) -def get_hub_output(id: Optional[pulumi.Input[str]] = None, +def get_hub_output(arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetHubResult]: """ - Resource Type definition for AWS::SecurityHub::Hub + The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. + + + :param str arn: An ARN is automatically created for the customer. """ ... diff --git a/sdk/python/pulumi_aws_native/securityhub/hub.py b/sdk/python/pulumi_aws_native/securityhub/hub.py index 9c222169d8..9f075d4f80 100644 --- a/sdk/python/pulumi_aws_native/securityhub/hub.py +++ b/sdk/python/pulumi_aws_native/securityhub/hub.py @@ -8,6 +8,8 @@ import pulumi.runtime from typing import Any, Mapping, Optional, Sequence, Union, overload from .. import _utilities +from . import outputs +from ._inputs import * __all__ = ['HubArgs', 'Hub'] @@ -17,9 +19,12 @@ def __init__(__self__, *, auto_enable_controls: Optional[pulumi.Input[bool]] = None, control_finding_generator: Optional[pulumi.Input[str]] = None, enable_default_standards: Optional[pulumi.Input[bool]] = None, - tags: Optional[Any] = None): + tags: Optional[pulumi.Input['HubTagsArgs']] = None): """ The set of arguments for constructing a Hub resource. + :param pulumi.Input[bool] auto_enable_controls: Whether to automatically enable new controls when they are added to standards that are enabled + :param pulumi.Input[str] control_finding_generator: This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + :param pulumi.Input[bool] enable_default_standards: Whether to enable the security standards that Security Hub has designated as automatically enabled. """ if auto_enable_controls is not None: pulumi.set(__self__, "auto_enable_controls", auto_enable_controls) @@ -33,6 +38,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="autoEnableControls") def auto_enable_controls(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to automatically enable new controls when they are added to standards that are enabled + """ return pulumi.get(self, "auto_enable_controls") @auto_enable_controls.setter @@ -42,6 +50,9 @@ def auto_enable_controls(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter(name="controlFindingGenerator") def control_finding_generator(self) -> Optional[pulumi.Input[str]]: + """ + This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + """ return pulumi.get(self, "control_finding_generator") @control_finding_generator.setter @@ -51,6 +62,9 @@ def control_finding_generator(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="enableDefaultStandards") def enable_default_standards(self) -> Optional[pulumi.Input[bool]]: + """ + Whether to enable the security standards that Security Hub has designated as automatically enabled. + """ return pulumi.get(self, "enable_default_standards") @enable_default_standards.setter @@ -59,20 +73,15 @@ def enable_default_standards(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter - def tags(self) -> Optional[Any]: + def tags(self) -> Optional[pulumi.Input['HubTagsArgs']]: return pulumi.get(self, "tags") @tags.setter - def tags(self, value: Optional[Any]): + def tags(self, value: Optional[pulumi.Input['HubTagsArgs']]): pulumi.set(self, "tags", value) -warnings.warn("""Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - - class Hub(pulumi.CustomResource): - warnings.warn("""Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""", DeprecationWarning) - @overload def __init__(__self__, resource_name: str, @@ -80,13 +89,16 @@ def __init__(__self__, auto_enable_controls: Optional[pulumi.Input[bool]] = None, control_finding_generator: Optional[pulumi.Input[str]] = None, enable_default_standards: Optional[pulumi.Input[bool]] = None, - tags: Optional[Any] = None, + tags: Optional[pulumi.Input[pulumi.InputType['HubTagsArgs']]] = None, __props__=None): """ - Resource Type definition for AWS::SecurityHub::Hub + The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[bool] auto_enable_controls: Whether to automatically enable new controls when they are added to standards that are enabled + :param pulumi.Input[str] control_finding_generator: This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + :param pulumi.Input[bool] enable_default_standards: Whether to enable the security standards that Security Hub has designated as automatically enabled. """ ... @overload @@ -95,7 +107,7 @@ def __init__(__self__, args: Optional[HubArgs] = None, opts: Optional[pulumi.ResourceOptions] = None): """ - Resource Type definition for AWS::SecurityHub::Hub + The AWS::SecurityHub::Hub resource represents the implementation of the AWS Security Hub service in your account. One hub resource is created for each Region in which you enable Security Hub. :param str resource_name: The name of the resource. :param HubArgs args: The arguments to use to populate this resource's properties. @@ -115,9 +127,8 @@ def _internal_init(__self__, auto_enable_controls: Optional[pulumi.Input[bool]] = None, control_finding_generator: Optional[pulumi.Input[str]] = None, enable_default_standards: Optional[pulumi.Input[bool]] = None, - tags: Optional[Any] = None, + tags: Optional[pulumi.Input[pulumi.InputType['HubTagsArgs']]] = None, __props__=None): - pulumi.log.warn("""Hub is deprecated: Hub is not yet supported by AWS Native, so its creation will currently fail. Please use the classic AWS provider, if possible.""") 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') @@ -130,6 +141,8 @@ def _internal_init(__self__, __props__.__dict__["control_finding_generator"] = control_finding_generator __props__.__dict__["enable_default_standards"] = enable_default_standards __props__.__dict__["tags"] = tags + __props__.__dict__["arn"] = None + __props__.__dict__["subscribed_at"] = None super(Hub, __self__).__init__( 'aws-native:securityhub:Hub', resource_name, @@ -152,29 +165,56 @@ def get(resource_name: str, __props__ = HubArgs.__new__(HubArgs) + __props__.__dict__["arn"] = None __props__.__dict__["auto_enable_controls"] = None __props__.__dict__["control_finding_generator"] = None __props__.__dict__["enable_default_standards"] = None + __props__.__dict__["subscribed_at"] = None __props__.__dict__["tags"] = None return Hub(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter + def arn(self) -> pulumi.Output[str]: + """ + An ARN is automatically created for the customer. + """ + return pulumi.get(self, "arn") + @property @pulumi.getter(name="autoEnableControls") def auto_enable_controls(self) -> pulumi.Output[Optional[bool]]: + """ + Whether to automatically enable new controls when they are added to standards that are enabled + """ return pulumi.get(self, "auto_enable_controls") @property @pulumi.getter(name="controlFindingGenerator") def control_finding_generator(self) -> pulumi.Output[Optional[str]]: + """ + This field, used when enabling Security Hub, specifies whether the calling account has consolidated control findings turned on. If the value for this field is set to SECURITY_CONTROL, Security Hub generates a single finding for a control check even when the check applies to multiple enabled standards. If the value for this field is set to STANDARD_CONTROL, Security Hub generates separate findings for a control check when the check applies to multiple enabled standards. + """ return pulumi.get(self, "control_finding_generator") @property @pulumi.getter(name="enableDefaultStandards") def enable_default_standards(self) -> pulumi.Output[Optional[bool]]: + """ + Whether to enable the security standards that Security Hub has designated as automatically enabled. + """ return pulumi.get(self, "enable_default_standards") + @property + @pulumi.getter(name="subscribedAt") + def subscribed_at(self) -> pulumi.Output[str]: + """ + The date and time when Security Hub was enabled in the account. + """ + return pulumi.get(self, "subscribed_at") + @property @pulumi.getter - def tags(self) -> pulumi.Output[Optional[Any]]: + def tags(self) -> pulumi.Output[Optional['outputs.HubTags']]: return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/securityhub/outputs.py b/sdk/python/pulumi_aws_native/securityhub/outputs.py index 4fb3188abb..1025138941 100644 --- a/sdk/python/pulumi_aws_native/securityhub/outputs.py +++ b/sdk/python/pulumi_aws_native/securityhub/outputs.py @@ -26,6 +26,7 @@ 'AutomationRulesAction', 'AutomationRulesFindingFieldsUpdate', 'AutomationRulesFindingFilters', + 'HubTags', 'StandardsControl', ] @@ -805,6 +806,18 @@ def workflow_status(self) -> Optional[Sequence['outputs.AutomationRuleStringFilt return pulumi.get(self, "workflow_status") +@pulumi.output_type +class HubTags(dict): + """ + A key-value pair to associate with a resource. + """ + def __init__(__self__): + """ + A key-value pair to associate with a resource. + """ + pass + + @pulumi.output_type class StandardsControl(dict): """ diff --git a/sdk/python/pulumi_aws_native/servicecatalogappregistry/application.py b/sdk/python/pulumi_aws_native/servicecatalogappregistry/application.py index e2d418844b..00890b1e20 100644 --- a/sdk/python/pulumi_aws_native/servicecatalogappregistry/application.py +++ b/sdk/python/pulumi_aws_native/servicecatalogappregistry/application.py @@ -121,6 +121,9 @@ def _internal_init(__self__, __props__.__dict__["description"] = description __props__.__dict__["name"] = name __props__.__dict__["tags"] = tags + __props__.__dict__["application_name"] = None + __props__.__dict__["application_tag_key"] = None + __props__.__dict__["application_tag_value"] = None __props__.__dict__["arn"] = None super(Application, __self__).__init__( 'aws-native:servicecatalogappregistry:Application', @@ -144,12 +147,39 @@ def get(resource_name: str, __props__ = ApplicationArgs.__new__(ApplicationArgs) + __props__.__dict__["application_name"] = None + __props__.__dict__["application_tag_key"] = None + __props__.__dict__["application_tag_value"] = None __props__.__dict__["arn"] = None __props__.__dict__["description"] = None __props__.__dict__["name"] = None __props__.__dict__["tags"] = None return Application(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="applicationName") + def application_name(self) -> pulumi.Output[str]: + """ + The name of the application. + """ + return pulumi.get(self, "application_name") + + @property + @pulumi.getter(name="applicationTagKey") + def application_tag_key(self) -> pulumi.Output[str]: + """ + The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + """ + return pulumi.get(self, "application_tag_key") + + @property + @pulumi.getter(name="applicationTagValue") + def application_tag_value(self) -> pulumi.Output[str]: + """ + The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + """ + return pulumi.get(self, "application_tag_value") + @property @pulumi.getter def arn(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_application.py b/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_application.py index 11e10dcf05..530d2a5e1c 100644 --- a/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_application.py +++ b/sdk/python/pulumi_aws_native/servicecatalogappregistry/get_application.py @@ -19,7 +19,16 @@ @pulumi.output_type class GetApplicationResult: - def __init__(__self__, arn=None, description=None, id=None, name=None, tags=None): + def __init__(__self__, application_name=None, application_tag_key=None, application_tag_value=None, arn=None, description=None, id=None, name=None, tags=None): + if application_name and not isinstance(application_name, str): + raise TypeError("Expected argument 'application_name' to be a str") + pulumi.set(__self__, "application_name", application_name) + if application_tag_key and not isinstance(application_tag_key, str): + raise TypeError("Expected argument 'application_tag_key' to be a str") + pulumi.set(__self__, "application_tag_key", application_tag_key) + if application_tag_value and not isinstance(application_tag_value, str): + raise TypeError("Expected argument 'application_tag_value' to be a str") + pulumi.set(__self__, "application_tag_value", application_tag_value) if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -36,6 +45,30 @@ def __init__(__self__, arn=None, description=None, id=None, name=None, tags=None raise TypeError("Expected argument 'tags' to be a dict") pulumi.set(__self__, "tags", tags) + @property + @pulumi.getter(name="applicationName") + def application_name(self) -> Optional[str]: + """ + The name of the application. + """ + return pulumi.get(self, "application_name") + + @property + @pulumi.getter(name="applicationTagKey") + def application_tag_key(self) -> Optional[str]: + """ + The key of the AWS application tag, which is awsApplication. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + """ + return pulumi.get(self, "application_tag_key") + + @property + @pulumi.getter(name="applicationTagValue") + def application_tag_value(self) -> Optional[str]: + """ + The value of the AWS application tag, which is the identifier of an associated resource. Applications created before 11/13/2023 or applications without the AWS application tag resource group return no value. + """ + return pulumi.get(self, "application_tag_value") + @property @pulumi.getter def arn(self) -> Optional[str]: @@ -74,6 +107,9 @@ def __await__(self): if False: yield self return GetApplicationResult( + application_name=self.application_name, + application_tag_key=self.application_tag_key, + application_tag_value=self.application_tag_value, arn=self.arn, description=self.description, id=self.id, @@ -92,6 +128,9 @@ def get_application(id: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:servicecatalogappregistry:getApplication', __args__, opts=opts, typ=GetApplicationResult).value return AwaitableGetApplicationResult( + application_name=pulumi.get(__ret__, 'application_name'), + application_tag_key=pulumi.get(__ret__, 'application_tag_key'), + application_tag_value=pulumi.get(__ret__, 'application_tag_value'), arn=pulumi.get(__ret__, 'arn'), description=pulumi.get(__ret__, 'description'), id=pulumi.get(__ret__, 'id'), diff --git a/sdk/python/pulumi_aws_native/sns/get_subscription.py b/sdk/python/pulumi_aws_native/sns/get_subscription.py index fe15b1dbcb..bcee01cde1 100644 --- a/sdk/python/pulumi_aws_native/sns/get_subscription.py +++ b/sdk/python/pulumi_aws_native/sns/get_subscription.py @@ -18,7 +18,7 @@ @pulumi.output_type class GetSubscriptionResult: - def __init__(__self__, delivery_policy=None, filter_policy=None, filter_policy_scope=None, id=None, raw_message_delivery=None, redrive_policy=None, region=None, subscription_role_arn=None): + def __init__(__self__, delivery_policy=None, filter_policy=None, filter_policy_scope=None, id=None, raw_message_delivery=None, redrive_policy=None, region=None, replay_policy=None, subscription_role_arn=None): if delivery_policy and not isinstance(delivery_policy, dict): raise TypeError("Expected argument 'delivery_policy' to be a dict") pulumi.set(__self__, "delivery_policy", delivery_policy) @@ -40,6 +40,9 @@ def __init__(__self__, delivery_policy=None, filter_policy=None, filter_policy_s if region and not isinstance(region, str): raise TypeError("Expected argument 'region' to be a str") pulumi.set(__self__, "region", region) + if replay_policy and not isinstance(replay_policy, dict): + raise TypeError("Expected argument 'replay_policy' to be a dict") + pulumi.set(__self__, "replay_policy", replay_policy) if subscription_role_arn and not isinstance(subscription_role_arn, str): raise TypeError("Expected argument 'subscription_role_arn' to be a str") pulumi.set(__self__, "subscription_role_arn", subscription_role_arn) @@ -79,6 +82,11 @@ def redrive_policy(self) -> Optional[Any]: def region(self) -> Optional[str]: return pulumi.get(self, "region") + @property + @pulumi.getter(name="replayPolicy") + def replay_policy(self) -> Optional[Any]: + return pulumi.get(self, "replay_policy") + @property @pulumi.getter(name="subscriptionRoleArn") def subscription_role_arn(self) -> Optional[str]: @@ -98,6 +106,7 @@ def __await__(self): raw_message_delivery=self.raw_message_delivery, redrive_policy=self.redrive_policy, region=self.region, + replay_policy=self.replay_policy, subscription_role_arn=self.subscription_role_arn) @@ -119,6 +128,7 @@ def get_subscription(id: Optional[str] = None, raw_message_delivery=pulumi.get(__ret__, 'raw_message_delivery'), redrive_policy=pulumi.get(__ret__, 'redrive_policy'), region=pulumi.get(__ret__, 'region'), + replay_policy=pulumi.get(__ret__, 'replay_policy'), subscription_role_arn=pulumi.get(__ret__, 'subscription_role_arn')) diff --git a/sdk/python/pulumi_aws_native/sns/subscription.py b/sdk/python/pulumi_aws_native/sns/subscription.py index 5cc1a66311..1fa89dc162 100644 --- a/sdk/python/pulumi_aws_native/sns/subscription.py +++ b/sdk/python/pulumi_aws_native/sns/subscription.py @@ -23,6 +23,7 @@ def __init__(__self__, *, raw_message_delivery: Optional[pulumi.Input[bool]] = None, redrive_policy: Optional[Any] = None, region: Optional[pulumi.Input[str]] = None, + replay_policy: Optional[Any] = None, subscription_role_arn: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Subscription resource. @@ -43,6 +44,8 @@ def __init__(__self__, *, pulumi.set(__self__, "redrive_policy", redrive_policy) if region is not None: pulumi.set(__self__, "region", region) + if replay_policy is not None: + pulumi.set(__self__, "replay_policy", replay_policy) if subscription_role_arn is not None: pulumi.set(__self__, "subscription_role_arn", subscription_role_arn) @@ -127,6 +130,15 @@ def region(self) -> Optional[pulumi.Input[str]]: def region(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "region", value) + @property + @pulumi.getter(name="replayPolicy") + def replay_policy(self) -> Optional[Any]: + return pulumi.get(self, "replay_policy") + + @replay_policy.setter + def replay_policy(self, value: Optional[Any]): + pulumi.set(self, "replay_policy", value) + @property @pulumi.getter(name="subscriptionRoleArn") def subscription_role_arn(self) -> Optional[pulumi.Input[str]]: @@ -155,6 +167,7 @@ def __init__(__self__, raw_message_delivery: Optional[pulumi.Input[bool]] = None, redrive_policy: Optional[Any] = None, region: Optional[pulumi.Input[str]] = None, + replay_policy: Optional[Any] = None, subscription_role_arn: Optional[pulumi.Input[str]] = None, topic_arn: Optional[pulumi.Input[str]] = None, __props__=None): @@ -196,6 +209,7 @@ def _internal_init(__self__, raw_message_delivery: Optional[pulumi.Input[bool]] = None, redrive_policy: Optional[Any] = None, region: Optional[pulumi.Input[str]] = None, + replay_policy: Optional[Any] = None, subscription_role_arn: Optional[pulumi.Input[str]] = None, topic_arn: Optional[pulumi.Input[str]] = None, __props__=None): @@ -218,6 +232,7 @@ def _internal_init(__self__, __props__.__dict__["raw_message_delivery"] = raw_message_delivery __props__.__dict__["redrive_policy"] = redrive_policy __props__.__dict__["region"] = region + __props__.__dict__["replay_policy"] = replay_policy __props__.__dict__["subscription_role_arn"] = subscription_role_arn if topic_arn is None and not opts.urn: raise TypeError("Missing required property 'topic_arn'") @@ -254,6 +269,7 @@ def get(resource_name: str, __props__.__dict__["raw_message_delivery"] = None __props__.__dict__["redrive_policy"] = None __props__.__dict__["region"] = None + __props__.__dict__["replay_policy"] = None __props__.__dict__["subscription_role_arn"] = None __props__.__dict__["topic_arn"] = None return Subscription(resource_name, opts=opts, __props__=__props__) @@ -298,6 +314,11 @@ def redrive_policy(self) -> pulumi.Output[Optional[Any]]: def region(self) -> pulumi.Output[Optional[str]]: return pulumi.get(self, "region") + @property + @pulumi.getter(name="replayPolicy") + def replay_policy(self) -> pulumi.Output[Optional[Any]]: + return pulumi.get(self, "replay_policy") + @property @pulumi.getter(name="subscriptionRoleArn") def subscription_role_arn(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/ssm/get_association.py b/sdk/python/pulumi_aws_native/ssm/get_association.py index acc852beb9..99ffeb7833 100644 --- a/sdk/python/pulumi_aws_native/ssm/get_association.py +++ b/sdk/python/pulumi_aws_native/ssm/get_association.py @@ -20,7 +20,7 @@ @pulumi.output_type class GetAssociationResult: - def __init__(__self__, apply_only_at_cron_interval=None, association_id=None, association_name=None, automation_target_parameter_name=None, calendar_names=None, compliance_severity=None, document_version=None, instance_id=None, max_concurrency=None, max_errors=None, name=None, output_location=None, parameters=None, schedule_expression=None, schedule_offset=None, sync_compliance=None, targets=None, wait_for_success_timeout_seconds=None): + def __init__(__self__, apply_only_at_cron_interval=None, association_id=None, association_name=None, automation_target_parameter_name=None, calendar_names=None, compliance_severity=None, document_version=None, instance_id=None, max_concurrency=None, max_errors=None, name=None, output_location=None, parameters=None, schedule_expression=None, schedule_offset=None, sync_compliance=None, targets=None): if apply_only_at_cron_interval and not isinstance(apply_only_at_cron_interval, bool): raise TypeError("Expected argument 'apply_only_at_cron_interval' to be a bool") pulumi.set(__self__, "apply_only_at_cron_interval", apply_only_at_cron_interval) @@ -72,9 +72,6 @@ def __init__(__self__, apply_only_at_cron_interval=None, association_id=None, as if targets and not isinstance(targets, list): raise TypeError("Expected argument 'targets' to be a list") pulumi.set(__self__, "targets", targets) - if wait_for_success_timeout_seconds and not isinstance(wait_for_success_timeout_seconds, int): - raise TypeError("Expected argument 'wait_for_success_timeout_seconds' to be a int") - pulumi.set(__self__, "wait_for_success_timeout_seconds", wait_for_success_timeout_seconds) @property @pulumi.getter(name="applyOnlyAtCronInterval") @@ -185,11 +182,6 @@ def targets(self) -> Optional[Sequence['outputs.AssociationTarget']]: """ return pulumi.get(self, "targets") - @property - @pulumi.getter(name="waitForSuccessTimeoutSeconds") - def wait_for_success_timeout_seconds(self) -> Optional[int]: - return pulumi.get(self, "wait_for_success_timeout_seconds") - class AwaitableGetAssociationResult(GetAssociationResult): # pylint: disable=using-constant-test @@ -213,8 +205,7 @@ def __await__(self): schedule_expression=self.schedule_expression, schedule_offset=self.schedule_offset, sync_compliance=self.sync_compliance, - targets=self.targets, - wait_for_success_timeout_seconds=self.wait_for_success_timeout_seconds) + targets=self.targets) def get_association(association_id: Optional[str] = None, @@ -247,8 +238,7 @@ def get_association(association_id: Optional[str] = None, schedule_expression=pulumi.get(__ret__, 'schedule_expression'), schedule_offset=pulumi.get(__ret__, 'schedule_offset'), sync_compliance=pulumi.get(__ret__, 'sync_compliance'), - targets=pulumi.get(__ret__, 'targets'), - wait_for_success_timeout_seconds=pulumi.get(__ret__, 'wait_for_success_timeout_seconds')) + targets=pulumi.get(__ret__, 'targets')) @_utilities.lift_output_func(get_association)