diff --git a/.docs.version b/.docs.version index b216cbb73b..18248abab0 100644 --- a/.docs.version +++ b/.docs.version @@ -1 +1 @@ -bc551ce690715b7ce48fb06001d0c1e10fa82459 +d590c28633819bbcb91f1a7ee1e5bc09e2f152c7 diff --git a/aws-cloudformation-schema/aws-applicationinsights-application.json b/aws-cloudformation-schema/aws-applicationinsights-application.json index a7c9a47a79..79d7d52208 100644 --- a/aws-cloudformation-schema/aws-applicationinsights-application.json +++ b/aws-cloudformation-schema/aws-applicationinsights-application.json @@ -29,6 +29,13 @@ "maxLength" : 300, "pattern" : "^arn:aws(-[\\w]+)*:[\\w\\d-]+:([\\w\\d-]*)?:[\\w\\d_-]*([:/].+)*$" }, + "SNSNotificationArn" : { + "description" : "Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application.", + "type" : "string", + "minLength" : 20, + "maxLength" : 300, + "pattern" : "^arn:aws(-[\\w]+)*:[\\w\\d-]+:([\\w\\d-]*)?:[\\w\\d_-]*([:/].+)*$" + }, "Tags" : { "description" : "The tags of Application Insights application.", "type" : "array", @@ -605,7 +612,7 @@ "required" : [ "ResourceGroupName" ], "primaryIdentifier" : [ "/properties/ApplicationARN" ], "readOnlyProperties" : [ "/properties/ApplicationARN" ], - "writeOnlyProperties" : [ "/properties/ComponentMonitoringSettings", "/properties/LogPatternSets", "/properties/CustomComponents", "/properties/GroupingType", "/properties/OpsItemSNSTopicArn", "/properties/AttachMissingPermission" ], + "writeOnlyProperties" : [ "/properties/ComponentMonitoringSettings", "/properties/LogPatternSets", "/properties/CustomComponents", "/properties/GroupingType", "/properties/OpsItemSNSTopicArn", "/properties/SNSNotificationArn", "/properties/AttachMissingPermission" ], "createOnlyProperties" : [ "/properties/ResourceGroupName", "/properties/GroupingType" ], "handlers" : { "create" : { diff --git a/aws-cloudformation-schema/aws-cleanrooms-analysistemplate.json b/aws-cloudformation-schema/aws-cleanrooms-analysistemplate.json index 2ee06fe24d..9043c9e0cd 100644 --- a/aws-cloudformation-schema/aws-cleanrooms-analysistemplate.json +++ b/aws-cloudformation-schema/aws-cleanrooms-analysistemplate.json @@ -19,7 +19,7 @@ }, "Type" : { "type" : "string", - "enum" : [ "SMALLINT", "INTEGER", "BIGINT", "DECIMAL", "REAL", "DOUBLE_PRECISION", "BOOLEAN", "CHAR", "VARCHAR", "DATE", "TIMESTAMP", "TIMESTAMPTZ", "TIME", "TIMETZ", "VARBYTE" ] + "enum" : [ "SMALLINT", "INTEGER", "BIGINT", "DECIMAL", "REAL", "DOUBLE_PRECISION", "BOOLEAN", "CHAR", "VARCHAR", "DATE", "TIMESTAMP", "TIMESTAMPTZ", "TIME", "TIMETZ", "VARBYTE", "BINARY", "BYTE", "CHARACTER", "DOUBLE", "FLOAT", "INT", "LONG", "NUMERIC", "SHORT", "STRING", "TIMESTAMP_LTZ", "TIMESTAMP_NTZ", "TINYINT" ] } }, "required" : [ "Name", "Type" ] diff --git a/aws-cloudformation-schema/aws-cleanrooms-collaboration.json b/aws-cloudformation-schema/aws-cleanrooms-collaboration.json index 0257ce171e..d86ee8430d 100644 --- a/aws-cloudformation-schema/aws-cleanrooms-collaboration.json +++ b/aws-cloudformation-schema/aws-cleanrooms-collaboration.json @@ -3,6 +3,10 @@ "description" : "Represents a collaboration between AWS accounts that allows for secure data collaboration", "documentationUrl" : "https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-collaboration.html", "definitions" : { + "AnalyticsEngine" : { + "type" : "string", + "enum" : [ "CLEAN_ROOMS_SQL", "SPARK" ] + }, "CollaborationQueryLogStatus" : { "type" : "string", "enum" : [ "ENABLED", "DISABLED" ] @@ -161,13 +165,16 @@ "QueryLogStatus" : { "$ref" : "#/definitions/CollaborationQueryLogStatus" }, + "AnalyticsEngine" : { + "$ref" : "#/definitions/AnalyticsEngine" + }, "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", "/properties/CreatorPaymentConfiguration" ], + "createOnlyProperties" : [ "/properties/CreatorDisplayName", "/properties/CreatorMemberAbilities", "/properties/DataEncryptionMetadata", "/properties/QueryLogStatus", "/properties/Members", "/properties/CreatorPaymentConfiguration", "/properties/AnalyticsEngine" ], "primaryIdentifier" : [ "/properties/CollaborationIdentifier" ], "tagging" : { "taggable" : true, diff --git a/aws-cloudformation-schema/aws-codebuild-fleet.json b/aws-cloudformation-schema/aws-codebuild-fleet.json index 46adb4b36c..983691c635 100644 --- a/aws-cloudformation-schema/aws-codebuild-fleet.json +++ b/aws-cloudformation-schema/aws-codebuild-fleet.json @@ -18,7 +18,7 @@ }, "ComputeType" : { "type" : "string", - "enum" : [ "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_XLARGE", "BUILD_GENERAL1_2XLARGE" ] + "enum" : [ "BUILD_GENERAL1_SMALL", "BUILD_GENERAL1_MEDIUM", "BUILD_GENERAL1_LARGE", "BUILD_GENERAL1_XLARGE", "BUILD_GENERAL1_2XLARGE", "ATTRIBUTE_BASED_COMPUTE" ] }, "OverflowBehavior" : { "type" : "string", @@ -31,6 +31,9 @@ "FleetVpcConfig" : { "$ref" : "#/definitions/VpcConfig" }, + "FleetProxyConfiguration" : { + "$ref" : "#/definitions/ProxyConfiguration" + }, "Tags" : { "type" : "array", "insertionOrder" : false, @@ -45,6 +48,12 @@ "ImageId" : { "type" : "string", "pattern" : "^((aws/codebuild/[A-Za-z-]+:[0-9]+(-[0-9._]+)?)|ami-[a-z0-9]{1,1020})$" + }, + "ScalingConfiguration" : { + "$ref" : "#/definitions/ScalingConfigurationInput" + }, + "ComputeConfiguration" : { + "$ref" : "#/definitions/ComputeConfiguration" } }, "definitions" : { @@ -91,6 +100,96 @@ } } } + }, + "ProxyConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "DefaultBehavior" : { + "type" : "string", + "enum" : [ "ALLOW_ALL", "DENY_ALL" ] + }, + "OrderedProxyRules" : { + "type" : "array", + "insertionOrder" : true, + "items" : { + "$ref" : "#/definitions/FleetProxyRule" + } + } + } + }, + "FleetProxyRule" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Type" : { + "type" : "string", + "enum" : [ "DOMAIN", "IP" ] + }, + "Effect" : { + "type" : "string", + "enum" : [ "ALLOW", "DENY" ] + }, + "Entities" : { + "type" : "array", + "insertionOrder" : false, + "items" : { + "type" : "string" + } + } + } + }, + "ScalingConfigurationInput" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "MaxCapacity" : { + "type" : "integer", + "minimum" : 1 + }, + "ScalingType" : { + "type" : "string", + "enum" : [ "TARGET_TRACKING_SCALING" ] + }, + "TargetTrackingScalingConfigs" : { + "type" : "array", + "items" : { + "$ref" : "#/definitions/TargetTrackingScalingConfiguration" + } + } + } + }, + "TargetTrackingScalingConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "MetricType" : { + "type" : "string", + "enum" : [ "FLEET_UTILIZATION_RATE" ] + }, + "TargetValue" : { + "type" : "number" + } + } + }, + "ComputeConfiguration" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "vCpu" : { + "type" : "integer" + }, + "memory" : { + "type" : "integer" + }, + "disk" : { + "type" : "integer" + }, + "machineType" : { + "type" : "string", + "enum" : [ "GENERAL", "NVME" ] + } + } } }, "primaryIdentifier" : [ "/properties/Arn" ], diff --git a/aws-cloudformation-schema/aws-ecs-service.json b/aws-cloudformation-schema/aws-ecs-service.json index 8c66e7ca89..f340bb178e 100644 --- a/aws-cloudformation-schema/aws-ecs-service.json +++ b/aws-cloudformation-schema/aws-ecs-service.json @@ -8,7 +8,7 @@ "cloudFormationSystemTags" : false }, "propertyTransform" : { - "/properties/Role" : "Role $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,2}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/{1}\", Role])" + "/properties/Role" : "Role $OR $join([\"arn:(aws)[-]{0,1}[a-z]{0,3}[-]{0,1}[a-z]{0,3}:iam::[0-9]{12}[:]role/{1}\", Role])" }, "handlers" : { "read" : { @@ -106,6 +106,23 @@ } } }, + "VpcLatticeConfiguration" : { + "description" : "", + "additionalProperties" : false, + "type" : "object", + "properties" : { + "TargetGroupArn" : { + "type" : "string" + }, + "PortName" : { + "type" : "string" + }, + "RoleArn" : { + "type" : "string" + } + }, + "required" : [ "RoleArn", "TargetGroupArn", "PortName" ] + }, "LoadBalancer" : { "description" : "The ``LoadBalancer`` property specifies details on a load balancer that is used with a service.\n If the service is using the ``CODE_DEPLOY`` deployment controller, the service is required to use either an Application Load Balancer or Network Load Balancer. When you are creating an ACDlong deployment group, you specify two target groups (referred to as a ``targetGroupPair``). Each target group binds to a separate task set in the deployment. The load balancer can also have up to two listeners, a required listener for production traffic and an optional listener that allows you to test new revisions of the service before routing production traffic to it.\n Services with tasks that use the ``awsvpc`` network mode (for example, those with the Fargate launch type) only support Application Load Balancers and Network Load Balancers. Classic Load Balancers are not supported. Also, when you create any target groups for these services, you must choose ``ip`` as the target type, not ``instance``. Tasks that use the ``awsvpc`` network mode are associated with an elastic network interface, not an Amazon EC2 instance.", "additionalProperties" : false, @@ -116,7 +133,7 @@ "type" : "string" }, "LoadBalancerName" : { - "description" : "The name of the load balancer to associate with the service or task set.\n If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted.", + "description" : "The name of the load balancer to associate with the Amazon ECS service or task set.\n If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted.", "type" : "string" }, "ContainerName" : { @@ -442,7 +459,7 @@ "required" : [ "Enable", "Rollback" ] }, "DeploymentConfiguration" : { - "description" : "Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods.", + "description" : "Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks.", "additionalProperties" : false, "type" : "object", "properties" : { @@ -576,6 +593,12 @@ "description" : "", "type" : "string" }, + "AvailabilityZoneRebalancing" : { + "default" : "DISABLED", + "description" : "", + "type" : "string", + "enum" : [ "ENABLED", "DISABLED" ] + }, "SchedulingStrategy" : { "description" : "The scheduling strategy to use for the service. For more information, see [Services](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs_services.html).\n There are two service scheduler strategies available:\n + ``REPLICA``-The replica scheduling strategy places and maintains the desired number of tasks across your cluster. By default, the service scheduler spreads tasks across Availability Zones. You can use task placement strategies and constraints to customize task placement decisions. This scheduler strategy is required if the service uses the ``CODE_DEPLOY`` or ``EXTERNAL`` deployment controller types.\n + ``DAEMON``-The daemon scheduling strategy deploys exactly one task on each active container instance that meets all of the task placement constraints that you specify in your cluster. The service scheduler also evaluates the task placement constraints for running tasks and will stop tasks that don't meet the placement constraints. When you're using this strategy, you don't need to specify a desired number of tasks, a task placement strategy, or use Service Auto Scaling policies.\n Tasks using the Fargate launch type or the ``CODE_DEPLOY`` or ``EXTERNAL`` deployment controller types don't support the ``DAEMON`` scheduling strategy.", "type" : "string", @@ -630,6 +653,13 @@ "description" : "The number of instantiations of the specified task definition to place and keep running in your service.\n For new services, if a desired count is not specified, a default value of ``1`` is used. When using the ``DAEMON`` scheduling strategy, the desired count is not required.\n For existing services, if a desired count is not specified, it is omitted from the operation.", "type" : "integer" }, + "VpcLatticeConfigurations" : { + "description" : "", + "type" : "array", + "items" : { + "$ref" : "#/definitions/VpcLatticeConfiguration" + } + }, "DeploymentController" : { "description" : "The deployment controller to use for the service. If no deployment controller is specified, the default value of ``ECS`` is used.", "$ref" : "#/definitions/DeploymentController" @@ -647,7 +677,7 @@ "type" : "string" }, "DeploymentConfiguration" : { - "description" : "Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods.", + "description" : "Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks.", "$ref" : "#/definitions/DeploymentConfiguration" } } diff --git a/aws-cloudformation-schema/aws-emrcontainers-virtualcluster.json b/aws-cloudformation-schema/aws-emrcontainers-virtualcluster.json index 63c82382f0..8d64bca107 100644 --- a/aws-cloudformation-schema/aws-emrcontainers-virtualcluster.json +++ b/aws-cloudformation-schema/aws-emrcontainers-virtualcluster.json @@ -100,6 +100,14 @@ "createOnlyProperties" : [ "/properties/ContainerProvider", "/properties/Name" ], "readOnlyProperties" : [ "/properties/Arn", "/properties/Id" ], "primaryIdentifier" : [ "/properties/Id" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "emr-containers:TagResource", "emr-containers:UntagResource" ] + }, "handlers" : { "create" : { "permissions" : [ "emr-containers:CreateVirtualCluster", "emr-containers:TagResource", "iam:CreateServiceLinkedRole" ] @@ -108,7 +116,7 @@ "permissions" : [ "emr-containers:DescribeVirtualCluster" ] }, "delete" : { - "permissions" : [ "emr-containers:DeleteVirtualCluster" ] + "permissions" : [ "emr-containers:DeleteVirtualCluster", "emr-containers:DescribeVirtualCluster" ] }, "list" : { "permissions" : [ "emr-containers:ListVirtualClusters" ] diff --git a/aws-cloudformation-schema/aws-gamelift-alias.json b/aws-cloudformation-schema/aws-gamelift-alias.json index b34f29f759..94ce898a24 100644 --- a/aws-cloudformation-schema/aws-gamelift-alias.json +++ b/aws-cloudformation-schema/aws-gamelift-alias.json @@ -13,7 +13,7 @@ "FleetId" : { "description" : "A unique identifier for a fleet that the alias points to. If you specify SIMPLE for the Type property, you must specify this property.", "type" : "string", - "pattern" : "^fleet-\\S+" + "pattern" : "^[a-z]*fleet-[a-zA-Z0-9\\-]+" }, "Type" : { "description" : "Simple routing strategy. The alias resolves to one specific fleet. Use this type when routing to active fleets.", diff --git a/aws-cloudformation-schema/aws-gamelift-containergroupdefinition.json b/aws-cloudformation-schema/aws-gamelift-containergroupdefinition.json index 2028bae60d..a399e2680d 100644 --- a/aws-cloudformation-schema/aws-gamelift-containergroupdefinition.json +++ b/aws-cloudformation-schema/aws-gamelift-containergroupdefinition.json @@ -9,11 +9,11 @@ }, "$schema" : "https://schema.cloudformation.us-east-1.amazonaws.com/provider.definition.schema.v1.json", "typeName" : "AWS::GameLift::ContainerGroupDefinition", - "readOnlyProperties" : [ "/properties/ContainerGroupDefinitionArn", "/properties/CreationTime", "/properties/ContainerDefinitions/*/ResolvedImageDigest", "/properties/Status", "/properties/StatusReason" ], + "readOnlyProperties" : [ "/properties/ContainerGroupDefinitionArn", "/properties/CreationTime", "/properties/Status", "/properties/StatusReason" ], "description" : "The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition.", - "createOnlyProperties" : [ "/properties/Name", "/properties/SchedulingStrategy", "/properties/TotalMemoryLimit", "/properties/TotalCpuLimit", "/properties/ContainerDefinitions", "/properties/OperatingSystem" ], + "createOnlyProperties" : [ "/properties/Name" ], "primaryIdentifier" : [ "/properties/Name" ], - "required" : [ "Name", "TotalMemoryLimit", "TotalCpuLimit", "ContainerDefinitions", "OperatingSystem" ], + "required" : [ "Name", "OperatingSystem", "TotalMemoryLimitMebibytes", "TotalVcpuLimit" ], "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-gamelift.git", "handlers" : { "read" : { @@ -23,7 +23,7 @@ "permissions" : [ "gamelift:CreateContainerGroupDefinition", "gamelift:DescribeContainerGroupDefinition", "gamelift:ListTagsForResource", "gamelift:TagResource", "ecr:BatchCheckLayerAvailability", "ecr:BatchGetImage", "ecr:GetDownloadUrlForLayer", "ecr:DescribeImages" ] }, "update" : { - "permissions" : [ "gamelift:ListTagsForResource", "gamelift:TagResource", "gamelift:UntagResource" ] + "permissions" : [ "gamelift:UpdateContainerGroupDefinition", "gamelift:ListTagsForResource", "gamelift:TagResource", "gamelift:UntagResource" ] }, "list" : { "permissions" : [ "gamelift:ListContainerGroupDefinitions" ] @@ -86,25 +86,6 @@ }, "required" : [ "InstancePath" ] }, - "MemoryLimits" : { - "description" : "Specifies how much memory is available to the container.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "SoftLimit" : { - "description" : "The amount of memory that is reserved for the container.", - "maximum" : 1024000, - "type" : "integer", - "minimum" : 4 - }, - "HardLimit" : { - "description" : "The hard limit of memory to reserve for the container.", - "maximum" : 1024000, - "type" : "integer", - "minimum" : 4 - } - } - }, "ContainerDependency" : { "description" : "A dependency that impacts a container's startup and shutdown.", "additionalProperties" : false, @@ -147,111 +128,6 @@ }, "required" : [ "Name", "Value" ] }, - "ContainerDefinition" : { - "description" : "Details about a container that is used in a container fleet", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "WorkingDirectory" : { - "minLength" : 1, - "pattern" : "^.*$", - "description" : "The working directory to run commands inside the container in.", - "type" : "string", - "maxLength" : 255 - }, - "MemoryLimits" : { - "description" : "Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition.", - "$ref" : "#/definitions/MemoryLimits" - }, - "HealthCheck" : { - "description" : "Specifies how the health of the containers will be checked.", - "$ref" : "#/definitions/ContainerHealthCheck" - }, - "Cpu" : { - "description" : "The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units", - "maximum" : 10240, - "type" : "integer", - "minimum" : 1 - }, - "EntryPoint" : { - "minItems" : 1, - "maxItems" : 20, - "uniqueItems" : false, - "description" : "The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array.", - "insertionOrder" : true, - "type" : "array", - "items" : { - "minLength" : 1, - "type" : "string", - "maxLength" : 1024 - } - }, - "ImageUri" : { - "minLength" : 1, - "pattern" : "^[a-zA-Z0-9-_\\.@\\/:]+$", - "description" : "Specifies the image URI of this container.", - "type" : "string", - "maxLength" : 255 - }, - "ResolvedImageDigest" : { - "pattern" : "^sha256:[a-fA-F0-9]{64}$", - "description" : "The digest of the container image.", - "type" : "string" - }, - "Essential" : { - "description" : "Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group.", - "type" : "boolean" - }, - "PortConfiguration" : { - "description" : "Defines the ports on the container.", - "$ref" : "#/definitions/PortConfiguration" - }, - "DependsOn" : { - "minItems" : 1, - "maxItems" : 10, - "uniqueItems" : true, - "description" : "A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers.", - "insertionOrder" : true, - "type" : "array", - "items" : { - "$ref" : "#/definitions/ContainerDependency" - } - }, - "ContainerName" : { - "minLength" : 1, - "pattern" : "^[a-zA-Z0-9-]+$", - "description" : "A descriptive label for the container definition. Container definition names must be unique with a container group definition.", - "type" : "string", - "maxLength" : 128 - }, - "Command" : { - "minItems" : 1, - "maxItems" : 20, - "uniqueItems" : false, - "description" : "The command that's passed to the container.", - "insertionOrder" : true, - "type" : "array", - "items" : { - "minLength" : 1, - "pattern" : "^.*$", - "type" : "string", - "maxLength" : 255 - } - }, - "Environment" : { - "minItems" : 1, - "maxItems" : 20, - "uniqueItems" : true, - "description" : "The environment variables to pass to a container.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/ContainerEnvironment" - } - } - }, - "required" : [ "ContainerName", "ImageUri" ] - }, "Tag" : { "description" : "A key-value pair to associate with a resource.", "additionalProperties" : false, @@ -274,25 +150,6 @@ }, "required" : [ "Key", "Value" ] }, - "PortConfiguration" : { - "description" : "Defines the ports on a container.", - "additionalProperties" : false, - "type" : "object", - "properties" : { - "ContainerPortRanges" : { - "minItems" : 1, - "maxItems" : 100, - "uniqueItems" : true, - "description" : "Specifies one or more ranges of ports on a container.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/ContainerPortRange" - } - } - }, - "required" : [ "ContainerPortRanges" ] - }, "ContainerHealthCheck" : { "description" : "Specifies how the process manager checks the health of containers.", "additionalProperties" : false, @@ -338,19 +195,38 @@ } }, "required" : [ "Command" ] + }, + "PortConfiguration" : { + "description" : "Defines the ports on a container.", + "additionalProperties" : false, + "type" : "object", + "properties" : { + "ContainerPortRanges" : { + "minItems" : 1, + "maxItems" : 100, + "uniqueItems" : true, + "description" : "Specifies one or more ranges of ports on a container.", + "insertionOrder" : false, + "type" : "array", + "items" : { + "$ref" : "#/definitions/ContainerPortRange" + } + } + }, + "required" : [ "ContainerPortRanges" ] } }, "properties" : { - "Status" : { - "description" : "A string indicating ContainerGroupDefinition status.", - "type" : "string", - "enum" : [ "READY", "COPYING", "FAILED" ] - }, "OperatingSystem" : { "description" : "The operating system of the container group", "type" : "string", "enum" : [ "AMAZON_LINUX_2023" ] }, + "Status" : { + "description" : "A string indicating ContainerGroupDefinition status.", + "type" : "string", + "enum" : [ "READY", "COPYING", "FAILED" ] + }, "StatusReason" : { "description" : "A string indicating the reason for ContainerGroupDefinition status.", "type" : "string" @@ -369,32 +245,10 @@ "type" : "string", "maxLength" : 512 }, - "SchedulingStrategy" : { - "description" : "Specifies whether the container group includes replica or daemon containers.", - "type" : "string", - "enum" : [ "REPLICA", "DAEMON" ] - }, - "TotalMemoryLimit" : { - "description" : "The maximum amount of memory (in MiB) to allocate for this container group.", - "maximum" : 1024000, - "type" : "integer", - "minimum" : 4 - }, "CreationTime" : { "description" : "A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example \"1469498468.057\").", "type" : "string" }, - "ContainerDefinitions" : { - "minItems" : 1, - "maxItems" : 10, - "uniqueItems" : true, - "description" : "A collection of container definitions that define the containers in this group.", - "insertionOrder" : false, - "type" : "array", - "items" : { - "$ref" : "#/definitions/ContainerDefinition" - } - }, "SourceVersionNumber" : { "description" : "A specific ContainerGroupDefinition version to be updated", "type" : "integer", @@ -419,12 +273,6 @@ "insertionOrder" : false, "type" : "array", "items" : { } - }, - "TotalCpuLimit" : { - "description" : "The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.)", - "maximum" : 10240, - "type" : "integer", - "minimum" : 128 } } } \ No newline at end of file diff --git a/aws-cloudformation-schema/aws-gamelift-fleet.json b/aws-cloudformation-schema/aws-gamelift-fleet.json index 6eab3e9f40..38d74fde34 100644 --- a/aws-cloudformation-schema/aws-gamelift-fleet.json +++ b/aws-cloudformation-schema/aws-gamelift-fleet.json @@ -30,72 +30,6 @@ "additionalProperties" : false, "required" : [ "CertificateType" ] }, - "ConnectionPortRange" : { - "description" : "Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet.", - "type" : "object", - "properties" : { - "FromPort" : { - "description" : "A starting value for a range of allowed port numbers.", - "type" : "integer", - "minimum" : 1, - "maximum" : 60000 - }, - "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 - } - }, - "additionalProperties" : false, - "required" : [ "FromPort", "ToPort" ] - }, - "ContainerGroupsConfiguration" : { - "description" : "Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet.", - "type" : "object", - "properties" : { - "ContainerGroupDefinitionNames" : { - "description" : "The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group.", - "type" : "array", - "insertionOrder" : false, - "minItems" : 1, - "maxItems" : 2, - "items" : { - "type" : "string", - "minLength" : 1, - "maxLength" : 128, - "pattern" : "^[a-zA-Z0-9\\-]+$" - } - }, - "ConnectionPortRange" : { - "$ref" : "#/definitions/ConnectionPortRange" - }, - "ContainerGroupsPerInstance" : { - "$ref" : "#/definitions/ContainerGroupsPerInstance" - } - }, - "additionalProperties" : false, - "required" : [ "ContainerGroupDefinitionNames", "ConnectionPortRange" ] - }, - "ContainerGroupsPerInstance" : { - "description" : "The number of container groups per instance.", - "type" : "object", - "properties" : { - "DesiredReplicaContainerGroupsPerInstance" : { - "description" : "Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum.", - "type" : "integer", - "minimum" : 1, - "maximum" : 5000 - }, - "MaxReplicaContainerGroupsPerInstance" : { - "description" : "GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports.", - "type" : "integer", - "minimum" : 1, - "maximum" : 5000 - } - }, - "additionalProperties" : false - }, "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", @@ -343,10 +277,7 @@ "ComputeType" : { "description" : "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", "type" : "string", - "enum" : [ "EC2", "ANYWHERE", "CONTAINER" ] - }, - "ContainerGroupsConfiguration" : { - "$ref" : "#/definitions/ContainerGroupsConfiguration" + "enum" : [ "EC2", "ANYWHERE" ] }, "Description" : { "description" : "A human-readable description of a fleet.", @@ -488,9 +419,9 @@ }, "required" : [ "Name" ], "additionalProperties" : false, - "createOnlyProperties" : [ "/properties/ApplyCapacity", "/properties/BuildId", "/properties/CertificateConfiguration", "/properties/ContainerGroupsConfiguration", "/properties/EC2InstanceType", "/properties/FleetType", "/properties/InstanceRoleARN", "/properties/InstanceRoleCredentialsProvider", "/properties/LogPaths", "/properties/PeerVpcAwsAccountId", "/properties/PeerVpcId", "/properties/ScriptId", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath", "/properties/ComputeType" ], + "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/ComputeType" ], "deprecatedProperties" : [ "/properties/LogPaths", "/properties/ServerLaunchParameters", "/properties/ServerLaunchPath" ], - "readOnlyProperties" : [ "/properties/ContainerGroupsConfiguration/ContainerGroupsPerInstance/MaxReplicaContainerGroupsPerInstance", "/properties/FleetId" ], + "readOnlyProperties" : [ "/properties/FleetId" ], "writeOnlyProperties" : [ "/properties/ApplyCapacity" ], "primaryIdentifier" : [ "/properties/FleetId" ], "handlers" : { diff --git a/aws-cloudformation-schema/aws-healthlake-fhirdatastore.json b/aws-cloudformation-schema/aws-healthlake-fhirdatastore.json index cca57c44cf..ebd88d0c6d 100644 --- a/aws-cloudformation-schema/aws-healthlake-fhirdatastore.json +++ b/aws-cloudformation-schema/aws-healthlake-fhirdatastore.json @@ -184,11 +184,18 @@ } }, "additionalProperties" : false, - "taggable" : true, "required" : [ "DatastoreTypeVersion" ], "readOnlyProperties" : [ "/properties/CreatedAt", "/properties/DatastoreArn", "/properties/DatastoreEndpoint", "/properties/DatastoreId", "/properties/DatastoreStatus" ], "primaryIdentifier" : [ "/properties/DatastoreId" ], "createOnlyProperties" : [ "/properties/DatastoreName", "/properties/DatastoreTypeVersion", "/properties/PreloadDataConfig", "/properties/SseConfiguration", "/properties/IdentityProviderConfiguration" ], + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "healthlake:UntagResource", "healthlake:TagResource", "healthlake:ListTagsForResource" ] + }, "handlers" : { "create" : { "permissions" : [ "healthlake:CreateFHIRDatastore", "healthlake:DescribeFHIRDatastore", "iam:PassRole", "kms:DescribeKey", "kms:CreateGrant", "kms:GenerateDataKey", "kms:Decrypt", "iam:GetRole", "iam:CreateServiceLinkedRole", "ram:GetResourceShareInvitations", "ram:AcceptResourceShareInvitation", "glue:CreateDatabase", "glue:DeleteDatabase", "lambda:InvokeFunction", "healthlake:TagResource", "healthlake:UntagResource", "healthlake:ListTagsForResource" ] diff --git a/aws-cloudformation-schema/aws-iotwireless-destination.json b/aws-cloudformation-schema/aws-iotwireless-destination.json index c460948f0e..1a3a364299 100644 --- a/aws-cloudformation-schema/aws-iotwireless-destination.json +++ b/aws-cloudformation-schema/aws-iotwireless-destination.json @@ -67,16 +67,23 @@ "readOnlyProperties" : [ "/properties/Arn" ], "createOnlyProperties" : [ "/properties/Name" ], "primaryIdentifier" : [ "/properties/Name" ], - "taggable" : true, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + }, "handlers" : { "create" : { - "permissions" : [ "iam:PassRole", "iotwireless:CreateDestination", "iotwireless:TagResource", "iotwireless:ListTagsForResource" ] + "permissions" : [ "iam:PassRole", "iotwireless:CreateDestination", "iotwireless:TagResource" ] }, "read" : { "permissions" : [ "iotwireless:GetDestination", "iotwireless:ListTagsForResource" ] }, "update" : { - "permissions" : [ "iam:PassRole", "iotwireless:UpdateDestination", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + "permissions" : [ "iam:PassRole", "iotwireless:GetDestination", "iotwireless:UpdateDestination", "iotwireless:UntagResource", "iotwireless:TagResource" ] }, "delete" : { "permissions" : [ "iotwireless:DeleteDestination" ] diff --git a/aws-cloudformation-schema/aws-iotwireless-deviceprofile.json b/aws-cloudformation-schema/aws-iotwireless-deviceprofile.json index 8653f63744..09784b1244 100644 --- a/aws-cloudformation-schema/aws-iotwireless-deviceprofile.json +++ b/aws-cloudformation-schema/aws-iotwireless-deviceprofile.json @@ -150,11 +150,22 @@ "additionalProperties" : false, "required" : [ ], "readOnlyProperties" : [ "/properties/Arn", "/properties/Id" ], + "createOnlyProperties" : [ "/properties/Name", "/properties/LoRaWAN" ], "primaryIdentifier" : [ "/properties/Id" ], - "taggable" : true, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + }, "handlers" : { "create" : { - "permissions" : [ "iotwireless:CreateDeviceProfile", "iotwireless:TagResource", "iotwireless:ListTagsForResource" ] + "permissions" : [ "iotwireless:CreateDeviceProfile", "iotwireless:TagResource" ] + }, + "update" : { + "permissions" : [ "iotwireless:GetDeviceProfile", "iotwireless:TagResource", "iotwireless:UntagResource" ] }, "read" : { "permissions" : [ "iotwireless:GetDeviceProfile", "iotwireless:ListTagsForResource" ] diff --git a/aws-cloudformation-schema/aws-iotwireless-fuotatask.json b/aws-cloudformation-schema/aws-iotwireless-fuotatask.json index b0de7d2912..fe5538fc9d 100644 --- a/aws-cloudformation-schema/aws-iotwireless-fuotatask.json +++ b/aws-cloudformation-schema/aws-iotwireless-fuotatask.json @@ -2,7 +2,14 @@ "typeName" : "AWS::IoTWireless::FuotaTask", "description" : "Create and manage FUOTA tasks.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "taggable" : true, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + }, "definitions" : { "Tag" : { "type" : "object", @@ -116,13 +123,13 @@ "primaryIdentifier" : [ "/properties/Id" ], "handlers" : { "create" : { - "permissions" : [ "iotwireless:CreateFuotaTask", "iotwireless:TagResource", "iotwireless:ListTagsForResource", "iam:GetRole", "iam:PassRole" ] + "permissions" : [ "iotwireless:CreateFuotaTask", "iotwireless:TagResource", "iam:GetRole", "iam:PassRole" ] }, "read" : { "permissions" : [ "iotwireless:GetFuotaTask", "iotwireless:ListTagsForResource" ] }, "update" : { - "permissions" : [ "iam:PassRole", "iotwireless:UpdateFuotaTask", "iotwireless:UntagResource", "iotwireless:ListTagsForResource", "iotwireless:AssociateMulticastGroupWithFuotaTask", "iotwireless:DisassociateMulticastGroupFromFuotaTask", "iotwireless:AssociateWirelessDeviceWithFuotaTask", "iotwireless:DisassociateWirelessDeviceFromFuotaTask" ] + "permissions" : [ "iam:PassRole", "iotwireless:UpdateFuotaTask", "iotwireless:GetFuotaTask", "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:AssociateMulticastGroupWithFuotaTask", "iotwireless:DisassociateMulticastGroupFromFuotaTask", "iotwireless:AssociateWirelessDeviceWithFuotaTask", "iotwireless:DisassociateWirelessDeviceFromFuotaTask" ] }, "delete" : { "permissions" : [ "iotwireless:DeleteFuotaTask" ] diff --git a/aws-cloudformation-schema/aws-iotwireless-multicastgroup.json b/aws-cloudformation-schema/aws-iotwireless-multicastgroup.json index 63614cac18..c54e736286 100644 --- a/aws-cloudformation-schema/aws-iotwireless-multicastgroup.json +++ b/aws-cloudformation-schema/aws-iotwireless-multicastgroup.json @@ -2,7 +2,14 @@ "typeName" : "AWS::IoTWireless::MulticastGroup", "description" : "Create and manage Multicast groups.", "sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-rpdk.git", - "taggable" : true, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + }, "definitions" : { "Tag" : { "type" : "object", @@ -103,13 +110,13 @@ "primaryIdentifier" : [ "/properties/Id" ], "handlers" : { "create" : { - "permissions" : [ "iotwireless:CreateMulticastGroup", "iotwireless:TagResource", "iotwireless:ListTagsForResource" ] + "permissions" : [ "iotwireless:CreateMulticastGroup", "iotwireless:TagResource" ] }, "read" : { "permissions" : [ "iotwireless:GetMulticastGroup", "iotwireless:ListTagsForResource" ] }, "update" : { - "permissions" : [ "iotwireless:UpdateMulticastGroup", "iotwireless:UntagResource", "iotwireless:ListTagsForResource", "iotwireless:AssociateWirelessDeviceWithMulticastGroup", "iotwireless:DisassociateWirelessDeviceFromMulticastGroup" ] + "permissions" : [ "iotwireless:UpdateMulticastGroup", "iotwireless:GetMulticastGroup", "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:AssociateWirelessDeviceWithMulticastGroup", "iotwireless:DisassociateWirelessDeviceFromMulticastGroup" ] }, "delete" : { "permissions" : [ "iotwireless:DeleteMulticastGroup" ] diff --git a/aws-cloudformation-schema/aws-iotwireless-networkanalyzerconfiguration.json b/aws-cloudformation-schema/aws-iotwireless-networkanalyzerconfiguration.json index 49b147beb6..e47d9ed85c 100644 --- a/aws-cloudformation-schema/aws-iotwireless-networkanalyzerconfiguration.json +++ b/aws-cloudformation-schema/aws-iotwireless-networkanalyzerconfiguration.json @@ -94,23 +94,24 @@ "tagging" : { "taggable" : true, "tagOnCreate" : true, - "tagUpdatable" : false, + "tagUpdatable" : true, "cloudFormationSystemTags" : false, - "tagProperty" : "/properties/Tags" + "tagProperty" : "/properties/Tags", + "permissions" : [ "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] }, "required" : [ "Name" ], "readOnlyProperties" : [ "/properties/Arn" ], - "createOnlyProperties" : [ "/properties/Name", "/properties/Tags" ], + "createOnlyProperties" : [ "/properties/Name" ], "primaryIdentifier" : [ "/properties/Name" ], "handlers" : { "create" : { - "permissions" : [ "iotwireless:CreateNetworkAnalyzerConfiguration", "iotwireless:TagResource", "iotwireless:ListTagsForResource" ] + "permissions" : [ "iotwireless:CreateNetworkAnalyzerConfiguration", "iotwireless:TagResource" ] }, "read" : { "permissions" : [ "iotwireless:GetNetworkAnalyzerConfiguration", "iotwireless:ListTagsForResource" ] }, "update" : { - "permissions" : [ "iotwireless:UpdateNetworkAnalyzerConfiguration", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + "permissions" : [ "iotwireless:UpdateNetworkAnalyzerConfiguration", "iotwireless:GetNetworkAnalyzerConfiguration", "iotwireless:TagResource", "iotwireless:UntagResource" ] }, "delete" : { "permissions" : [ "iotwireless:DeleteNetworkAnalyzerConfiguration" ] diff --git a/aws-cloudformation-schema/aws-iotwireless-serviceprofile.json b/aws-cloudformation-schema/aws-iotwireless-serviceprofile.json index b91d61044a..f3cc59871f 100644 --- a/aws-cloudformation-schema/aws-iotwireless-serviceprofile.json +++ b/aws-cloudformation-schema/aws-iotwireless-serviceprofile.json @@ -116,11 +116,22 @@ "additionalProperties" : false, "required" : [ ], "readOnlyProperties" : [ "/properties/Id", "/properties/Arn", "/properties/LoRaWAN/UlRate", "/properties/LoRaWAN/UlBucketSize", "/properties/LoRaWAN/UlRatePolicy", "/properties/LoRaWAN/DlRate", "/properties/LoRaWAN/DlBucketSize", "/properties/LoRaWAN/DlRatePolicy", "/properties/LoRaWAN/DevStatusReqFreq", "/properties/LoRaWAN/ReportDevStatusBattery", "/properties/LoRaWAN/ReportDevStatusMargin", "/properties/LoRaWAN/DrMin", "/properties/LoRaWAN/DrMax", "/properties/LoRaWAN/ChannelMask", "/properties/LoRaWAN/HrAllowed", "/properties/LoRaWAN/NwkGeoLoc", "/properties/LoRaWAN/TargetPer", "/properties/LoRaWAN/MinGwDiversity" ], + "createOnlyProperties" : [ "/properties/Name", "/properties/LoRaWAN" ], "primaryIdentifier" : [ "/properties/Id" ], - "taggable" : true, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + }, "handlers" : { "create" : { - "permissions" : [ "iotwireless:CreateServiceProfile", "iotwireless:TagResource", "iotwireless:ListTagsForResource" ] + "permissions" : [ "iotwireless:CreateServiceProfile", "iotwireless:TagResource" ] + }, + "update" : { + "permissions" : [ "iotwireless:GetServiceProfile", "iotwireless:TagResource", "iotwireless:UntagResource" ] }, "read" : { "permissions" : [ "iotwireless:GetServiceProfile", "iotwireless:ListTagsForResource" ] diff --git a/aws-cloudformation-schema/aws-iotwireless-taskdefinition.json b/aws-cloudformation-schema/aws-iotwireless-taskdefinition.json index 8dbfcf9ec5..bbb7d54b9c 100644 --- a/aws-cloudformation-schema/aws-iotwireless-taskdefinition.json +++ b/aws-cloudformation-schema/aws-iotwireless-taskdefinition.json @@ -141,10 +141,20 @@ "required" : [ "AutoCreateTasks" ], "readOnlyProperties" : [ "/properties/Id", "/properties/Arn" ], "primaryIdentifier" : [ "/properties/Id" ], - "taggable" : true, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + }, "handlers" : { "create" : { - "permissions" : [ "iotwireless:CreateWirelessGatewayTaskDefinition", "iotwireless:TagResource", "iotwireless:ListTagsForResource", "iam:GetRole", "iam:PassRole" ] + "permissions" : [ "iotwireless:CreateWirelessGatewayTaskDefinition", "iotwireless:TagResource", "iam:GetRole", "iam:PassRole" ] + }, + "update" : { + "permissions" : [ "iotwireless:GetWirelessGatewayTaskDefinition", "iotwireless:TagResource", "iotwireless:UntagResource" ] }, "read" : { "permissions" : [ "iotwireless:GetWirelessGatewayTaskDefinition", "iotwireless:ListTagsForResource" ] @@ -153,6 +163,13 @@ "permissions" : [ "iotwireless:DeleteWirelessGatewayTaskDefinition" ] }, "list" : { + "handlerSchema" : { + "properties" : { + "TaskDefinitionType" : { + "$ref" : "#/properties/TaskDefinitionType" + } + } + }, "permissions" : [ "iotwireless:ListWirelessGatewayTaskDefinitions", "iotwireless:ListTagsForResource" ] } } diff --git a/aws-cloudformation-schema/aws-iotwireless-wirelessdevice.json b/aws-cloudformation-schema/aws-iotwireless-wirelessdevice.json index f1c3c5b21a..0ba8d02a92 100644 --- a/aws-cloudformation-schema/aws-iotwireless-wirelessdevice.json +++ b/aws-cloudformation-schema/aws-iotwireless-wirelessdevice.json @@ -103,6 +103,21 @@ }, "required" : [ "DevAddr", "SessionKeys" ] }, + "FPorts" : { + "type" : "object", + "additionalProperties" : false, + "properties" : { + "Applications" : { + "description" : "A list of optional LoRaWAN application information, which can be used for geolocation.", + "type" : "array", + "uniqueItems" : true, + "insertionOrder" : false, + "items" : { + "$ref" : "#/definitions/Application" + } + } + } + }, "LoRaWANDevice" : { "type" : "object", "additionalProperties" : false, @@ -130,6 +145,9 @@ }, "AbpV10x" : { "$ref" : "#/definitions/AbpV10x" + }, + "FPorts" : { + "$ref" : "#/definitions/FPorts" } }, "oneOf" : [ { @@ -157,6 +175,30 @@ } }, "additionalProperties" : false + }, + "Application" : { + "description" : "LoRaWAN application configuration, which can be used to perform geolocation.", + "type" : "object", + "properties" : { + "DestinationName" : { + "description" : "The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN.", + "type" : "string", + "pattern" : "[a-zA-Z0-9-_]+", + "maxLength" : 128 + }, + "FPort" : { + "description" : "The Fport value.", + "type" : "integer", + "minimum" : 1, + "maximum" : 223 + }, + "Type" : { + "description" : "Application type, which can be specified to obtain real-time position information of your LoRaWAN device.", + "type" : "string", + "enum" : [ "SemtechGeolocation", "SemtechGNSS", "SemtechGNSSNG", "SemtechWiFi" ] + } + }, + "additionalProperties" : false } }, "properties" : { @@ -214,22 +256,34 @@ "LastUplinkReceivedAt" : { "description" : "The date and time when the most recent uplink was received.", "type" : "string" + }, + "Positioning" : { + "description" : "FPort values for the GNSS, stream, and ClockSync functions of the positioning information.", + "type" : "string", + "enum" : [ "Enabled", "Disabled" ] } }, "additionalProperties" : false, "required" : [ "Type", "DestinationName" ], "readOnlyProperties" : [ "/properties/ThingName", "/properties/Id", "/properties/Arn" ], "primaryIdentifier" : [ "/properties/Id" ], - "taggable" : true, + "tagging" : { + "taggable" : true, + "tagOnCreate" : true, + "tagUpdatable" : true, + "cloudFormationSystemTags" : true, + "tagProperty" : "/properties/Tags", + "permissions" : [ "iotwireless:TagResource", "iotwireless:UntagResource", "iotwireless:ListTagsForResource" ] + }, "handlers" : { "create" : { - "permissions" : [ "iotwireless:CreateWirelessDevice", "iotwireless:TagResource", "iotwireless:ListTagsForResource" ] + "permissions" : [ "iotwireless:CreateWirelessDevice", "iotwireless:TagResource" ] }, "read" : { "permissions" : [ "iotwireless:GetWirelessDevice", "iotwireless:ListTagsForResource" ] }, "update" : { - "permissions" : [ "iotwireless:UpdateWirelessDevice", "iotwireless:UntagResource", "iotwireless:ListTagsForResource", "iotwireless:AssociateWirelessDeviceWithThing" ] + "permissions" : [ "iotwireless:UpdateWirelessDevice", "iotwireless:GetWirelessDevice", "iotwireless:AssociateWirelessDeviceWithThing", "iotwireless:TagResource", "iotwireless:UntagResource" ] }, "delete" : { "permissions" : [ "iotwireless:DeleteWirelessDevice", "iotwireless:DisassociateWirelessDeviceFromThing" ] diff --git a/aws-cloudformation-schema/aws-lambda-function.json b/aws-cloudformation-schema/aws-lambda-function.json index 48af6a1979..e01fab0814 100644 --- a/aws-cloudformation-schema/aws-lambda-function.json +++ b/aws-cloudformation-schema/aws-lambda-function.json @@ -25,7 +25,7 @@ }, "typeName" : "AWS::Lambda::Function", "readOnlyProperties" : [ "/properties/SnapStartResponse", "/properties/SnapStartResponse/ApplyOn", "/properties/SnapStartResponse/OptimizationStatus", "/properties/Arn" ], - "description" : "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html).\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*", + "description" : "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties.\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*", "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, @@ -244,7 +244,7 @@ "type" : "string" } }, - "description" : "Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html).", + "description" : "Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html).\n If the value of the environment variable is a time or a duration, enclose the value in quotes.", "additionalProperties" : false, "type" : "object" } @@ -271,19 +271,19 @@ "required" : [ "Arn", "LocalMountPath" ] }, "Tag" : { - "description" : "", + "description" : "A [tag](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.", "additionalProperties" : false, "type" : "object", "properties" : { "Value" : { "minLength" : 0, - "description" : "", + "description" : "The value for this tag.", "type" : "string", "maxLength" : 256 }, "Key" : { "minLength" : 1, - "description" : "", + "description" : "The key for this tag.", "type" : "string", "maxLength" : 128 } @@ -352,7 +352,7 @@ }, "KmsKeyArn" : { "pattern" : "^(arn:(aws[a-zA-Z-]*)?:[a-z0-9-.]+:.*)|()$", - "description" : "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key.", + "description" : "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key.", "type" : "string" }, "PackageType" : { @@ -375,7 +375,7 @@ }, "Tags" : { "uniqueItems" : true, - "description" : "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.", + "description" : "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.\n You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update.", "insertionOrder" : false, "type" : "array", "items" : { @@ -410,7 +410,7 @@ "$ref" : "#/definitions/SnapStartResponse" }, "Code" : { - "description" : "The code for the function.", + "description" : "The code for the function. You can define your function code in multiple ways:\n + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties.\n + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions.\n + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property.", "$ref" : "#/definitions/Code" }, "Role" : { @@ -423,7 +423,7 @@ "$ref" : "#/definitions/LoggingConfig" }, "RecursiveLoop" : { - "description" : "", + "description" : "The status of your function's recursive loop detection configuration.\n When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you.", "$ref" : "#/definitions/RecursiveLoop" }, "Environment" : { diff --git a/meta/.botocore.version b/meta/.botocore.version index 299ab6a647..89e254afd1 100644 --- a/meta/.botocore.version +++ b/meta/.botocore.version @@ -1 +1 @@ -1.35.56 +1.35.58 diff --git a/provider/cmd/pulumi-resource-aws-native/metadata.json b/provider/cmd/pulumi-resource-aws-native/metadata.json index d69ff338cc..01d3afd48c 100644 --- a/provider/cmd/pulumi-resource-aws-native/metadata.json +++ b/provider/cmd/pulumi-resource-aws-native/metadata.json @@ -5463,6 +5463,10 @@ "type": "string", "description": "The name of the resource group." }, + "snsNotificationArn": { + "type": "string", + "description": "Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application." + }, "tags": { "type": "array", "items": { @@ -5527,6 +5531,10 @@ "description": "The name of the resource group.", "replaceOnChanges": true }, + "snsNotificationArn": { + "type": "string", + "description": "Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application." + }, "tags": { "type": "array", "items": { @@ -5548,12 +5556,14 @@ "customComponents", "groupingType", "logPatternSets", - "opsItemSnsTopicArn" + "opsItemSnsTopicArn", + "snsNotificationArn" ], "irreversibleNames": { "applicationArn": "ApplicationARN", "cweMonitorEnabled": "CWEMonitorEnabled", - "opsItemSnsTopicArn": "OpsItemSNSTopicArn" + "opsItemSnsTopicArn": "OpsItemSNSTopicArn", + "snsNotificationArn": "SNSNotificationArn" }, "tagsProperty": "tags", "tagsStyle": "keyValueArray" @@ -8657,7 +8667,8 @@ "description": "The name of the Auto Scaling group. This name must be unique per Region per account.\n The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.\n You cannot use a colon (:) in the name." }, "availabilityZoneDistribution": { - "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution" + "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution", + "description": "The instance capacity distribution across Availability Zones." }, "availabilityZones": { "type": "array", @@ -8816,7 +8827,8 @@ "replaceOnChanges": true }, "availabilityZoneDistribution": { - "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution" + "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution", + "description": "The instance capacity distribution across Availability Zones." }, "availabilityZones": { "type": "array", @@ -13430,6 +13442,10 @@ "aws-native:cleanrooms:Collaboration": { "cf": "AWS::CleanRooms::Collaboration", "inputs": { + "analyticsEngine": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationAnalyticsEngine", + "description": "The analytics engine for the collaboration." + }, "creatorDisplayName": { "type": "string", "description": "A display name of the collaboration creator." @@ -13477,6 +13493,11 @@ } }, "outputs": { + "analyticsEngine": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationAnalyticsEngine", + "description": "The analytics engine for the collaboration.", + "replaceOnChanges": true + }, "arn": { "type": "string", "description": "Returns the Amazon Resource Name (ARN) of the specified collaboration.\n\nExample: `arn:aws:cleanrooms:us-east-1:111122223333:collaboration/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111`" @@ -13550,6 +13571,7 @@ "queryLogStatus" ], "createOnly": [ + "analyticsEngine", "creatorDisplayName", "creatorMemberAbilities", "creatorPaymentConfiguration", @@ -13898,7 +13920,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource." } }, "outputs": { @@ -13949,7 +13972,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource." } }, "autoNamingSpec": { @@ -17001,6 +17025,9 @@ "type": "integer", "description": "The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel." }, + "computeConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetComputeConfiguration" + }, "computeType": { "$ref": "#/types/aws-native:codebuild:FleetComputeType", "description": "Information about the compute resources the compute fleet uses. Available values include:\n\n- `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine.\n\n\u003e If you use `ATTRIBUTE_BASED_COMPUTE` , you must define your attributes by using `computeConfiguration` . AWS CodeBuild will select the cheapest instance that satisfies your specified attributes. For more information, see [Reserved capacity environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.types) in the *AWS CodeBuild User Guide* .\n- `BUILD_GENERAL1_SMALL` : Use up to 4 GiB memory and 2 vCPUs for builds.\n- `BUILD_GENERAL1_MEDIUM` : Use up to 8 GiB memory and 4 vCPUs for builds.\n- `BUILD_GENERAL1_LARGE` : Use up to 16 GiB memory and 8 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_XLARGE` : Use up to 72 GiB memory and 36 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_2XLARGE` : Use up to 144 GiB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.\n- `BUILD_LAMBDA_1GB` : Use up to 1 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_2GB` : Use up to 2 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_4GB` : Use up to 4 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_8GB` : Use up to 8 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_10GB` : Use up to 10 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n\nIf you use `BUILD_GENERAL1_SMALL` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 16 GiB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs on ARM-based processors for builds.\n\nIf you use `BUILD_GENERAL1_LARGE` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 255 GiB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs on ARM-based processors for builds.\n\nFor more information, see [On-demand environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) in the *AWS CodeBuild User Guide.*" @@ -17009,6 +17036,9 @@ "$ref": "#/types/aws-native:codebuild:FleetEnvironmentType", "description": "The environment type of the compute fleet.\n\n- The environment type `ARM_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), EU (Frankfurt), and South America (São Paulo).\n- The environment type `LINUX_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).\n- The environment type `LINUX_GPU_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), and Asia Pacific (Sydney).\n- The environment type `MAC_ARM` is available only in regions US East (Ohio), US East (N. Virginia), US West (Oregon), Europe (Frankfurt), and Asia Pacific (Sydney).\n- The environment type `WINDOWS_SERVER_2019_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), Asia Pacific (Tokyo), Asia Pacific (Mumbai) and EU (Ireland).\n- The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai).\n\nFor more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* ." }, + "fleetProxyConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetProxyConfiguration" + }, "fleetServiceRole": { "type": "string", "description": "The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* ." @@ -17029,6 +17059,9 @@ "$ref": "#/types/aws-native:codebuild:FleetOverflowBehavior", "description": "The compute fleet overflow behavior.\n\n- For overflow behavior `QUEUE` , your overflow builds need to wait on the existing fleet instance to become available.\n- For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand.\n\n\u003e If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) ." }, + "scalingConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetScalingConfigurationInput" + }, "tags": { "type": "array", "items": { @@ -17046,6 +17079,9 @@ "type": "integer", "description": "The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel." }, + "computeConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetComputeConfiguration" + }, "computeType": { "$ref": "#/types/aws-native:codebuild:FleetComputeType", "description": "Information about the compute resources the compute fleet uses. Available values include:\n\n- `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine.\n\n\u003e If you use `ATTRIBUTE_BASED_COMPUTE` , you must define your attributes by using `computeConfiguration` . AWS CodeBuild will select the cheapest instance that satisfies your specified attributes. For more information, see [Reserved capacity environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.types) in the *AWS CodeBuild User Guide* .\n- `BUILD_GENERAL1_SMALL` : Use up to 4 GiB memory and 2 vCPUs for builds.\n- `BUILD_GENERAL1_MEDIUM` : Use up to 8 GiB memory and 4 vCPUs for builds.\n- `BUILD_GENERAL1_LARGE` : Use up to 16 GiB memory and 8 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_XLARGE` : Use up to 72 GiB memory and 36 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_2XLARGE` : Use up to 144 GiB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.\n- `BUILD_LAMBDA_1GB` : Use up to 1 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_2GB` : Use up to 2 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_4GB` : Use up to 4 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_8GB` : Use up to 8 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_10GB` : Use up to 10 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n\nIf you use `BUILD_GENERAL1_SMALL` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 16 GiB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs on ARM-based processors for builds.\n\nIf you use `BUILD_GENERAL1_LARGE` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 255 GiB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs on ARM-based processors for builds.\n\nFor more information, see [On-demand environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) in the *AWS CodeBuild User Guide.*" @@ -17054,6 +17090,9 @@ "$ref": "#/types/aws-native:codebuild:FleetEnvironmentType", "description": "The environment type of the compute fleet.\n\n- The environment type `ARM_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), EU (Frankfurt), and South America (São Paulo).\n- The environment type `LINUX_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).\n- The environment type `LINUX_GPU_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), and Asia Pacific (Sydney).\n- The environment type `MAC_ARM` is available only in regions US East (Ohio), US East (N. Virginia), US West (Oregon), Europe (Frankfurt), and Asia Pacific (Sydney).\n- The environment type `WINDOWS_SERVER_2019_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), Asia Pacific (Tokyo), Asia Pacific (Mumbai) and EU (Ireland).\n- The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai).\n\nFor more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* ." }, + "fleetProxyConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetProxyConfiguration" + }, "fleetServiceRole": { "type": "string", "description": "The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* ." @@ -17074,6 +17113,9 @@ "$ref": "#/types/aws-native:codebuild:FleetOverflowBehavior", "description": "The compute fleet overflow behavior.\n\n- For overflow behavior `QUEUE` , your overflow builds need to wait on the existing fleet instance to become available.\n- For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand.\n\n\u003e If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) ." }, + "scalingConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetScalingConfigurationInput" + }, "tags": { "type": "array", "items": { @@ -28661,7 +28703,7 @@ }, "writeOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteOnDemandThroughputSettings", - "description": "Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "writeProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteProvisionedThroughputSettings", @@ -28741,7 +28783,7 @@ }, "writeOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteOnDemandThroughputSettings", - "description": "Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "writeProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteProvisionedThroughputSettings", @@ -29062,7 +29104,7 @@ }, "unusedReservationBillingOwnerId": { "type": "string", - "description": "The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned." + "description": "The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) .\n\nYou can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) ." } }, "outputs": { @@ -29144,7 +29186,7 @@ }, "unusedReservationBillingOwnerId": { "type": "string", - "description": "The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned." + "description": "The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) .\n\nYou can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) ." } }, "required": [ @@ -36934,6 +36976,9 @@ "aws-native:ecs:Service": { "cf": "AWS::ECS::Service", "inputs": { + "availabilityZoneRebalancing": { + "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing" + }, "capacityProviderStrategy": { "type": "array", "items": { @@ -36947,7 +36992,7 @@ }, "deploymentConfiguration": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentConfiguration", - "description": "Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods." + "description": "Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks." }, "deploymentController": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentController", @@ -37046,9 +37091,18 @@ "$ref": "#/types/aws-native:ecs:ServiceVolumeConfiguration" }, "description": "The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume." + }, + "vpcLatticeConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ecs:ServiceVpcLatticeConfiguration" + } } }, "outputs": { + "availabilityZoneRebalancing": { + "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing" + }, "capacityProviderStrategy": { "type": "array", "items": { @@ -37063,7 +37117,7 @@ }, "deploymentConfiguration": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentConfiguration", - "description": "Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods." + "description": "Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks." }, "deploymentController": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentController", @@ -37175,6 +37229,12 @@ "$ref": "#/types/aws-native:ecs:ServiceVolumeConfiguration" }, "description": "The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume." + }, + "vpcLatticeConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ecs:ServiceVpcLatticeConfiguration" + } } }, "autoNamingSpec": { @@ -44208,13 +44268,6 @@ "aws-native:gamelift:ContainerGroupDefinition": { "cf": "AWS::GameLift::ContainerGroupDefinition", "inputs": { - "containerDefinitions": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerDefinition" - }, - "description": "A collection of container definitions that define the containers in this group." - }, "name": { "type": "string", "description": "A descriptive label for the container group definition." @@ -44223,10 +44276,6 @@ "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionOperatingSystem", "description": "The operating system of the container group" }, - "schedulingStrategy": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionSchedulingStrategy", - "description": "Specifies whether the container group includes replica or daemon containers." - }, "sourceVersionNumber": { "type": "integer", "description": "A specific ContainerGroupDefinition version to be updated" @@ -44244,25 +44293,9 @@ "$ref": "#/types/aws-native:index:Tag" }, "description": "An array of key-value pairs to apply to this resource." - }, - "totalCpuLimit": { - "type": "integer", - "description": "The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.)" - }, - "totalMemoryLimit": { - "type": "integer", - "description": "The maximum amount of memory (in MiB) to allocate for this container group." } }, "outputs": { - "containerDefinitions": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerDefinition" - }, - "description": "A collection of container definitions that define the containers in this group.", - "replaceOnChanges": true - }, "containerGroupDefinitionArn": { "type": "string", "description": "The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift container group resource and uniquely identifies it across all AWS Regions." @@ -44278,13 +44311,7 @@ }, "operatingSystem": { "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionOperatingSystem", - "description": "The operating system of the container group", - "replaceOnChanges": true - }, - "schedulingStrategy": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionSchedulingStrategy", - "description": "Specifies whether the container group includes replica or daemon containers.", - "replaceOnChanges": true + "description": "The operating system of the container group" }, "sourceVersionNumber": { "type": "integer", @@ -44311,16 +44338,6 @@ "$ref": "#/types/aws-native:index:Tag" }, "description": "An array of key-value pairs to apply to this resource." - }, - "totalCpuLimit": { - "type": "integer", - "description": "The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.)", - "replaceOnChanges": true - }, - "totalMemoryLimit": { - "type": "integer", - "description": "The maximum amount of memory (in MiB) to allocate for this container group.", - "replaceOnChanges": true } }, "autoNamingSpec": { @@ -44329,18 +44346,10 @@ "maxLength": 128 }, "required": [ - "containerDefinitions", - "operatingSystem", - "totalCpuLimit", - "totalMemoryLimit" + "operatingSystem" ], "createOnly": [ - "containerDefinitions", - "name", - "operatingSystem", - "schedulingStrategy", - "totalCpuLimit", - "totalMemoryLimit" + "name" ], "tagsProperty": "tags", "tagsStyle": "keyValueArray" @@ -44368,10 +44377,6 @@ "$ref": "#/types/aws-native:gamelift:FleetComputeType", "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer." }, - "containerGroupsConfiguration": { - "$ref": "#/types/aws-native:gamelift:FleetContainerGroupsConfiguration", - "description": "*This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*\n\nConfiguration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` .\n\n*Used with:* `CreateFleet`" - }, "description": { "type": "string", "description": "A human-readable description of a fleet." @@ -44501,11 +44506,6 @@ "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", "replaceOnChanges": true }, - "containerGroupsConfiguration": { - "$ref": "#/types/aws-native:gamelift:FleetContainerGroupsConfiguration", - "description": "*This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*\n\nConfiguration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` .\n\n*Used with:* `CreateFleet`", - "replaceOnChanges": true - }, "description": { "type": "string", "description": "A human-readable description of a fleet." @@ -44634,7 +44634,6 @@ "buildId", "certificateConfiguration", "computeType", - "containerGroupsConfiguration", "ec2InstanceType", "fleetType", "instanceRoleArn", @@ -54382,11 +54381,13 @@ }, "loRaWan": { "$ref": "#/types/aws-native:iotwireless:DeviceProfileLoRaWanDeviceProfile", - "description": "LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation" + "description": "LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation", + "replaceOnChanges": true }, "name": { "type": "string", - "description": "Name of service profile" + "description": "Name of service profile", + "replaceOnChanges": true }, "tags": { "type": "array", @@ -54400,6 +54401,10 @@ "sdkName": "name", "maxLength": 256 }, + "createOnly": [ + "loRaWan", + "name" + ], "irreversibleNames": { "awsId": "Id", "loRaWan": "LoRaWAN" @@ -54627,7 +54632,7 @@ "tags": { "type": "array", "items": { - "$ref": "#/types/aws-native:index:CreateOnlyTag" + "$ref": "#/types/aws-native:index:Tag" }, "description": "An array of key-value pairs to apply to this resource." }, @@ -54667,10 +54672,9 @@ "tags": { "type": "array", "items": { - "$ref": "#/types/aws-native:index:CreateOnlyTag" + "$ref": "#/types/aws-native:index:Tag" }, - "description": "An array of key-value pairs to apply to this resource.", - "replaceOnChanges": true + "description": "An array of key-value pairs to apply to this resource." }, "traceContent": { "$ref": "#/types/aws-native:iotwireless:TraceContentProperties", @@ -54696,11 +54700,10 @@ "maxLength": 1024 }, "createOnly": [ - "name", - "tags" + "name" ], "tagsProperty": "tags", - "tagsStyle": "keyValueArrayCreateOnly" + "tagsStyle": "keyValueArray" }, "aws-native:iotwireless:ServiceProfile": { "cf": "AWS::IoTWireless::ServiceProfile", @@ -54732,11 +54735,13 @@ }, "loRaWan": { "$ref": "#/types/aws-native:iotwireless:ServiceProfileLoRaWanServiceProfile", - "description": "LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation" + "description": "LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation", + "replaceOnChanges": true }, "name": { "type": "string", - "description": "Name of service profile" + "description": "Name of service profile", + "replaceOnChanges": true }, "tags": { "type": "array", @@ -54750,6 +54755,10 @@ "sdkName": "name", "maxLength": 256 }, + "createOnly": [ + "loRaWan", + "name" + ], "irreversibleNames": { "awsId": "Id", "loRaWan": "LoRaWAN" @@ -54863,6 +54872,10 @@ "type": "string", "description": "Wireless device name" }, + "positioning": { + "$ref": "#/types/aws-native:iotwireless:WirelessDevicePositioning", + "description": "FPort values for the GNSS, stream, and ClockSync functions of the positioning information." + }, "tags": { "type": "array", "items": { @@ -54908,6 +54921,10 @@ "type": "string", "description": "Wireless device name" }, + "positioning": { + "$ref": "#/types/aws-native:iotwireless:WirelessDevicePositioning", + "description": "FPort values for the GNSS, stream, and ClockSync functions of the positioning information." + }, "tags": { "type": "array", "items": { @@ -58047,7 +58064,7 @@ }, "code": { "$ref": "#/types/aws-native:lambda:FunctionCode", - "description": "The code for the function." + "description": "The code for the function. You can define your function code in multiple ways:\n + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties.\n + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions.\n + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property." }, "codeSigningConfigArn": { "type": "string", @@ -58090,7 +58107,7 @@ }, "kmsKeyArn": { "type": "string", - "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key." + "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key." }, "layers": { "type": "array", @@ -58113,7 +58130,7 @@ }, "recursiveLoop": { "$ref": "#/types/aws-native:lambda:FunctionRecursiveLoop", - "description": "The status of your function's recursive loop detection configuration.\n\nWhen this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n\nWhen this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." + "description": "The status of your function's recursive loop detection configuration.\n When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." }, "reservedConcurrentExecutions": { "type": "integer", @@ -58140,7 +58157,7 @@ "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function." + "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.\n You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update." }, "timeout": { "type": "integer", @@ -58169,7 +58186,7 @@ }, "code": { "$ref": "#/types/aws-native:lambda:FunctionCode", - "description": "The code for the function." + "description": "The code for the function. You can define your function code in multiple ways:\n + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties.\n + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions.\n + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property." }, "codeSigningConfigArn": { "type": "string", @@ -58213,7 +58230,7 @@ }, "kmsKeyArn": { "type": "string", - "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key." + "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key." }, "layers": { "type": "array", @@ -58236,7 +58253,7 @@ }, "recursiveLoop": { "$ref": "#/types/aws-native:lambda:FunctionRecursiveLoop", - "description": "The status of your function's recursive loop detection configuration.\n\nWhen this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n\nWhen this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." + "description": "The status of your function's recursive loop detection configuration.\n When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." }, "reservedConcurrentExecutions": { "type": "integer", @@ -58266,7 +58283,7 @@ "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function." + "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.\n You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update." }, "timeout": { "type": "integer", @@ -60789,7 +60806,7 @@ "inputs": { "dataSource": { "type": "string", - "description": "Specifies the geospatial data provider for the new place index.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) .\n- `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) .\n\n\u003e If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service.\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* ." + "description": "Specifies the geospatial data provider for the new place index.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) .\n- `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) .\n\n\u003e If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service.\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* ." }, "dataSourceConfiguration": { "$ref": "#/types/aws-native:location:PlaceIndexDataSourceConfiguration", @@ -60826,7 +60843,7 @@ }, "dataSource": { "type": "string", - "description": "Specifies the geospatial data provider for the new place index.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) .\n- `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) .\n\n\u003e If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service.\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* .", + "description": "Specifies the geospatial data provider for the new place index.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) .\n- `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) .\n\n\u003e If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service.\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* .", "replaceOnChanges": true }, "dataSourceConfiguration": { @@ -60886,7 +60903,7 @@ }, "dataSource": { "type": "string", - "description": "Specifies the data provider of traffic and road network data.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) .\n\nRoute calculators that use Esri as a data source only calculate routes that are shorter than 400 km.\n- `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) .\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* ." + "description": "Specifies the data provider of traffic and road network data.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) .\n\nRoute calculators that use Esri as a data source only calculate routes that are shorter than 400 km.\n- `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) .\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* ." }, "description": { "type": "string", @@ -60924,7 +60941,7 @@ }, "dataSource": { "type": "string", - "description": "Specifies the data provider of traffic and road network data.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) .\n\nRoute calculators that use Esri as a data source only calculate routes that are shorter than 400 km.\n- `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) .\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* .", + "description": "Specifies the data provider of traffic and road network data.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) .\n\nRoute calculators that use Esri as a data source only calculate routes that are shorter than 400 km.\n- `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) .\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* .", "replaceOnChanges": true }, "description": { @@ -106506,7 +106523,8 @@ "type": "object", "properties": { "capacityDistributionStrategy": { - "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy" + "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy", + "description": "If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` .\n\n- `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n- `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead." } } }, @@ -112810,6 +112828,9 @@ } } }, + "aws-native:cleanrooms:CollaborationAnalyticsEngine": { + "type": "string" + }, "aws-native:cleanrooms:CollaborationDataEncryptionMetadata": { "type": "object", "properties": { @@ -115911,6 +115932,26 @@ } } }, + "aws-native:codebuild:FleetComputeConfiguration": { + "type": "object", + "properties": { + "disk": { + "type": "integer" + }, + "machineType": { + "$ref": "#/types/aws-native:codebuild:FleetComputeConfigurationmachineType" + }, + "memory": { + "type": "integer" + }, + "vCpu": { + "type": "integer" + } + } + }, + "aws-native:codebuild:FleetComputeConfigurationmachineType": { + "type": "string" + }, "aws-native:codebuild:FleetComputeType": { "type": "string" }, @@ -115920,6 +115961,66 @@ "aws-native:codebuild:FleetOverflowBehavior": { "type": "string" }, + "aws-native:codebuild:FleetProxyConfiguration": { + "type": "object", + "properties": { + "defaultBehavior": { + "$ref": "#/types/aws-native:codebuild:FleetProxyConfigurationDefaultBehavior" + }, + "orderedProxyRules": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codebuild:FleetProxyRule" + } + } + } + }, + "aws-native:codebuild:FleetProxyConfigurationDefaultBehavior": { + "type": "string" + }, + "aws-native:codebuild:FleetProxyRule": { + "type": "object", + "properties": { + "effect": { + "$ref": "#/types/aws-native:codebuild:FleetProxyRuleEffect" + }, + "entities": { + "type": "array", + "items": { + "type": "string" + } + }, + "type": { + "$ref": "#/types/aws-native:codebuild:FleetProxyRuleType" + } + } + }, + "aws-native:codebuild:FleetProxyRuleEffect": { + "type": "string" + }, + "aws-native:codebuild:FleetProxyRuleType": { + "type": "string" + }, + "aws-native:codebuild:FleetScalingConfigurationInput": { + "type": "object", + "properties": { + "maxCapacity": { + "type": "integer" + }, + "scalingType": { + "$ref": "#/types/aws-native:codebuild:FleetScalingConfigurationInputScalingType" + }, + "targetTrackingScalingConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codebuild:FleetTargetTrackingScalingConfiguration" + } + } + } + }, + "aws-native:codebuild:FleetScalingConfigurationInputScalingType": { + "type": "string" + }, "aws-native:codebuild:FleetTag": { "type": "object", "properties": { @@ -115933,6 +116034,20 @@ } } }, + "aws-native:codebuild:FleetTargetTrackingScalingConfiguration": { + "type": "object", + "properties": { + "metricType": { + "$ref": "#/types/aws-native:codebuild:FleetTargetTrackingScalingConfigurationMetricType" + }, + "targetValue": { + "type": "number" + } + } + }, + "aws-native:codebuild:FleetTargetTrackingScalingConfigurationMetricType": { + "type": "string" + }, "aws-native:codebuild:FleetVpcConfig": { "type": "object", "properties": { @@ -123967,7 +124082,7 @@ }, "writeOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteOnDemandThroughputSettings", - "description": "Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "writeProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteProvisionedThroughputSettings", @@ -124084,7 +124199,7 @@ }, "readOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableReadOnDemandThroughputSettings", - "description": "Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "readProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableReadProvisionedThroughputSettings", @@ -129850,6 +129965,9 @@ } } }, + "aws-native:ecs:ServiceAvailabilityZoneRebalancing": { + "type": "string" + }, "aws-native:ecs:ServiceAwsVpcConfiguration": { "type": "object", "properties": { @@ -130093,7 +130211,7 @@ }, "loadBalancerName": { "type": "string", - "description": "The name of the load balancer to associate with the service or task set.\n If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted." + "description": "The name of the load balancer to associate with the Amazon ECS service or task set.\n If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted." }, "targetGroupArn": { "type": "string", @@ -130295,6 +130413,20 @@ "managedEbsVolume": "ManagedEBSVolume" } }, + "aws-native:ecs:ServiceVpcLatticeConfiguration": { + "type": "object", + "properties": { + "portName": { + "type": "string" + }, + "roleArn": { + "type": "string" + }, + "targetGroupArn": { + "type": "string" + } + } + }, "aws-native:ecs:TaskDefinitionAuthorizationConfig": { "type": "object", "properties": { @@ -136119,183 +136251,9 @@ } } }, - "aws-native:gamelift:ContainerGroupDefinitionContainerDefinition": { - "type": "object", - "properties": { - "command": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The command that's passed to the container." - }, - "containerName": { - "type": "string", - "description": "A descriptive label for the container definition. Container definition names must be unique with a container group definition." - }, - "cpu": { - "type": "integer", - "description": "The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units" - }, - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerDependency" - }, - "description": "A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers." - }, - "entryPoint": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array." - }, - "environment": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerEnvironment" - }, - "description": "The environment variables to pass to a container." - }, - "essential": { - "type": "boolean", - "description": "Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group." - }, - "healthCheck": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerHealthCheck", - "description": "Specifies how the health of the containers will be checked." - }, - "imageUri": { - "type": "string", - "description": "Specifies the image URI of this container." - }, - "memoryLimits": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionMemoryLimits", - "description": "Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition." - }, - "portConfiguration": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionPortConfiguration", - "description": "Defines the ports on the container." - }, - "resolvedImageDigest": { - "type": "string", - "description": "The digest of the container image." - }, - "workingDirectory": { - "type": "string", - "description": "The working directory to run commands inside the container in." - } - } - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerDependency": { - "type": "object", - "properties": { - "condition": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerDependencyCondition", - "description": "The type of dependency." - }, - "containerName": { - "type": "string", - "description": "A descriptive label for the container definition. The container being defined depends on this container's condition." - } - } - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerDependencyCondition": { - "type": "string" - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerEnvironment": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The environment variable name." - }, - "value": { - "type": "string", - "description": "The environment variable value." - } - } - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerHealthCheck": { - "type": "object", - "properties": { - "command": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A string array representing the command that the container runs to determine if it is healthy." - }, - "interval": { - "type": "integer", - "description": "How often (in seconds) the health is checked." - }, - "retries": { - "type": "integer", - "description": "How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.)" - }, - "startPeriod": { - "type": "integer", - "description": "The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed." - }, - "timeout": { - "type": "integer", - "description": "How many seconds the process manager allows the command to run before canceling it." - } - } - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerPortRange": { - "type": "object", - "properties": { - "fromPort": { - "type": "integer", - "description": "A starting value for the range of allowed port numbers." - }, - "protocol": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerPortRangeProtocol", - "description": "Defines the protocol of these ports." - }, - "toPort": { - "type": "integer", - "description": "An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort." - } - } - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerPortRangeProtocol": { - "type": "string" - }, - "aws-native:gamelift:ContainerGroupDefinitionMemoryLimits": { - "type": "object", - "properties": { - "hardLimit": { - "type": "integer", - "description": "The hard limit of memory to reserve for the container." - }, - "softLimit": { - "type": "integer", - "description": "The amount of memory that is reserved for the container." - } - } - }, "aws-native:gamelift:ContainerGroupDefinitionOperatingSystem": { "type": "string" }, - "aws-native:gamelift:ContainerGroupDefinitionPortConfiguration": { - "type": "object", - "properties": { - "containerPortRanges": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerPortRange" - }, - "description": "Specifies one or more ranges of ports on a container." - } - } - }, - "aws-native:gamelift:ContainerGroupDefinitionSchedulingStrategy": { - "type": "string" - }, "aws-native:gamelift:ContainerGroupDefinitionStatus": { "type": "string" }, @@ -136339,51 +136297,6 @@ "aws-native:gamelift:FleetComputeType": { "type": "string" }, - "aws-native:gamelift:FleetConnectionPortRange": { - "type": "object", - "properties": { - "fromPort": { - "type": "integer", - "description": "A starting value for a range of allowed port numbers." - }, - "toPort": { - "type": "integer", - "description": "An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort." - } - } - }, - "aws-native:gamelift:FleetContainerGroupsConfiguration": { - "type": "object", - "properties": { - "connectionPortRange": { - "$ref": "#/types/aws-native:gamelift:FleetConnectionPortRange", - "description": "A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet.\n\nConnection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula:\n\n*[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]*\n\nAs a best practice, double the minimum number of connection ports.\n\n\u003e Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details." - }, - "containerGroupDefinitionNames": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group." - }, - "containerGroupsPerInstance": { - "$ref": "#/types/aws-native:gamelift:FleetContainerGroupsPerInstance" - } - } - }, - "aws-native:gamelift:FleetContainerGroupsPerInstance": { - "type": "object", - "properties": { - "desiredReplicaContainerGroupsPerInstance": { - "type": "integer", - "description": "Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum." - }, - "maxReplicaContainerGroupsPerInstance": { - "type": "integer", - "description": "GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports." - } - } - }, "aws-native:gamelift:FleetInstanceRoleCredentialsProvider": { "type": "string" }, @@ -145763,6 +145676,38 @@ } } }, + "aws-native:iotwireless:WirelessDeviceApplication": { + "type": "object", + "properties": { + "destinationName": { + "type": "string", + "description": "The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN." + }, + "fPort": { + "type": "integer", + "description": "The Fport value." + }, + "type": { + "$ref": "#/types/aws-native:iotwireless:WirelessDeviceApplicationType", + "description": "Application type, which can be specified to obtain real-time position information of your LoRaWAN device." + } + } + }, + "aws-native:iotwireless:WirelessDeviceApplicationType": { + "type": "string" + }, + "aws-native:iotwireless:WirelessDeviceFPorts": { + "type": "object", + "properties": { + "applications": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iotwireless:WirelessDeviceApplication" + }, + "description": "A list of optional LoRaWAN application information, which can be used for geolocation." + } + } + }, "aws-native:iotwireless:WirelessDeviceLoRaWanDevice": { "type": "object", "properties": { @@ -145782,6 +145727,10 @@ "type": "string", "description": "The ID of the device profile for the new wireless device." }, + "fPorts": { + "$ref": "#/types/aws-native:iotwireless:WirelessDeviceFPorts", + "description": "List of FPort assigned for different LoRaWAN application packages to use." + }, "otaaV10x": { "$ref": "#/types/aws-native:iotwireless:WirelessDeviceOtaaV10x", "description": "OTAA device object for create APIs for v1.0.x" @@ -145832,6 +145781,9 @@ } } }, + "aws-native:iotwireless:WirelessDevicePositioning": { + "type": "string" + }, "aws-native:iotwireless:WirelessDeviceSessionKeysAbpV10x": { "type": "object", "properties": { @@ -150823,7 +150775,7 @@ "additionalProperties": { "type": "string" }, - "description": "Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html)." + "description": "Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html).\n If the value of the environment variable is a time or a duration, enclose the value in quotes." } } }, @@ -153476,7 +153428,7 @@ }, "style": { "type": "string", - "description": "Specifies the map style selected from an available data provider.\n\nValid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) :\n\n- `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content.\n- `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide.\n- `VectorEsriLightGrayCanvas` – The Esri Light Gray Canvas map style, which provides a detailed vector basemap with a light gray, neutral background style with minimal colors, labels, and features that's designed to draw attention to your thematic content.\n- `VectorEsriTopographic` – The Esri Light map style, which provides a detailed vector basemap with a classic Esri map style.\n- `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map.\n- `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices.\n\nValid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) :\n\n- `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering.\n\n\u003e The `VectorHereContrast` style has been renamed from `VectorHereBerlin` . `VectorHereBerlin` has been deprecated, but will continue to work in applications that use it.\n- `VectorHereExplore` – A default HERE map style containing a neutral, global map and its features including roads, buildings, landmarks, and water features. It also now includes a fully designed map of Japan.\n- `VectorHereExploreTruck` – A global map containing truck restrictions and attributes (e.g. width / height / HAZMAT) symbolized with highlighted segments and icons on top of HERE Explore to support use cases within transport and logistics.\n- `RasterHereExploreSatellite` – A global map containing high resolution satellite imagery.\n- `HybridHereExploreSatellite` – A global map displaying the road network, street names, and city labels over satellite imagery. This style will automatically retrieve both raster and vector tiles, and your charges will be based on total tiles retrieved.\n\n\u003e Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved.\n\nValid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) :\n\n- `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia.\n- `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia.\n\n\u003e Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . \n\nValid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) :\n\n- `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries.\n- `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries.\n- `VectorOpenDataVisualizationLight` – The Open Data Visualization Light map style is a light-themed style with muted colors and fewer features that aids in understanding overlaid data.\n- `VectorOpenDataVisualizationDark` – The Open Data Visualization Dark map style is a dark-themed style with muted colors and fewer features that aids in understanding overlaid data." + "description": "Specifies the map style selected from an available data provider.\n\nValid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) :\n\n- `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content.\n- `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide.\n- `VectorEsriLightGrayCanvas` – The Esri Light Gray Canvas map style, which provides a detailed vector basemap with a light gray, neutral background style with minimal colors, labels, and features that's designed to draw attention to your thematic content.\n- `VectorEsriTopographic` – The Esri Light map style, which provides a detailed vector basemap with a classic Esri map style.\n- `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map.\n- `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices.\n\nValid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) :\n\n- `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering.\n\n\u003e The `VectorHereContrast` style has been renamed from `VectorHereBerlin` . `VectorHereBerlin` has been deprecated, but will continue to work in applications that use it.\n- `VectorHereExplore` – A default HERE map style containing a neutral, global map and its features including roads, buildings, landmarks, and water features. It also now includes a fully designed map of Japan.\n- `VectorHereExploreTruck` – A global map containing truck restrictions and attributes (e.g. width / height / HAZMAT) symbolized with highlighted segments and icons on top of HERE Explore to support use cases within transport and logistics.\n- `RasterHereExploreSatellite` – A global map containing high resolution satellite imagery.\n- `HybridHereExploreSatellite` – A global map displaying the road network, street names, and city labels over satellite imagery. This style will automatically retrieve both raster and vector tiles, and your charges will be based on total tiles retrieved.\n\n\u003e Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved.\n\nValid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) :\n\n- `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia.\n- `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia.\n\n\u003e Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . \n\nValid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) :\n\n- `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries.\n- `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries.\n- `VectorOpenDataVisualizationLight` – The Open Data Visualization Light map style is a light-themed style with muted colors and fewer features that aids in understanding overlaid data.\n- `VectorOpenDataVisualizationDark` – The Open Data Visualization Dark map style is a dark-themed style with muted colors and fewer features that aids in understanding overlaid data." } } }, @@ -185070,16 +185022,19 @@ "type": "object", "properties": { "identityProviderResourceUri": { - "type": "string" + "type": "string", + "description": "The resource uri of the identity provider." }, "identityProviderVpcConnectionProperties": { "$ref": "#/types/aws-native:quicksight:DataSourceVpcConnectionProperties" }, "oAuthScope": { - "type": "string" + "type": "string", + "description": "The OAuth scope." }, "tokenProviderUrl": { - "type": "string" + "type": "string", + "description": "The token endpoint URL of the identity provider." } } }, @@ -185330,21 +185285,24 @@ "type": "object", "properties": { "authenticationType": { - "$ref": "#/types/aws-native:quicksight:DataSourceAuthenticationType" + "$ref": "#/types/aws-native:quicksight:DataSourceAuthenticationType", + "description": "The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types." }, "database": { "type": "string", "description": "\u003cp\u003eDatabase.\u003c/p\u003e" }, "databaseAccessControlRole": { - "type": "string" + "type": "string", + "description": "The database access control role." }, "host": { "type": "string", "description": "\u003cp\u003eHost.\u003c/p\u003e" }, "oAuthParameters": { - "$ref": "#/types/aws-native:quicksight:DataSourceOAuthParameters" + "$ref": "#/types/aws-native:quicksight:DataSourceOAuthParameters", + "description": "An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake." }, "warehouse": { "type": "string", @@ -185395,21 +185353,24 @@ "type": "object", "properties": { "authenticationType": { - "$ref": "#/types/aws-native:quicksight:DataSourceAuthenticationType" + "$ref": "#/types/aws-native:quicksight:DataSourceAuthenticationType", + "description": "The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types." }, "catalog": { "type": "string", "description": "\u003cp\u003eThe catalog name for the Starburst data source.\u003c/p\u003e" }, "databaseAccessControlRole": { - "type": "string" + "type": "string", + "description": "The database access control role." }, "host": { "type": "string", "description": "\u003cp\u003eThe host name of the Starburst data source.\u003c/p\u003e" }, "oAuthParameters": { - "$ref": "#/types/aws-native:quicksight:DataSourceOAuthParameters" + "$ref": "#/types/aws-native:quicksight:DataSourceOAuthParameters", + "description": "An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst." }, "port": { "type": "number", diff --git a/provider/cmd/pulumi-resource-aws-native/schema.json b/provider/cmd/pulumi-resource-aws-native/schema.json index f9936150b4..8ad2d8c14a 100644 --- a/provider/cmd/pulumi-resource-aws-native/schema.json +++ b/provider/cmd/pulumi-resource-aws-native/schema.json @@ -11465,12 +11465,14 @@ "aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution": { "properties": { "capacityDistributionStrategy": { - "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy" + "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy", + "description": "If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` .\n\n- `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n- `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead." } }, "type": "object" }, "aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy": { + "description": "If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` .\n\n- `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution.\n- `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead.", "type": "string", "enum": [ { @@ -20751,6 +20753,58 @@ { "name": "Varbyte", "value": "VARBYTE" + }, + { + "name": "Binary", + "value": "BINARY" + }, + { + "name": "Byte", + "value": "BYTE" + }, + { + "name": "Character", + "value": "CHARACTER" + }, + { + "name": "Double", + "value": "DOUBLE" + }, + { + "name": "Float", + "value": "FLOAT" + }, + { + "name": "Int", + "value": "INT" + }, + { + "name": "Long", + "value": "LONG" + }, + { + "name": "Numeric", + "value": "NUMERIC" + }, + { + "name": "Short", + "value": "SHORT" + }, + { + "name": "String", + "value": "STRING" + }, + { + "name": "TimestampLtz", + "value": "TIMESTAMP_LTZ" + }, + { + "name": "TimestampNtz", + "value": "TIMESTAMP_NTZ" + }, + { + "name": "Tinyint", + "value": "TINYINT" } ] }, @@ -20809,6 +20863,19 @@ "value" ] }, + "aws-native:cleanrooms:CollaborationAnalyticsEngine": { + "type": "string", + "enum": [ + { + "name": "CleanRoomsSql", + "value": "CLEAN_ROOMS_SQL" + }, + { + "name": "Spark", + "value": "SPARK" + } + ] + }, "aws-native:cleanrooms:CollaborationDataEncryptionMetadata": { "properties": { "allowCleartext": { @@ -25094,6 +25161,36 @@ "value" ] }, + "aws-native:codebuild:FleetComputeConfiguration": { + "properties": { + "disk": { + "type": "integer" + }, + "machineType": { + "$ref": "#/types/aws-native:codebuild:FleetComputeConfigurationmachineType" + }, + "memory": { + "type": "integer" + }, + "vCpu": { + "type": "integer" + } + }, + "type": "object" + }, + "aws-native:codebuild:FleetComputeConfigurationmachineType": { + "type": "string", + "enum": [ + { + "name": "General", + "value": "GENERAL" + }, + { + "name": "Nvme", + "value": "NVME" + } + ] + }, "aws-native:codebuild:FleetComputeType": { "description": "Information about the compute resources the compute fleet uses. Available values include:\n\n- `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine.\n\n\u003e If you use `ATTRIBUTE_BASED_COMPUTE` , you must define your attributes by using `computeConfiguration` . AWS CodeBuild will select the cheapest instance that satisfies your specified attributes. For more information, see [Reserved capacity environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.types) in the *AWS CodeBuild User Guide* .\n- `BUILD_GENERAL1_SMALL` : Use up to 4 GiB memory and 2 vCPUs for builds.\n- `BUILD_GENERAL1_MEDIUM` : Use up to 8 GiB memory and 4 vCPUs for builds.\n- `BUILD_GENERAL1_LARGE` : Use up to 16 GiB memory and 8 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_XLARGE` : Use up to 72 GiB memory and 36 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_2XLARGE` : Use up to 144 GiB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.\n- `BUILD_LAMBDA_1GB` : Use up to 1 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_2GB` : Use up to 2 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_4GB` : Use up to 4 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_8GB` : Use up to 8 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_10GB` : Use up to 10 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n\nIf you use `BUILD_GENERAL1_SMALL` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 16 GiB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs on ARM-based processors for builds.\n\nIf you use `BUILD_GENERAL1_LARGE` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 255 GiB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs on ARM-based processors for builds.\n\nFor more information, see [On-demand environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) in the *AWS CodeBuild User Guide.*", "type": "string", @@ -25117,6 +25214,10 @@ { "name": "BuildGeneral12xlarge", "value": "BUILD_GENERAL1_2XLARGE" + }, + { + "name": "AttributeBasedCompute", + "value": "ATTRIBUTE_BASED_COMPUTE" } ] }, @@ -25164,6 +25265,102 @@ } ] }, + "aws-native:codebuild:FleetProxyConfiguration": { + "properties": { + "defaultBehavior": { + "$ref": "#/types/aws-native:codebuild:FleetProxyConfigurationDefaultBehavior" + }, + "orderedProxyRules": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codebuild:FleetProxyRule" + } + } + }, + "type": "object" + }, + "aws-native:codebuild:FleetProxyConfigurationDefaultBehavior": { + "type": "string", + "enum": [ + { + "name": "AllowAll", + "value": "ALLOW_ALL" + }, + { + "name": "DenyAll", + "value": "DENY_ALL" + } + ] + }, + "aws-native:codebuild:FleetProxyRule": { + "properties": { + "effect": { + "$ref": "#/types/aws-native:codebuild:FleetProxyRuleEffect" + }, + "entities": { + "type": "array", + "items": { + "type": "string" + } + }, + "type": { + "$ref": "#/types/aws-native:codebuild:FleetProxyRuleType" + } + }, + "type": "object" + }, + "aws-native:codebuild:FleetProxyRuleEffect": { + "type": "string", + "enum": [ + { + "name": "Allow", + "value": "ALLOW" + }, + { + "name": "Deny", + "value": "DENY" + } + ] + }, + "aws-native:codebuild:FleetProxyRuleType": { + "type": "string", + "enum": [ + { + "name": "Domain", + "value": "DOMAIN" + }, + { + "name": "Ip", + "value": "IP" + } + ] + }, + "aws-native:codebuild:FleetScalingConfigurationInput": { + "properties": { + "maxCapacity": { + "type": "integer" + }, + "scalingType": { + "$ref": "#/types/aws-native:codebuild:FleetScalingConfigurationInputScalingType" + }, + "targetTrackingScalingConfigs": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:codebuild:FleetTargetTrackingScalingConfiguration" + } + } + }, + "type": "object" + }, + "aws-native:codebuild:FleetScalingConfigurationInputScalingType": { + "type": "string", + "enum": [ + { + "name": "TargetTrackingScaling", + "value": "TARGET_TRACKING_SCALING" + } + ] + }, "aws-native:codebuild:FleetTag": { "properties": { "key": { @@ -25181,6 +25378,26 @@ "value" ] }, + "aws-native:codebuild:FleetTargetTrackingScalingConfiguration": { + "properties": { + "metricType": { + "$ref": "#/types/aws-native:codebuild:FleetTargetTrackingScalingConfigurationMetricType" + }, + "targetValue": { + "type": "number" + } + }, + "type": "object" + }, + "aws-native:codebuild:FleetTargetTrackingScalingConfigurationMetricType": { + "type": "string", + "enum": [ + { + "name": "FleetUtilizationRate", + "value": "FLEET_UTILIZATION_RATE" + } + ] + }, "aws-native:codebuild:FleetVpcConfig": { "properties": { "securityGroupIds": { @@ -37828,7 +38045,7 @@ }, "writeOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteOnDemandThroughputSettings", - "description": "Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "writeProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteProvisionedThroughputSettings", @@ -37973,7 +38190,7 @@ }, "readOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableReadOnDemandThroughputSettings", - "description": "Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "readProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableReadProvisionedThroughputSettings", @@ -45765,6 +45982,19 @@ }, "type": "object" }, + "aws-native:ecs:ServiceAvailabilityZoneRebalancing": { + "type": "string", + "enum": [ + { + "name": "Enabled", + "value": "ENABLED" + }, + { + "name": "Disabled", + "value": "DISABLED" + } + ] + }, "aws-native:ecs:ServiceAwsVpcConfiguration": { "description": "An object representing the networking details for a task or service. For example ``awsVpcConfiguration={subnets=[\"subnet-12344321\"],securityGroups=[\"sg-12344321\"]}``.", "properties": { @@ -45978,7 +46208,7 @@ ] }, "aws-native:ecs:ServiceDeploymentConfiguration": { - "description": "Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods.", + "description": "Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks.", "properties": { "alarms": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentAlarms", @@ -46096,7 +46326,7 @@ }, "loadBalancerName": { "type": "string", - "description": "The name of the load balancer to associate with the service or task set.\n If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted." + "description": "The name of the load balancer to associate with the Amazon ECS service or task set.\n If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted." }, "targetGroupArn": { "type": "string", @@ -46370,6 +46600,25 @@ "name" ] }, + "aws-native:ecs:ServiceVpcLatticeConfiguration": { + "properties": { + "portName": { + "type": "string" + }, + "roleArn": { + "type": "string" + }, + "targetGroupArn": { + "type": "string" + } + }, + "type": "object", + "required": [ + "portName", + "roleArn", + "targetGroupArn" + ] + }, "aws-native:ecs:TaskDefinitionAuthorizationConfig": { "description": "The authorization configuration details for the Amazon EFS file system.", "properties": { @@ -54382,221 +54631,6 @@ "roleArn" ] }, - "aws-native:gamelift:ContainerGroupDefinitionContainerDefinition": { - "description": "Details about a container that is used in a container fleet", - "properties": { - "command": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The command that's passed to the container." - }, - "containerName": { - "type": "string", - "description": "A descriptive label for the container definition. Container definition names must be unique with a container group definition." - }, - "cpu": { - "type": "integer", - "description": "The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units" - }, - "dependsOn": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerDependency" - }, - "description": "A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers." - }, - "entryPoint": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array." - }, - "environment": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerEnvironment" - }, - "description": "The environment variables to pass to a container." - }, - "essential": { - "type": "boolean", - "description": "Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group." - }, - "healthCheck": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerHealthCheck", - "description": "Specifies how the health of the containers will be checked." - }, - "imageUri": { - "type": "string", - "description": "Specifies the image URI of this container." - }, - "memoryLimits": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionMemoryLimits", - "description": "Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition." - }, - "portConfiguration": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionPortConfiguration", - "description": "Defines the ports on the container." - }, - "resolvedImageDigest": { - "type": "string", - "description": "The digest of the container image." - }, - "workingDirectory": { - "type": "string", - "description": "The working directory to run commands inside the container in." - } - }, - "type": "object", - "required": [ - "containerName", - "imageUri" - ] - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerDependency": { - "description": "A dependency that impacts a container's startup and shutdown.", - "properties": { - "condition": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerDependencyCondition", - "description": "The type of dependency." - }, - "containerName": { - "type": "string", - "description": "A descriptive label for the container definition. The container being defined depends on this container's condition." - } - }, - "type": "object", - "required": [ - "condition", - "containerName" - ] - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerDependencyCondition": { - "description": "The type of dependency.", - "type": "string", - "enum": [ - { - "name": "Start", - "value": "START" - }, - { - "name": "Complete", - "value": "COMPLETE" - }, - { - "name": "Success", - "value": "SUCCESS" - }, - { - "name": "Healthy", - "value": "HEALTHY" - } - ] - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerEnvironment": { - "description": "An environment variable to set inside a container, in the form of a key-value pair.", - "properties": { - "name": { - "type": "string", - "description": "The environment variable name." - }, - "value": { - "type": "string", - "description": "The environment variable value." - } - }, - "type": "object", - "required": [ - "name", - "value" - ] - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerHealthCheck": { - "description": "Specifies how the process manager checks the health of containers.", - "properties": { - "command": { - "type": "array", - "items": { - "type": "string" - }, - "description": "A string array representing the command that the container runs to determine if it is healthy." - }, - "interval": { - "type": "integer", - "description": "How often (in seconds) the health is checked." - }, - "retries": { - "type": "integer", - "description": "How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.)" - }, - "startPeriod": { - "type": "integer", - "description": "The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed." - }, - "timeout": { - "type": "integer", - "description": "How many seconds the process manager allows the command to run before canceling it." - } - }, - "type": "object", - "required": [ - "command" - ] - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerPortRange": { - "description": "A set of one or more port numbers that can be opened on the container.", - "properties": { - "fromPort": { - "type": "integer", - "description": "A starting value for the range of allowed port numbers." - }, - "protocol": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerPortRangeProtocol", - "description": "Defines the protocol of these ports." - }, - "toPort": { - "type": "integer", - "description": "An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort." - } - }, - "type": "object", - "required": [ - "fromPort", - "protocol", - "toPort" - ] - }, - "aws-native:gamelift:ContainerGroupDefinitionContainerPortRangeProtocol": { - "description": "Defines the protocol of these ports.", - "type": "string", - "enum": [ - { - "name": "Tcp", - "value": "TCP" - }, - { - "name": "Udp", - "value": "UDP" - } - ] - }, - "aws-native:gamelift:ContainerGroupDefinitionMemoryLimits": { - "description": "Specifies how much memory is available to the container.", - "properties": { - "hardLimit": { - "type": "integer", - "description": "The hard limit of memory to reserve for the container." - }, - "softLimit": { - "type": "integer", - "description": "The amount of memory that is reserved for the container." - } - }, - "type": "object" - }, "aws-native:gamelift:ContainerGroupDefinitionOperatingSystem": { "description": "The operating system of the container group", "type": "string", @@ -54607,36 +54641,6 @@ } ] }, - "aws-native:gamelift:ContainerGroupDefinitionPortConfiguration": { - "description": "Defines the ports on a container.", - "properties": { - "containerPortRanges": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerPortRange" - }, - "description": "Specifies one or more ranges of ports on a container." - } - }, - "type": "object", - "required": [ - "containerPortRanges" - ] - }, - "aws-native:gamelift:ContainerGroupDefinitionSchedulingStrategy": { - "description": "Specifies whether the container group includes replica or daemon containers.", - "type": "string", - "enum": [ - { - "name": "Replica", - "value": "REPLICA" - }, - { - "name": "Daemon", - "value": "DAEMON" - } - ] - }, "aws-native:gamelift:ContainerGroupDefinitionStatus": { "description": "A string indicating ContainerGroupDefinition status.", "type": "string", @@ -54738,69 +54742,9 @@ { "name": "Anywhere", "value": "ANYWHERE" - }, - { - "name": "Container", - "value": "CONTAINER" - } - ] - }, - "aws-native:gamelift:FleetConnectionPortRange": { - "description": "Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet.", - "properties": { - "fromPort": { - "type": "integer", - "description": "A starting value for a range of allowed port numbers." - }, - "toPort": { - "type": "integer", - "description": "An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort." - } - }, - "type": "object", - "required": [ - "fromPort", - "toPort" - ] - }, - "aws-native:gamelift:FleetContainerGroupsConfiguration": { - "description": "Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet.", - "properties": { - "connectionPortRange": { - "$ref": "#/types/aws-native:gamelift:FleetConnectionPortRange", - "description": "A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet.\n\nConnection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula:\n\n*[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]*\n\nAs a best practice, double the minimum number of connection ports.\n\n\u003e Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details." - }, - "containerGroupDefinitionNames": { - "type": "array", - "items": { - "type": "string" - }, - "description": "The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group." - }, - "containerGroupsPerInstance": { - "$ref": "#/types/aws-native:gamelift:FleetContainerGroupsPerInstance" } - }, - "type": "object", - "required": [ - "connectionPortRange", - "containerGroupDefinitionNames" ] }, - "aws-native:gamelift:FleetContainerGroupsPerInstance": { - "description": "The number of container groups per instance.", - "properties": { - "desiredReplicaContainerGroupsPerInstance": { - "type": "integer", - "description": "Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum." - }, - "maxReplicaContainerGroupsPerInstance": { - "type": "integer", - "description": "GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports." - } - }, - "type": "object" - }, "aws-native:gamelift:FleetInstanceRoleCredentialsProvider": { "description": "Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.", "type": "string", @@ -67886,6 +67830,58 @@ "sessionKeys" ] }, + "aws-native:iotwireless:WirelessDeviceApplication": { + "description": "LoRaWAN application configuration, which can be used to perform geolocation.", + "properties": { + "destinationName": { + "type": "string", + "description": "The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN." + }, + "fPort": { + "type": "integer", + "description": "The Fport value." + }, + "type": { + "$ref": "#/types/aws-native:iotwireless:WirelessDeviceApplicationType", + "description": "Application type, which can be specified to obtain real-time position information of your LoRaWAN device." + } + }, + "type": "object" + }, + "aws-native:iotwireless:WirelessDeviceApplicationType": { + "description": "Application type, which can be specified to obtain real-time position information of your LoRaWAN device.", + "type": "string", + "enum": [ + { + "name": "SemtechGeolocation", + "value": "SemtechGeolocation" + }, + { + "name": "SemtechGnss", + "value": "SemtechGNSS" + }, + { + "name": "SemtechGnssng", + "value": "SemtechGNSSNG" + }, + { + "name": "SemtechWiFi", + "value": "SemtechWiFi" + } + ] + }, + "aws-native:iotwireless:WirelessDeviceFPorts": { + "properties": { + "applications": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:iotwireless:WirelessDeviceApplication" + }, + "description": "A list of optional LoRaWAN application information, which can be used for geolocation." + } + }, + "type": "object" + }, "aws-native:iotwireless:WirelessDeviceLoRaWanDevice": { "properties": { "abpV10x": { @@ -67904,6 +67900,10 @@ "type": "string", "description": "The ID of the device profile for the new wireless device." }, + "fPorts": { + "$ref": "#/types/aws-native:iotwireless:WirelessDeviceFPorts", + "description": "List of FPort assigned for different LoRaWAN application packages to use." + }, "otaaV10x": { "$ref": "#/types/aws-native:iotwireless:WirelessDeviceOtaaV10x", "description": "OTAA device object for create APIs for v1.0.x" @@ -67958,6 +67958,20 @@ "nwkKey" ] }, + "aws-native:iotwireless:WirelessDevicePositioning": { + "description": "FPort values for the GNSS, stream, and ClockSync functions of the positioning information.", + "type": "string", + "enum": [ + { + "name": "Enabled", + "value": "Enabled" + }, + { + "name": "Disabled", + "value": "Disabled" + } + ] + }, "aws-native:iotwireless:WirelessDeviceSessionKeysAbpV10x": { "properties": { "appSKey": { @@ -74928,7 +74942,7 @@ "additionalProperties": { "type": "string" }, - "description": "Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html)." + "description": "Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html).\n If the value of the environment variable is a time or a duration, enclose the value in quotes." } }, "type": "object" @@ -75205,6 +75219,7 @@ ] }, "aws-native:lambda:FunctionTag": { + "description": "A [tag](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.", "properties": { "key": { "type": "string", @@ -78469,7 +78484,7 @@ }, "style": { "type": "string", - "description": "Specifies the map style selected from an available data provider.\n\nValid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) :\n\n- `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content.\n- `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide.\n- `VectorEsriLightGrayCanvas` – The Esri Light Gray Canvas map style, which provides a detailed vector basemap with a light gray, neutral background style with minimal colors, labels, and features that's designed to draw attention to your thematic content.\n- `VectorEsriTopographic` – The Esri Light map style, which provides a detailed vector basemap with a classic Esri map style.\n- `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map.\n- `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices.\n\nValid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) :\n\n- `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering.\n\n\u003e The `VectorHereContrast` style has been renamed from `VectorHereBerlin` . `VectorHereBerlin` has been deprecated, but will continue to work in applications that use it.\n- `VectorHereExplore` – A default HERE map style containing a neutral, global map and its features including roads, buildings, landmarks, and water features. It also now includes a fully designed map of Japan.\n- `VectorHereExploreTruck` – A global map containing truck restrictions and attributes (e.g. width / height / HAZMAT) symbolized with highlighted segments and icons on top of HERE Explore to support use cases within transport and logistics.\n- `RasterHereExploreSatellite` – A global map containing high resolution satellite imagery.\n- `HybridHereExploreSatellite` – A global map displaying the road network, street names, and city labels over satellite imagery. This style will automatically retrieve both raster and vector tiles, and your charges will be based on total tiles retrieved.\n\n\u003e Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved.\n\nValid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) :\n\n- `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia.\n- `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia.\n\n\u003e Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . \n\nValid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) :\n\n- `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries.\n- `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries.\n- `VectorOpenDataVisualizationLight` – The Open Data Visualization Light map style is a light-themed style with muted colors and fewer features that aids in understanding overlaid data.\n- `VectorOpenDataVisualizationDark` – The Open Data Visualization Dark map style is a dark-themed style with muted colors and fewer features that aids in understanding overlaid data." + "description": "Specifies the map style selected from an available data provider.\n\nValid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) :\n\n- `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content.\n- `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide.\n- `VectorEsriLightGrayCanvas` – The Esri Light Gray Canvas map style, which provides a detailed vector basemap with a light gray, neutral background style with minimal colors, labels, and features that's designed to draw attention to your thematic content.\n- `VectorEsriTopographic` – The Esri Light map style, which provides a detailed vector basemap with a classic Esri map style.\n- `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map.\n- `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices.\n\nValid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) :\n\n- `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering.\n\n\u003e The `VectorHereContrast` style has been renamed from `VectorHereBerlin` . `VectorHereBerlin` has been deprecated, but will continue to work in applications that use it.\n- `VectorHereExplore` – A default HERE map style containing a neutral, global map and its features including roads, buildings, landmarks, and water features. It also now includes a fully designed map of Japan.\n- `VectorHereExploreTruck` – A global map containing truck restrictions and attributes (e.g. width / height / HAZMAT) symbolized with highlighted segments and icons on top of HERE Explore to support use cases within transport and logistics.\n- `RasterHereExploreSatellite` – A global map containing high resolution satellite imagery.\n- `HybridHereExploreSatellite` – A global map displaying the road network, street names, and city labels over satellite imagery. This style will automatically retrieve both raster and vector tiles, and your charges will be based on total tiles retrieved.\n\n\u003e Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved.\n\nValid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) :\n\n- `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia.\n- `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia.\n\n\u003e Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . \n\nValid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) :\n\n- `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries.\n- `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries.\n- `VectorOpenDataVisualizationLight` – The Open Data Visualization Light map style is a light-themed style with muted colors and fewer features that aids in understanding overlaid data.\n- `VectorOpenDataVisualizationDark` – The Open Data Visualization Dark map style is a dark-themed style with muted colors and fewer features that aids in understanding overlaid data." } }, "type": "object", @@ -121356,16 +121371,19 @@ "aws-native:quicksight:DataSourceOAuthParameters": { "properties": { "identityProviderResourceUri": { - "type": "string" + "type": "string", + "description": "The resource uri of the identity provider." }, "identityProviderVpcConnectionProperties": { "$ref": "#/types/aws-native:quicksight:DataSourceVpcConnectionProperties" }, "oAuthScope": { - "type": "string" + "type": "string", + "description": "The OAuth scope." }, "tokenProviderUrl": { - "type": "string" + "type": "string", + "description": "The token endpoint URL of the identity provider." } }, "type": "object", @@ -121685,21 +121703,24 @@ "description": "\u003cp\u003eThe parameters for Snowflake.\u003c/p\u003e", "properties": { "authenticationType": { - "$ref": "#/types/aws-native:quicksight:DataSourceAuthenticationType" + "$ref": "#/types/aws-native:quicksight:DataSourceAuthenticationType", + "description": "The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types." }, "database": { "type": "string", "description": "\u003cp\u003eDatabase.\u003c/p\u003e" }, "databaseAccessControlRole": { - "type": "string" + "type": "string", + "description": "The database access control role." }, "host": { "type": "string", "description": "\u003cp\u003eHost.\u003c/p\u003e" }, "oAuthParameters": { - "$ref": "#/types/aws-native:quicksight:DataSourceOAuthParameters" + "$ref": "#/types/aws-native:quicksight:DataSourceOAuthParameters", + "description": "An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake." }, "warehouse": { "type": "string", @@ -121768,21 +121789,24 @@ "description": "\u003cp\u003eThe parameters that are required to connect to a Starburst data source.\u003c/p\u003e", "properties": { "authenticationType": { - "$ref": "#/types/aws-native:quicksight:DataSourceAuthenticationType" + "$ref": "#/types/aws-native:quicksight:DataSourceAuthenticationType", + "description": "The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types." }, "catalog": { "type": "string", "description": "\u003cp\u003eThe catalog name for the Starburst data source.\u003c/p\u003e" }, "databaseAccessControlRole": { - "type": "string" + "type": "string", + "description": "The database access control role." }, "host": { "type": "string", "description": "\u003cp\u003eThe host name of the Starburst data source.\u003c/p\u003e" }, "oAuthParameters": { - "$ref": "#/types/aws-native:quicksight:DataSourceOAuthParameters" + "$ref": "#/types/aws-native:quicksight:DataSourceOAuthParameters", + "description": "An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst." }, "port": { "type": "number", @@ -172679,6 +172703,10 @@ "description": "The name of the resource group.", "replaceOnChanges": true }, + "snsNotificationArn": { + "type": "string", + "description": "Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application." + }, "tags": { "type": "array", "items": { @@ -172742,6 +172770,10 @@ "type": "string", "description": "The name of the resource group." }, + "snsNotificationArn": { + "type": "string", + "description": "Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application." + }, "tags": { "type": "array", "items": { @@ -175752,7 +175784,8 @@ "replaceOnChanges": true }, "availabilityZoneDistribution": { - "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution" + "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution", + "description": "The instance capacity distribution across Availability Zones." }, "availabilityZones": { "type": "array", @@ -175916,7 +175949,8 @@ "description": "The name of the Auto Scaling group. This name must be unique per Region per account.\n The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters.\n You cannot use a colon (:) in the name." }, "availabilityZoneDistribution": { - "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution" + "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution", + "description": "The instance capacity distribution across Availability Zones." }, "availabilityZones": { "type": "array", @@ -180430,6 +180464,11 @@ "aws-native:cleanrooms:Collaboration": { "description": "Represents a collaboration between AWS accounts that allows for secure data collaboration", "properties": { + "analyticsEngine": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationAnalyticsEngine", + "description": "The analytics engine for the collaboration.", + "replaceOnChanges": true + }, "arn": { "type": "string", "description": "Returns the Amazon Resource Name (ARN) of the specified collaboration.\n\nExample: `arn:aws:cleanrooms:us-east-1:111122223333:collaboration/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111`" @@ -180502,6 +180541,10 @@ "queryLogStatus" ], "inputProperties": { + "analyticsEngine": { + "$ref": "#/types/aws-native:cleanrooms:CollaborationAnalyticsEngine", + "description": "The analytics engine for the collaboration." + }, "creatorDisplayName": { "type": "string", "description": "A display name of the collaboration creator." @@ -180913,7 +180956,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource." } }, "type": "object", @@ -180953,7 +180997,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource." } }, "requiredInputs": [ @@ -184045,6 +184090,9 @@ "type": "integer", "description": "The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel." }, + "computeConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetComputeConfiguration" + }, "computeType": { "$ref": "#/types/aws-native:codebuild:FleetComputeType", "description": "Information about the compute resources the compute fleet uses. Available values include:\n\n- `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine.\n\n\u003e If you use `ATTRIBUTE_BASED_COMPUTE` , you must define your attributes by using `computeConfiguration` . AWS CodeBuild will select the cheapest instance that satisfies your specified attributes. For more information, see [Reserved capacity environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.types) in the *AWS CodeBuild User Guide* .\n- `BUILD_GENERAL1_SMALL` : Use up to 4 GiB memory and 2 vCPUs for builds.\n- `BUILD_GENERAL1_MEDIUM` : Use up to 8 GiB memory and 4 vCPUs for builds.\n- `BUILD_GENERAL1_LARGE` : Use up to 16 GiB memory and 8 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_XLARGE` : Use up to 72 GiB memory and 36 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_2XLARGE` : Use up to 144 GiB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.\n- `BUILD_LAMBDA_1GB` : Use up to 1 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_2GB` : Use up to 2 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_4GB` : Use up to 4 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_8GB` : Use up to 8 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_10GB` : Use up to 10 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n\nIf you use `BUILD_GENERAL1_SMALL` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 16 GiB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs on ARM-based processors for builds.\n\nIf you use `BUILD_GENERAL1_LARGE` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 255 GiB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs on ARM-based processors for builds.\n\nFor more information, see [On-demand environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) in the *AWS CodeBuild User Guide.*" @@ -184053,6 +184101,9 @@ "$ref": "#/types/aws-native:codebuild:FleetEnvironmentType", "description": "The environment type of the compute fleet.\n\n- The environment type `ARM_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), EU (Frankfurt), and South America (São Paulo).\n- The environment type `LINUX_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).\n- The environment type `LINUX_GPU_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), and Asia Pacific (Sydney).\n- The environment type `MAC_ARM` is available only in regions US East (Ohio), US East (N. Virginia), US West (Oregon), Europe (Frankfurt), and Asia Pacific (Sydney).\n- The environment type `WINDOWS_SERVER_2019_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), Asia Pacific (Tokyo), Asia Pacific (Mumbai) and EU (Ireland).\n- The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai).\n\nFor more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* ." }, + "fleetProxyConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetProxyConfiguration" + }, "fleetServiceRole": { "type": "string", "description": "The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* ." @@ -184073,6 +184124,9 @@ "$ref": "#/types/aws-native:codebuild:FleetOverflowBehavior", "description": "The compute fleet overflow behavior.\n\n- For overflow behavior `QUEUE` , your overflow builds need to wait on the existing fleet instance to become available.\n- For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand.\n\n\u003e If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) ." }, + "scalingConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetScalingConfigurationInput" + }, "tags": { "type": "array", "items": { @@ -184090,6 +184144,9 @@ "type": "integer", "description": "The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel." }, + "computeConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetComputeConfiguration" + }, "computeType": { "$ref": "#/types/aws-native:codebuild:FleetComputeType", "description": "Information about the compute resources the compute fleet uses. Available values include:\n\n- `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine.\n\n\u003e If you use `ATTRIBUTE_BASED_COMPUTE` , you must define your attributes by using `computeConfiguration` . AWS CodeBuild will select the cheapest instance that satisfies your specified attributes. For more information, see [Reserved capacity environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.types) in the *AWS CodeBuild User Guide* .\n- `BUILD_GENERAL1_SMALL` : Use up to 4 GiB memory and 2 vCPUs for builds.\n- `BUILD_GENERAL1_MEDIUM` : Use up to 8 GiB memory and 4 vCPUs for builds.\n- `BUILD_GENERAL1_LARGE` : Use up to 16 GiB memory and 8 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_XLARGE` : Use up to 72 GiB memory and 36 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_2XLARGE` : Use up to 144 GiB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.\n- `BUILD_LAMBDA_1GB` : Use up to 1 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_2GB` : Use up to 2 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_4GB` : Use up to 4 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_8GB` : Use up to 8 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_10GB` : Use up to 10 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n\nIf you use `BUILD_GENERAL1_SMALL` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 16 GiB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs on ARM-based processors for builds.\n\nIf you use `BUILD_GENERAL1_LARGE` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 255 GiB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs on ARM-based processors for builds.\n\nFor more information, see [On-demand environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) in the *AWS CodeBuild User Guide.*" @@ -184098,6 +184155,9 @@ "$ref": "#/types/aws-native:codebuild:FleetEnvironmentType", "description": "The environment type of the compute fleet.\n\n- The environment type `ARM_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), EU (Frankfurt), and South America (São Paulo).\n- The environment type `LINUX_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).\n- The environment type `LINUX_GPU_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), and Asia Pacific (Sydney).\n- The environment type `MAC_ARM` is available only in regions US East (Ohio), US East (N. Virginia), US West (Oregon), Europe (Frankfurt), and Asia Pacific (Sydney).\n- The environment type `WINDOWS_SERVER_2019_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), Asia Pacific (Tokyo), Asia Pacific (Mumbai) and EU (Ireland).\n- The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai).\n\nFor more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* ." }, + "fleetProxyConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetProxyConfiguration" + }, "fleetServiceRole": { "type": "string", "description": "The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* ." @@ -184118,6 +184178,9 @@ "$ref": "#/types/aws-native:codebuild:FleetOverflowBehavior", "description": "The compute fleet overflow behavior.\n\n- For overflow behavior `QUEUE` , your overflow builds need to wait on the existing fleet instance to become available.\n- For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand.\n\n\u003e If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) ." }, + "scalingConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetScalingConfigurationInput" + }, "tags": { "type": "array", "items": { @@ -195412,7 +195475,7 @@ }, "writeOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteOnDemandThroughputSettings", - "description": "Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "writeProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteProvisionedThroughputSettings", @@ -195486,7 +195549,7 @@ }, "writeOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteOnDemandThroughputSettings", - "description": "Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "writeProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteProvisionedThroughputSettings", @@ -195802,7 +195865,7 @@ }, "unusedReservationBillingOwnerId": { "type": "string", - "description": "The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned." + "description": "The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) .\n\nYou can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) ." } }, "type": "object", @@ -195873,7 +195936,7 @@ }, "unusedReservationBillingOwnerId": { "type": "string", - "description": "The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned." + "description": "The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) .\n\nYou can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) ." } }, "requiredInputs": [ @@ -203514,6 +203577,9 @@ "aws-native:ecs:Service": { "description": "The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers.\n The stack update fails if you change any properties that require replacement and at least one ECS Service Connect ``ServiceConnectConfiguration`` property the is configured. This is because AWS CloudFormation creates the replacement service first, but each ``ServiceConnectService`` must have a name that is unique in the namespace.\n Starting April 15, 2023, AWS; will not onboard new customers to Amazon Elastic Inference (EI), and will help current customers migrate their workloads to options that offer better price and performance. After April 15, 2023, new customers will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker, ECS, or EC2. However, customers who have used Amazon EI at least once during the past 30-day period are considered current customers and will be able to continue using the service.", "properties": { + "availabilityZoneRebalancing": { + "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing" + }, "capacityProviderStrategy": { "type": "array", "items": { @@ -203528,7 +203594,7 @@ }, "deploymentConfiguration": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentConfiguration", - "description": "Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods." + "description": "Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks." }, "deploymentController": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentController", @@ -203640,6 +203706,12 @@ "$ref": "#/types/aws-native:ecs:ServiceVolumeConfiguration" }, "description": "The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume." + }, + "vpcLatticeConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ecs:ServiceVpcLatticeConfiguration" + } } }, "type": "object", @@ -203648,6 +203720,9 @@ "serviceArn" ], "inputProperties": { + "availabilityZoneRebalancing": { + "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing" + }, "capacityProviderStrategy": { "type": "array", "items": { @@ -203661,7 +203736,7 @@ }, "deploymentConfiguration": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentConfiguration", - "description": "Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods." + "description": "Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks." }, "deploymentController": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentController", @@ -203760,6 +203835,12 @@ "$ref": "#/types/aws-native:ecs:ServiceVolumeConfiguration" }, "description": "The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume." + }, + "vpcLatticeConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ecs:ServiceVpcLatticeConfiguration" + } } } }, @@ -210522,14 +210603,6 @@ "aws-native:gamelift:ContainerGroupDefinition": { "description": "The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition.", "properties": { - "containerDefinitions": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerDefinition" - }, - "description": "A collection of container definitions that define the containers in this group.", - "replaceOnChanges": true - }, "containerGroupDefinitionArn": { "type": "string", "description": "The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift container group resource and uniquely identifies it across all AWS Regions." @@ -210545,13 +210618,7 @@ }, "operatingSystem": { "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionOperatingSystem", - "description": "The operating system of the container group", - "replaceOnChanges": true - }, - "schedulingStrategy": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionSchedulingStrategy", - "description": "Specifies whether the container group includes replica or daemon containers.", - "replaceOnChanges": true + "description": "The operating system of the container group" }, "sourceVersionNumber": { "type": "integer", @@ -210578,38 +210645,18 @@ "$ref": "#/types/aws-native:index:Tag" }, "description": "An array of key-value pairs to apply to this resource." - }, - "totalCpuLimit": { - "type": "integer", - "description": "The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.)", - "replaceOnChanges": true - }, - "totalMemoryLimit": { - "type": "integer", - "description": "The maximum amount of memory (in MiB) to allocate for this container group.", - "replaceOnChanges": true } }, "type": "object", "required": [ - "containerDefinitions", "containerGroupDefinitionArn", "creationTime", "name", "operatingSystem", "status", - "statusReason", - "totalCpuLimit", - "totalMemoryLimit" + "statusReason" ], "inputProperties": { - "containerDefinitions": { - "type": "array", - "items": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionContainerDefinition" - }, - "description": "A collection of container definitions that define the containers in this group." - }, "name": { "type": "string", "description": "A descriptive label for the container group definition." @@ -210618,10 +210665,6 @@ "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionOperatingSystem", "description": "The operating system of the container group" }, - "schedulingStrategy": { - "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionSchedulingStrategy", - "description": "Specifies whether the container group includes replica or daemon containers." - }, "sourceVersionNumber": { "type": "integer", "description": "A specific ContainerGroupDefinition version to be updated" @@ -210639,21 +210682,10 @@ "$ref": "#/types/aws-native:index:Tag" }, "description": "An array of key-value pairs to apply to this resource." - }, - "totalCpuLimit": { - "type": "integer", - "description": "The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.)" - }, - "totalMemoryLimit": { - "type": "integer", - "description": "The maximum amount of memory (in MiB) to allocate for this container group." } }, "requiredInputs": [ - "containerDefinitions", - "operatingSystem", - "totalCpuLimit", - "totalMemoryLimit" + "operatingSystem" ] }, "aws-native:gamelift:Fleet": { @@ -210683,11 +210715,6 @@ "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.", "replaceOnChanges": true }, - "containerGroupsConfiguration": { - "$ref": "#/types/aws-native:gamelift:FleetContainerGroupsConfiguration", - "description": "*This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*\n\nConfiguration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` .\n\n*Used with:* `CreateFleet`", - "replaceOnChanges": true - }, "description": { "type": "string", "description": "A human-readable description of a fleet." @@ -210832,10 +210859,6 @@ "$ref": "#/types/aws-native:gamelift:FleetComputeType", "description": "ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer." }, - "containerGroupsConfiguration": { - "$ref": "#/types/aws-native:gamelift:FleetContainerGroupsConfiguration", - "description": "*This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.*\n\nConfiguration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` .\n\n*Used with:* `CreateFleet`" - }, "description": { "type": "string", "description": "A human-readable description of a fleet." @@ -220328,11 +220351,13 @@ }, "loRaWan": { "$ref": "#/types/aws-native:iotwireless:DeviceProfileLoRaWanDeviceProfile", - "description": "LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation" + "description": "LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation", + "replaceOnChanges": true }, "name": { "type": "string", - "description": "Name of service profile" + "description": "Name of service profile", + "replaceOnChanges": true }, "tags": { "type": "array", @@ -220586,10 +220611,9 @@ "tags": { "type": "array", "items": { - "$ref": "#/types/aws-native:index:CreateOnlyTag" + "$ref": "#/types/aws-native:index:Tag" }, - "description": "An array of key-value pairs to apply to this resource.", - "replaceOnChanges": true + "description": "An array of key-value pairs to apply to this resource." }, "traceContent": { "$ref": "#/types/aws-native:iotwireless:TraceContentProperties", @@ -220627,7 +220651,7 @@ "tags": { "type": "array", "items": { - "$ref": "#/types/aws-native:index:CreateOnlyTag" + "$ref": "#/types/aws-native:index:Tag" }, "description": "An array of key-value pairs to apply to this resource." }, @@ -220664,11 +220688,13 @@ }, "loRaWan": { "$ref": "#/types/aws-native:iotwireless:ServiceProfileLoRaWanServiceProfile", - "description": "LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation" + "description": "LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation", + "replaceOnChanges": true }, "name": { "type": "string", - "description": "Name of service profile" + "description": "Name of service profile", + "replaceOnChanges": true }, "tags": { "type": "array", @@ -220810,6 +220836,10 @@ "type": "string", "description": "Wireless device name" }, + "positioning": { + "$ref": "#/types/aws-native:iotwireless:WirelessDevicePositioning", + "description": "FPort values for the GNSS, stream, and ClockSync functions of the positioning information." + }, "tags": { "type": "array", "items": { @@ -220859,6 +220889,10 @@ "type": "string", "description": "Wireless device name" }, + "positioning": { + "$ref": "#/types/aws-native:iotwireless:WirelessDevicePositioning", + "description": "FPort values for the GNSS, stream, and ClockSync functions of the positioning information." + }, "tags": { "type": "array", "items": { @@ -223826,7 +223860,7 @@ ] }, "aws-native:lambda:Function": { - "description": "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html).\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!')\n }\n return response\n};\n\",\n },\n Runtime = \"nodejs18.x\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n });\n\n var version = new AwsNative.Lambda.Version(\"version\", new()\n {\n FunctionName = function.Id,\n Description = \"v1\",\n });\n\n var @alias = new AwsNative.Lambda.Alias(\"alias\", new()\n {\n FunctionName = function.Id,\n FunctionVersion = version.Version,\n Name = \"BLUE\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/lambda\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfunction, err := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!')\n }\n return response\n};\n`),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tversion, err := lambda.NewVersion(ctx, \"version\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tDescription: pulumi.String(\"v1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lambda.NewAlias(ctx, \"alias\", \u0026lambda.AliasArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tFunctionVersion: version.Version,\n\t\t\tName: pulumi.String(\"BLUE\"),\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n zipFile: `exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!')\n }\n return response\n};\n`,\n },\n runtime: \"nodejs18.x\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\nconst version = new aws_native.lambda.Version(\"version\", {\n functionName: _function.id,\n description: \"v1\",\n});\nconst alias = new aws_native.lambda.Alias(\"alias\", {\n functionName: _function.id,\n functionVersion: version.version,\n name: \"BLUE\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"zip_file\": \"\"\"exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!')\n }\n return response\n};\n\"\"\",\n },\n runtime=\"nodejs18.x\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n })\nversion = aws_native.lambda_.Version(\"version\",\n function_name=function.id,\n description=\"v1\")\nalias = aws_native.lambda_.Alias(\"alias\",\n function_name=function.id,\n function_version=version.version,\n name=\"BLUE\")\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello again from Lambda!')\n }\n return response\n}\n\",\n },\n Runtime = \"nodejs18.x\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n });\n\n var version = new AwsNative.Lambda.Version(\"version\", new()\n {\n FunctionName = function.Id,\n Description = \"v1\",\n });\n\n var newVersion = new AwsNative.Lambda.Version(\"newVersion\", new()\n {\n FunctionName = function.Id,\n Description = \"v2\",\n });\n\n var @alias = new AwsNative.Lambda.Alias(\"alias\", new()\n {\n FunctionName = function.Id,\n FunctionVersion = newVersion.Version,\n Name = \"BLUE\",\n RoutingConfig = new AwsNative.Lambda.Inputs.AliasRoutingConfigurationArgs\n {\n AdditionalVersionWeights = new[]\n {\n new AwsNative.Lambda.Inputs.AliasVersionWeightArgs\n {\n FunctionVersion = version.Version,\n FunctionWeight = 0.5,\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/lambda\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfunction, err := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello again from Lambda!')\n }\n return response\n}\n`),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tversion, err := lambda.NewVersion(ctx, \"version\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tDescription: pulumi.String(\"v1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tnewVersion, err := lambda.NewVersion(ctx, \"newVersion\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tDescription: pulumi.String(\"v2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lambda.NewAlias(ctx, \"alias\", \u0026lambda.AliasArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tFunctionVersion: newVersion.Version,\n\t\t\tName: pulumi.String(\"BLUE\"),\n\t\t\tRoutingConfig: \u0026lambda.AliasRoutingConfigurationArgs{\n\t\t\t\tAdditionalVersionWeights: lambda.AliasVersionWeightArray{\n\t\t\t\t\t\u0026lambda.AliasVersionWeightArgs{\n\t\t\t\t\t\tFunctionVersion: version.Version,\n\t\t\t\t\t\tFunctionWeight: pulumi.Float64(0.5),\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n zipFile: `exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello again from Lambda!')\n }\n return response\n}\n`,\n },\n runtime: \"nodejs18.x\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\nconst version = new aws_native.lambda.Version(\"version\", {\n functionName: _function.id,\n description: \"v1\",\n});\nconst newVersion = new aws_native.lambda.Version(\"newVersion\", {\n functionName: _function.id,\n description: \"v2\",\n});\nconst alias = new aws_native.lambda.Alias(\"alias\", {\n functionName: _function.id,\n functionVersion: newVersion.version,\n name: \"BLUE\",\n routingConfig: {\n additionalVersionWeights: [{\n functionVersion: version.version,\n functionWeight: 0.5,\n }],\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"zip_file\": \"\"\"exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello again from Lambda!')\n }\n return response\n}\n\"\"\",\n },\n runtime=\"nodejs18.x\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n })\nversion = aws_native.lambda_.Version(\"version\",\n function_name=function.id,\n description=\"v1\")\nnew_version = aws_native.lambda_.Version(\"newVersion\",\n function_name=function.id,\n description=\"v2\")\nalias = aws_native.lambda_.Alias(\"alias\",\n function_name=function.id,\n function_version=new_version.version,\n name=\"BLUE\",\n routing_config={\n \"additional_version_weights\": [{\n \"function_version\": version.version,\n \"function_weight\": 0.5,\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n\",\n },\n Runtime = \"nodejs18.x\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n });\n\n var version = new AwsNative.Lambda.Version(\"version\", new()\n {\n FunctionName = function.Id,\n });\n\n var asyncconfig = new AwsNative.Lambda.EventInvokeConfig(\"asyncconfig\", new()\n {\n DestinationConfig = new AwsNative.Lambda.Inputs.EventInvokeConfigDestinationConfigArgs\n {\n OnFailure = new AwsNative.Lambda.Inputs.EventInvokeConfigOnFailureArgs\n {\n Destination = \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n OnSuccess = new AwsNative.Lambda.Inputs.EventInvokeConfigOnSuccessArgs\n {\n Destination = \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n },\n FunctionName = function.Id,\n MaximumEventAgeInSeconds = 300,\n MaximumRetryAttempts = 1,\n Qualifier = version.Version,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/lambda\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfunction, err := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n`),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tversion, err := lambda.NewVersion(ctx, \"version\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lambda.NewEventInvokeConfig(ctx, \"asyncconfig\", \u0026lambda.EventInvokeConfigArgs{\n\t\t\tDestinationConfig: \u0026lambda.EventInvokeConfigDestinationConfigArgs{\n\t\t\t\tOnFailure: \u0026lambda.EventInvokeConfigOnFailureArgs{\n\t\t\t\t\tDestination: pulumi.String(\"arn:aws:sqs:us-east-2:123456789012:dlq\"),\n\t\t\t\t},\n\t\t\t\tOnSuccess: \u0026lambda.EventInvokeConfigOnSuccessArgs{\n\t\t\t\t\tDestination: pulumi.String(\"arn:aws:sqs:us-east-2:123456789012:dlq\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFunctionName: function.ID(),\n\t\t\tMaximumEventAgeInSeconds: pulumi.Int(300),\n\t\t\tMaximumRetryAttempts: pulumi.Int(1),\n\t\t\tQualifier: version.Version,\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n zipFile: `exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n`,\n },\n runtime: \"nodejs18.x\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\nconst version = new aws_native.lambda.Version(\"version\", {functionName: _function.id});\nconst asyncconfig = new aws_native.lambda.EventInvokeConfig(\"asyncconfig\", {\n destinationConfig: {\n onFailure: {\n destination: \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n onSuccess: {\n destination: \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n },\n functionName: _function.id,\n maximumEventAgeInSeconds: 300,\n maximumRetryAttempts: 1,\n qualifier: version.version,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"zip_file\": \"\"\"exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n\"\"\",\n },\n runtime=\"nodejs18.x\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n })\nversion = aws_native.lambda_.Version(\"version\", function_name=function.id)\nasyncconfig = aws_native.lambda_.EventInvokeConfig(\"asyncconfig\",\n destination_config={\n \"on_failure\": {\n \"destination\": \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n \"on_success\": {\n \"destination\": \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n },\n function_name=function.id,\n maximum_event_age_in_seconds=300,\n maximum_retry_attempts=1,\n qualifier=version.version)\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 primer = new AwsNative.Lambda.Function(\"primer\", new()\n {\n Runtime = \"nodejs18.x\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Handler = \"index.handler\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"const { S3Client, ListBucketsCommand } = require(\"\"@aws-sdk/client-s3\"\");\nconst s3 = new S3Client({ region: \"\"us-east-1\"\" }); // replace \"\"us-east-1\"\" with your AWS region\n\nexports.handler = async function(event) {\n const command = new ListBucketsCommand({});\n const response = await s3.send(command);\n return response.Buckets;\n};\n\",\n },\n Description = \"List Amazon S3 buckets in us-east-1.\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\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/lambda\"\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 := lambda.NewFunction(ctx, \"primer\", \u0026lambda.FunctionArgs{\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`const { S3Client, ListBucketsCommand } = require(\"@aws-sdk/client-s3\");\nconst s3 = new S3Client({ region: \"us-east-1\" }); // replace \"us-east-1\" with your AWS region\n\nexports.handler = async function(event) {\n const command = new ListBucketsCommand({});\n const response = await s3.send(command);\n return response.Buckets;\n};\n`),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"List Amazon S3 buckets in us-east-1.\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\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 primer = new aws_native.lambda.Function(\"primer\", {\n runtime: \"nodejs18.x\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n handler: \"index.handler\",\n code: {\n zipFile: `const { S3Client, ListBucketsCommand } = require(\"@aws-sdk/client-s3\");\nconst s3 = new S3Client({ region: \"us-east-1\" }); // replace \"us-east-1\" with your AWS region\n\nexports.handler = async function(event) {\n const command = new ListBucketsCommand({});\n const response = await s3.send(command);\n return response.Buckets;\n};\n`,\n },\n description: \"List Amazon S3 buckets in us-east-1.\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nprimer = aws_native.lambda_.Function(\"primer\",\n runtime=\"nodejs18.x\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n handler=\"index.handler\",\n code={\n \"zip_file\": \"\"\"const { S3Client, ListBucketsCommand } = require(\"@aws-sdk/client-s3\");\nconst s3 = new S3Client({ region: \"us-east-1\" }); // replace \"us-east-1\" with your AWS region\n\nexports.handler = async function(event) {\n const command = new ListBucketsCommand({});\n const response = await s3.send(command);\n return response.Buckets;\n};\n\"\"\",\n },\n description=\"List Amazon S3 buckets in us-east-1.\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n S3Bucket = \"my-bucket\",\n S3Key = \"function.zip\",\n },\n Runtime = \"nodejs18.x\",\n Timeout = 5,\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n VpcConfig = new AwsNative.Lambda.Inputs.FunctionVpcConfigArgs\n {\n SecurityGroupIds = new[]\n {\n \"sg-085912345678492fb\",\n },\n SubnetIds = new[]\n {\n \"subnet-071f712345678e7c8\",\n \"subnet-07fd123456788a036\",\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/lambda\"\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 := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tS3Bucket: pulumi.String(\"my-bucket\"),\n\t\t\t\tS3Key: pulumi.String(\"function.zip\"),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTimeout: pulumi.Int(5),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t\tVpcConfig: \u0026lambda.FunctionVpcConfigArgs{\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"sg-085912345678492fb\"),\n\t\t\t\t},\n\t\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"subnet-071f712345678e7c8\"),\n\t\t\t\t\tpulumi.String(\"subnet-07fd123456788a036\"),\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n s3Bucket: \"my-bucket\",\n s3Key: \"function.zip\",\n },\n runtime: \"nodejs18.x\",\n timeout: 5,\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n vpcConfig: {\n securityGroupIds: [\"sg-085912345678492fb\"],\n subnetIds: [\n \"subnet-071f712345678e7c8\",\n \"subnet-07fd123456788a036\",\n ],\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"s3_bucket\": \"my-bucket\",\n \"s3_key\": \"function.zip\",\n },\n runtime=\"nodejs18.x\",\n timeout=5,\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n },\n vpc_config={\n \"security_group_ids\": [\"sg-085912345678492fb\"],\n \"subnet_ids\": [\n \"subnet-071f712345678e7c8\",\n \"subnet-07fd123456788a036\",\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n\",\n },\n Runtime = \"nodejs18.x\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n });\n\n var version = new AwsNative.Lambda.Version(\"version\", new()\n {\n FunctionName = function.Id,\n Description = \"v1\",\n ProvisionedConcurrencyConfig = new AwsNative.Lambda.Inputs.VersionProvisionedConcurrencyConfigurationArgs\n {\n ProvisionedConcurrentExecutions = 20,\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/lambda\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfunction, err := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n`),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lambda.NewVersion(ctx, \"version\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tDescription: pulumi.String(\"v1\"),\n\t\t\tProvisionedConcurrencyConfig: \u0026lambda.VersionProvisionedConcurrencyConfigurationArgs{\n\t\t\t\tProvisionedConcurrentExecutions: pulumi.Int(20),\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n zipFile: `exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n`,\n },\n runtime: \"nodejs18.x\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\nconst version = new aws_native.lambda.Version(\"version\", {\n functionName: _function.id,\n description: \"v1\",\n provisionedConcurrencyConfig: {\n provisionedConcurrentExecutions: 20,\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"zip_file\": \"\"\"exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n\"\"\",\n },\n runtime=\"nodejs18.x\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n })\nversion = aws_native.lambda_.Version(\"version\",\n function_name=function.id,\n description=\"v1\",\n provisioned_concurrency_config={\n \"provisioned_concurrent_executions\": 20,\n })\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", + "description": "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties.\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!')\n }\n return response\n};\n\",\n },\n Runtime = \"nodejs18.x\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n });\n\n var version = new AwsNative.Lambda.Version(\"version\", new()\n {\n FunctionName = function.Id,\n Description = \"v1\",\n });\n\n var @alias = new AwsNative.Lambda.Alias(\"alias\", new()\n {\n FunctionName = function.Id,\n FunctionVersion = version.Version,\n Name = \"BLUE\",\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/lambda\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfunction, err := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!')\n }\n return response\n};\n`),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tversion, err := lambda.NewVersion(ctx, \"version\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tDescription: pulumi.String(\"v1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lambda.NewAlias(ctx, \"alias\", \u0026lambda.AliasArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tFunctionVersion: version.Version,\n\t\t\tName: pulumi.String(\"BLUE\"),\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n zipFile: `exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!')\n }\n return response\n};\n`,\n },\n runtime: \"nodejs18.x\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\nconst version = new aws_native.lambda.Version(\"version\", {\n functionName: _function.id,\n description: \"v1\",\n});\nconst alias = new aws_native.lambda.Alias(\"alias\", {\n functionName: _function.id,\n functionVersion: version.version,\n name: \"BLUE\",\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"zip_file\": \"\"\"exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!')\n }\n return response\n};\n\"\"\",\n },\n runtime=\"nodejs18.x\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n })\nversion = aws_native.lambda_.Version(\"version\",\n function_name=function.id,\n description=\"v1\")\nalias = aws_native.lambda_.Alias(\"alias\",\n function_name=function.id,\n function_version=version.version,\n name=\"BLUE\")\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello again from Lambda!')\n }\n return response\n}\n\",\n },\n Runtime = \"nodejs18.x\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n });\n\n var version = new AwsNative.Lambda.Version(\"version\", new()\n {\n FunctionName = function.Id,\n Description = \"v1\",\n });\n\n var newVersion = new AwsNative.Lambda.Version(\"newVersion\", new()\n {\n FunctionName = function.Id,\n Description = \"v2\",\n });\n\n var @alias = new AwsNative.Lambda.Alias(\"alias\", new()\n {\n FunctionName = function.Id,\n FunctionVersion = newVersion.Version,\n Name = \"BLUE\",\n RoutingConfig = new AwsNative.Lambda.Inputs.AliasRoutingConfigurationArgs\n {\n AdditionalVersionWeights = new[]\n {\n new AwsNative.Lambda.Inputs.AliasVersionWeightArgs\n {\n FunctionVersion = version.Version,\n FunctionWeight = 0.5,\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/lambda\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfunction, err := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello again from Lambda!')\n }\n return response\n}\n`),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tversion, err := lambda.NewVersion(ctx, \"version\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tDescription: pulumi.String(\"v1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tnewVersion, err := lambda.NewVersion(ctx, \"newVersion\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tDescription: pulumi.String(\"v2\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lambda.NewAlias(ctx, \"alias\", \u0026lambda.AliasArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tFunctionVersion: newVersion.Version,\n\t\t\tName: pulumi.String(\"BLUE\"),\n\t\t\tRoutingConfig: \u0026lambda.AliasRoutingConfigurationArgs{\n\t\t\t\tAdditionalVersionWeights: lambda.AliasVersionWeightArray{\n\t\t\t\t\t\u0026lambda.AliasVersionWeightArgs{\n\t\t\t\t\t\tFunctionVersion: version.Version,\n\t\t\t\t\t\tFunctionWeight: pulumi.Float64(0.5),\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n zipFile: `exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello again from Lambda!')\n }\n return response\n}\n`,\n },\n runtime: \"nodejs18.x\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\nconst version = new aws_native.lambda.Version(\"version\", {\n functionName: _function.id,\n description: \"v1\",\n});\nconst newVersion = new aws_native.lambda.Version(\"newVersion\", {\n functionName: _function.id,\n description: \"v2\",\n});\nconst alias = new aws_native.lambda.Alias(\"alias\", {\n functionName: _function.id,\n functionVersion: newVersion.version,\n name: \"BLUE\",\n routingConfig: {\n additionalVersionWeights: [{\n functionVersion: version.version,\n functionWeight: 0.5,\n }],\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"zip_file\": \"\"\"exports.handler = function(event){\n console.log(JSON.stringify(event, null, 2))\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello again from Lambda!')\n }\n return response\n}\n\"\"\",\n },\n runtime=\"nodejs18.x\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n })\nversion = aws_native.lambda_.Version(\"version\",\n function_name=function.id,\n description=\"v1\")\nnew_version = aws_native.lambda_.Version(\"newVersion\",\n function_name=function.id,\n description=\"v2\")\nalias = aws_native.lambda_.Alias(\"alias\",\n function_name=function.id,\n function_version=new_version.version,\n name=\"BLUE\",\n routing_config={\n \"additional_version_weights\": [{\n \"function_version\": version.version,\n \"function_weight\": 0.5,\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n\",\n },\n Runtime = \"nodejs18.x\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n });\n\n var version = new AwsNative.Lambda.Version(\"version\", new()\n {\n FunctionName = function.Id,\n });\n\n var asyncconfig = new AwsNative.Lambda.EventInvokeConfig(\"asyncconfig\", new()\n {\n DestinationConfig = new AwsNative.Lambda.Inputs.EventInvokeConfigDestinationConfigArgs\n {\n OnFailure = new AwsNative.Lambda.Inputs.EventInvokeConfigOnFailureArgs\n {\n Destination = \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n OnSuccess = new AwsNative.Lambda.Inputs.EventInvokeConfigOnSuccessArgs\n {\n Destination = \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n },\n FunctionName = function.Id,\n MaximumEventAgeInSeconds = 300,\n MaximumRetryAttempts = 1,\n Qualifier = version.Version,\n });\n\n});\n\n\n```\n\n```go\npackage main\n\nimport (\n\t\"github.com/pulumi/pulumi-aws-native/sdk/go/aws/lambda\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfunction, err := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n`),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tversion, err := lambda.NewVersion(ctx, \"version\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lambda.NewEventInvokeConfig(ctx, \"asyncconfig\", \u0026lambda.EventInvokeConfigArgs{\n\t\t\tDestinationConfig: \u0026lambda.EventInvokeConfigDestinationConfigArgs{\n\t\t\t\tOnFailure: \u0026lambda.EventInvokeConfigOnFailureArgs{\n\t\t\t\t\tDestination: pulumi.String(\"arn:aws:sqs:us-east-2:123456789012:dlq\"),\n\t\t\t\t},\n\t\t\t\tOnSuccess: \u0026lambda.EventInvokeConfigOnSuccessArgs{\n\t\t\t\t\tDestination: pulumi.String(\"arn:aws:sqs:us-east-2:123456789012:dlq\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tFunctionName: function.ID(),\n\t\t\tMaximumEventAgeInSeconds: pulumi.Int(300),\n\t\t\tMaximumRetryAttempts: pulumi.Int(1),\n\t\t\tQualifier: version.Version,\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n zipFile: `exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n`,\n },\n runtime: \"nodejs18.x\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\nconst version = new aws_native.lambda.Version(\"version\", {functionName: _function.id});\nconst asyncconfig = new aws_native.lambda.EventInvokeConfig(\"asyncconfig\", {\n destinationConfig: {\n onFailure: {\n destination: \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n onSuccess: {\n destination: \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n },\n functionName: _function.id,\n maximumEventAgeInSeconds: 300,\n maximumRetryAttempts: 1,\n qualifier: version.version,\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"zip_file\": \"\"\"exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n\"\"\",\n },\n runtime=\"nodejs18.x\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n })\nversion = aws_native.lambda_.Version(\"version\", function_name=function.id)\nasyncconfig = aws_native.lambda_.EventInvokeConfig(\"asyncconfig\",\n destination_config={\n \"on_failure\": {\n \"destination\": \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n \"on_success\": {\n \"destination\": \"arn:aws:sqs:us-east-2:123456789012:dlq\",\n },\n },\n function_name=function.id,\n maximum_event_age_in_seconds=300,\n maximum_retry_attempts=1,\n qualifier=version.version)\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 primer = new AwsNative.Lambda.Function(\"primer\", new()\n {\n Runtime = \"nodejs18.x\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Handler = \"index.handler\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"const { S3Client, ListBucketsCommand } = require(\"\"@aws-sdk/client-s3\"\");\nconst s3 = new S3Client({ region: \"\"us-east-1\"\" }); // replace \"\"us-east-1\"\" with your AWS region\n\nexports.handler = async function(event) {\n const command = new ListBucketsCommand({});\n const response = await s3.send(command);\n return response.Buckets;\n};\n\",\n },\n Description = \"List Amazon S3 buckets in us-east-1.\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\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/lambda\"\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 := lambda.NewFunction(ctx, \"primer\", \u0026lambda.FunctionArgs{\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`const { S3Client, ListBucketsCommand } = require(\"@aws-sdk/client-s3\");\nconst s3 = new S3Client({ region: \"us-east-1\" }); // replace \"us-east-1\" with your AWS region\n\nexports.handler = async function(event) {\n const command = new ListBucketsCommand({});\n const response = await s3.send(command);\n return response.Buckets;\n};\n`),\n\t\t\t},\n\t\t\tDescription: pulumi.String(\"List Amazon S3 buckets in us-east-1.\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\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 primer = new aws_native.lambda.Function(\"primer\", {\n runtime: \"nodejs18.x\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n handler: \"index.handler\",\n code: {\n zipFile: `const { S3Client, ListBucketsCommand } = require(\"@aws-sdk/client-s3\");\nconst s3 = new S3Client({ region: \"us-east-1\" }); // replace \"us-east-1\" with your AWS region\n\nexports.handler = async function(event) {\n const command = new ListBucketsCommand({});\n const response = await s3.send(command);\n return response.Buckets;\n};\n`,\n },\n description: \"List Amazon S3 buckets in us-east-1.\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nprimer = aws_native.lambda_.Function(\"primer\",\n runtime=\"nodejs18.x\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n handler=\"index.handler\",\n code={\n \"zip_file\": \"\"\"const { S3Client, ListBucketsCommand } = require(\"@aws-sdk/client-s3\");\nconst s3 = new S3Client({ region: \"us-east-1\" }); // replace \"us-east-1\" with your AWS region\n\nexports.handler = async function(event) {\n const command = new ListBucketsCommand({});\n const response = await s3.send(command);\n return response.Buckets;\n};\n\"\"\",\n },\n description=\"List Amazon S3 buckets in us-east-1.\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n S3Bucket = \"my-bucket\",\n S3Key = \"function.zip\",\n },\n Runtime = \"nodejs18.x\",\n Timeout = 5,\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n VpcConfig = new AwsNative.Lambda.Inputs.FunctionVpcConfigArgs\n {\n SecurityGroupIds = new[]\n {\n \"sg-085912345678492fb\",\n },\n SubnetIds = new[]\n {\n \"subnet-071f712345678e7c8\",\n \"subnet-07fd123456788a036\",\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/lambda\"\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 := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tS3Bucket: pulumi.String(\"my-bucket\"),\n\t\t\t\tS3Key: pulumi.String(\"function.zip\"),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTimeout: pulumi.Int(5),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t\tVpcConfig: \u0026lambda.FunctionVpcConfigArgs{\n\t\t\t\tSecurityGroupIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"sg-085912345678492fb\"),\n\t\t\t\t},\n\t\t\t\tSubnetIds: pulumi.StringArray{\n\t\t\t\t\tpulumi.String(\"subnet-071f712345678e7c8\"),\n\t\t\t\t\tpulumi.String(\"subnet-07fd123456788a036\"),\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n s3Bucket: \"my-bucket\",\n s3Key: \"function.zip\",\n },\n runtime: \"nodejs18.x\",\n timeout: 5,\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n vpcConfig: {\n securityGroupIds: [\"sg-085912345678492fb\"],\n subnetIds: [\n \"subnet-071f712345678e7c8\",\n \"subnet-07fd123456788a036\",\n ],\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"s3_bucket\": \"my-bucket\",\n \"s3_key\": \"function.zip\",\n },\n runtime=\"nodejs18.x\",\n timeout=5,\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n },\n vpc_config={\n \"security_group_ids\": [\"sg-085912345678492fb\"],\n \"subnet_ids\": [\n \"subnet-071f712345678e7c8\",\n \"subnet-07fd123456788a036\",\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 function = new AwsNative.Lambda.Function(\"function\", new()\n {\n Handler = \"index.handler\",\n Role = \"arn:aws:iam::123456789012:role/lambda-role\",\n Code = new AwsNative.Lambda.Inputs.FunctionCodeArgs\n {\n ZipFile = @\"exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n\",\n },\n Runtime = \"nodejs18.x\",\n TracingConfig = new AwsNative.Lambda.Inputs.FunctionTracingConfigArgs\n {\n Mode = AwsNative.Lambda.FunctionTracingConfigMode.Active,\n },\n });\n\n var version = new AwsNative.Lambda.Version(\"version\", new()\n {\n FunctionName = function.Id,\n Description = \"v1\",\n ProvisionedConcurrencyConfig = new AwsNative.Lambda.Inputs.VersionProvisionedConcurrencyConfigurationArgs\n {\n ProvisionedConcurrentExecutions = 20,\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/lambda\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tfunction, err := lambda.NewFunction(ctx, \"function\", \u0026lambda.FunctionArgs{\n\t\t\tHandler: pulumi.String(\"index.handler\"),\n\t\t\tRole: pulumi.String(\"arn:aws:iam::123456789012:role/lambda-role\"),\n\t\t\tCode: \u0026lambda.FunctionCodeArgs{\n\t\t\t\tZipFile: pulumi.String(`exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n`),\n\t\t\t},\n\t\t\tRuntime: pulumi.String(\"nodejs18.x\"),\n\t\t\tTracingConfig: \u0026lambda.FunctionTracingConfigArgs{\n\t\t\t\tMode: lambda.FunctionTracingConfigModeActive,\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = lambda.NewVersion(ctx, \"version\", \u0026lambda.VersionArgs{\n\t\t\tFunctionName: function.ID(),\n\t\t\tDescription: pulumi.String(\"v1\"),\n\t\t\tProvisionedConcurrencyConfig: \u0026lambda.VersionProvisionedConcurrencyConfigurationArgs{\n\t\t\t\tProvisionedConcurrentExecutions: pulumi.Int(20),\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 _function = new aws_native.lambda.Function(\"function\", {\n handler: \"index.handler\",\n role: \"arn:aws:iam::123456789012:role/lambda-role\",\n code: {\n zipFile: `exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n`,\n },\n runtime: \"nodejs18.x\",\n tracingConfig: {\n mode: aws_native.lambda.FunctionTracingConfigMode.Active,\n },\n});\nconst version = new aws_native.lambda.Version(\"version\", {\n functionName: _function.id,\n description: \"v1\",\n provisionedConcurrencyConfig: {\n provisionedConcurrentExecutions: 20,\n },\n});\n\n```\n\n```python\nimport pulumi\nimport pulumi_aws_native as aws_native\n\nfunction = aws_native.lambda_.Function(\"function\",\n handler=\"index.handler\",\n role=\"arn:aws:iam::123456789012:role/lambda-role\",\n code={\n \"zip_file\": \"\"\"exports.handler = async (event) =\u003e {\n console.log(JSON.stringify(event, null, 2));\n const response = {\n statusCode: 200,\n body: JSON.stringify('Hello from Lambda!'),\n };\n return response;\n};\n\"\"\",\n },\n runtime=\"nodejs18.x\",\n tracing_config={\n \"mode\": aws_native.lambda_.FunctionTracingConfigMode.ACTIVE,\n })\nversion = aws_native.lambda_.Version(\"version\",\n function_name=function.id,\n description=\"v1\",\n provisioned_concurrency_config={\n \"provisioned_concurrent_executions\": 20,\n })\n\n```\n\n{{% /example %}}\n{{% /examples %}}\n", "properties": { "architectures": { "type": "array", @@ -223841,7 +223875,7 @@ }, "code": { "$ref": "#/types/aws-native:lambda:FunctionCode", - "description": "The code for the function." + "description": "The code for the function. You can define your function code in multiple ways:\n + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties.\n + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions.\n + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property." }, "codeSigningConfigArn": { "type": "string", @@ -223885,7 +223919,7 @@ }, "kmsKeyArn": { "type": "string", - "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key." + "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key." }, "layers": { "type": "array", @@ -223908,7 +223942,7 @@ }, "recursiveLoop": { "$ref": "#/types/aws-native:lambda:FunctionRecursiveLoop", - "description": "The status of your function's recursive loop detection configuration.\n\nWhen this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n\nWhen this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." + "description": "The status of your function's recursive loop detection configuration.\n When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." }, "reservedConcurrentExecutions": { "type": "integer", @@ -223938,7 +223972,7 @@ "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function." + "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.\n You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update." }, "timeout": { "type": "integer", @@ -223970,7 +224004,7 @@ }, "code": { "$ref": "#/types/aws-native:lambda:FunctionCode", - "description": "The code for the function." + "description": "The code for the function. You can define your function code in multiple ways:\n + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties.\n + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions.\n + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property." }, "codeSigningConfigArn": { "type": "string", @@ -224013,7 +224047,7 @@ }, "kmsKeyArn": { "type": "string", - "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key." + "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key." }, "layers": { "type": "array", @@ -224036,7 +224070,7 @@ }, "recursiveLoop": { "$ref": "#/types/aws-native:lambda:FunctionRecursiveLoop", - "description": "The status of your function's recursive loop detection configuration.\n\nWhen this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n\nWhen this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." + "description": "The status of your function's recursive loop detection configuration.\n When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." }, "reservedConcurrentExecutions": { "type": "integer", @@ -224063,7 +224097,7 @@ "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function." + "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.\n You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update." }, "timeout": { "type": "integer", @@ -226533,7 +226567,7 @@ }, "dataSource": { "type": "string", - "description": "Specifies the geospatial data provider for the new place index.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) .\n- `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) .\n\n\u003e If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service.\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* .", + "description": "Specifies the geospatial data provider for the new place index.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) .\n- `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) .\n\n\u003e If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service.\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* .", "replaceOnChanges": true }, "dataSourceConfiguration": { @@ -226581,7 +226615,7 @@ "inputProperties": { "dataSource": { "type": "string", - "description": "Specifies the geospatial data provider for the new place index.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) .\n- `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) .\n\n\u003e If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service.\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* ." + "description": "Specifies the geospatial data provider for the new place index.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) .\n- `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) .\n\n\u003e If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service.\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* ." }, "dataSourceConfiguration": { "$ref": "#/types/aws-native:location:PlaceIndexDataSourceConfiguration", @@ -226633,7 +226667,7 @@ }, "dataSource": { "type": "string", - "description": "Specifies the data provider of traffic and road network data.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) .\n\nRoute calculators that use Esri as a data source only calculate routes that are shorter than 400 km.\n- `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) .\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* .", + "description": "Specifies the data provider of traffic and road network data.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) .\n\nRoute calculators that use Esri as a data source only calculate routes that are shorter than 400 km.\n- `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) .\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* .", "replaceOnChanges": true }, "description": { @@ -226672,7 +226706,7 @@ }, "dataSource": { "type": "string", - "description": "Specifies the data provider of traffic and road network data.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) .\n\nRoute calculators that use Esri as a data source only calculate routes that are shorter than 400 km.\n- `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) .\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* ." + "description": "Specifies the data provider of traffic and road network data.\n\n\u003e This field is case-sensitive. Enter the valid values as shown. For example, entering `HERE` returns an error. \n\nValid values include:\n\n- `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) .\n\nRoute calculators that use Esri as a data source only calculate routes that are shorter than 400 km.\n- `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) .\n- `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) .\n\nFor additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* ." }, "description": { "type": "string", @@ -267607,7 +267641,8 @@ "outputs": { "properties": { "availabilityZoneDistribution": { - "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution" + "$ref": "#/types/aws-native:autoscaling:AutoScalingGroupAvailabilityZoneDistribution", + "description": "The instance capacity distribution across Availability Zones." }, "availabilityZones": { "type": "array", @@ -270362,7 +270397,8 @@ "type": "array", "items": { "$ref": "#/types/aws-native:index:Tag" - } + }, + "description": "An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource." } } } @@ -272148,6 +272184,9 @@ "type": "integer", "description": "The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel." }, + "computeConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetComputeConfiguration" + }, "computeType": { "$ref": "#/types/aws-native:codebuild:FleetComputeType", "description": "Information about the compute resources the compute fleet uses. Available values include:\n\n- `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine.\n\n\u003e If you use `ATTRIBUTE_BASED_COMPUTE` , you must define your attributes by using `computeConfiguration` . AWS CodeBuild will select the cheapest instance that satisfies your specified attributes. For more information, see [Reserved capacity environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment-reserved-capacity.types) in the *AWS CodeBuild User Guide* .\n- `BUILD_GENERAL1_SMALL` : Use up to 4 GiB memory and 2 vCPUs for builds.\n- `BUILD_GENERAL1_MEDIUM` : Use up to 8 GiB memory and 4 vCPUs for builds.\n- `BUILD_GENERAL1_LARGE` : Use up to 16 GiB memory and 8 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_XLARGE` : Use up to 72 GiB memory and 36 vCPUs for builds, depending on your environment type.\n- `BUILD_GENERAL1_2XLARGE` : Use up to 144 GiB memory, 72 vCPUs, and 824 GB of SSD storage for builds. This compute type supports Docker images up to 100 GB uncompressed.\n- `BUILD_LAMBDA_1GB` : Use up to 1 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_2GB` : Use up to 2 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_4GB` : Use up to 4 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_8GB` : Use up to 8 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n- `BUILD_LAMBDA_10GB` : Use up to 10 GiB memory for builds. Only available for environment type `LINUX_LAMBDA_CONTAINER` and `ARM_LAMBDA_CONTAINER` .\n\nIf you use `BUILD_GENERAL1_SMALL` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 16 GiB memory, 4 vCPUs, and 1 NVIDIA A10G Tensor Core GPU for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 4 GiB memory and 2 vCPUs on ARM-based processors for builds.\n\nIf you use `BUILD_GENERAL1_LARGE` :\n\n- For environment type `LINUX_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs for builds.\n- For environment type `LINUX_GPU_CONTAINER` , you can use up to 255 GiB memory, 32 vCPUs, and 4 NVIDIA Tesla V100 GPUs for builds.\n- For environment type `ARM_CONTAINER` , you can use up to 16 GiB memory and 8 vCPUs on ARM-based processors for builds.\n\nFor more information, see [On-demand environment types](https://docs.aws.amazon.com/codebuild/latest/userguide/build-env-ref-compute-types.html#environment.types) in the *AWS CodeBuild User Guide.*" @@ -272156,6 +272195,9 @@ "$ref": "#/types/aws-native:codebuild:FleetEnvironmentType", "description": "The environment type of the compute fleet.\n\n- The environment type `ARM_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), EU (Frankfurt), and South America (São Paulo).\n- The environment type `LINUX_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Singapore), Asia Pacific (Sydney), South America (São Paulo), and Asia Pacific (Mumbai).\n- The environment type `LINUX_GPU_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Tokyo), and Asia Pacific (Sydney).\n- The environment type `MAC_ARM` is available only in regions US East (Ohio), US East (N. Virginia), US West (Oregon), Europe (Frankfurt), and Asia Pacific (Sydney).\n- The environment type `WINDOWS_SERVER_2019_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), Asia Pacific (Sydney), Asia Pacific (Tokyo), Asia Pacific (Mumbai) and EU (Ireland).\n- The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai).\n\nFor more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* ." }, + "fleetProxyConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetProxyConfiguration" + }, "fleetServiceRole": { "type": "string", "description": "The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* ." @@ -272176,6 +272218,9 @@ "$ref": "#/types/aws-native:codebuild:FleetOverflowBehavior", "description": "The compute fleet overflow behavior.\n\n- For overflow behavior `QUEUE` , your overflow builds need to wait on the existing fleet instance to become available.\n- For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand.\n\n\u003e If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) ." }, + "scalingConfiguration": { + "$ref": "#/types/aws-native:codebuild:FleetScalingConfigurationInput" + }, "tags": { "type": "array", "items": { @@ -278216,7 +278261,7 @@ }, "writeOnDemandThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteOnDemandThroughputSettings", - "description": "Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` ." + "description": "Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` ." }, "writeProvisionedThroughputSettings": { "$ref": "#/types/aws-native:dynamodb:GlobalTableWriteProvisionedThroughputSettings", @@ -282057,6 +282102,9 @@ }, "outputs": { "properties": { + "availabilityZoneRebalancing": { + "$ref": "#/types/aws-native:ecs:ServiceAvailabilityZoneRebalancing" + }, "capacityProviderStrategy": { "type": "array", "items": { @@ -282066,7 +282114,7 @@ }, "deploymentConfiguration": { "$ref": "#/types/aws-native:ecs:ServiceDeploymentConfiguration", - "description": "Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods." + "description": "Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks." }, "desiredCount": { "type": "integer", @@ -282142,6 +282190,12 @@ "taskDefinition": { "type": "string", "description": "The ``family`` and ``revision`` (``family:revision``) or full ARN of the task definition to run in your service. If a ``revision`` isn't specified, the latest ``ACTIVE`` revision is used.\n A task definition must be specified if the service uses either the ``ECS`` or ``CODE_DEPLOY`` deployment controllers.\n For more information about deployment types, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html)." + }, + "vpcLatticeConfigurations": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:ecs:ServiceVpcLatticeConfiguration" + } } } } @@ -285592,6 +285646,10 @@ "type": "string", "description": "A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example \"1469498468.057\")." }, + "operatingSystem": { + "$ref": "#/types/aws-native:gamelift:ContainerGroupDefinitionOperatingSystem", + "description": "The operating system of the container group" + }, "sourceVersionNumber": { "type": "integer", "description": "A specific ContainerGroupDefinition version to be updated" @@ -290947,14 +291005,6 @@ "type": "string", "description": "Service profile Id. Returned after successful create." }, - "loRaWan": { - "$ref": "#/types/aws-native:iotwireless:DeviceProfileLoRaWanDeviceProfile", - "description": "LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation" - }, - "name": { - "type": "string", - "description": "Name of service profile" - }, "tags": { "type": "array", "items": { @@ -291118,6 +291168,13 @@ "type": "string", "description": "The description of the new resource" }, + "tags": { + "type": "array", + "items": { + "$ref": "#/types/aws-native:index:Tag" + }, + "description": "An array of key-value pairs to apply to this resource." + }, "traceContent": { "$ref": "#/types/aws-native:iotwireless:TraceContentProperties", "description": "Trace content for your wireless gateway and wireless device resources" @@ -291162,14 +291219,6 @@ "type": "string", "description": "Service profile Id. Returned after successful create." }, - "loRaWan": { - "$ref": "#/types/aws-native:iotwireless:ServiceProfileLoRaWanServiceProfile", - "description": "LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation" - }, - "name": { - "type": "string", - "description": "Name of service profile" - }, "tags": { "type": "array", "items": { @@ -291276,6 +291325,10 @@ "type": "string", "description": "Wireless device name" }, + "positioning": { + "$ref": "#/types/aws-native:iotwireless:WirelessDevicePositioning", + "description": "FPort values for the GNSS, stream, and ClockSync functions of the positioning information." + }, "tags": { "type": "array", "items": { @@ -292851,7 +292904,7 @@ } }, "aws-native:lambda:getFunction": { - "description": "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html).\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*", + "description": "The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing.\n You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. \n You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties.\n You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function.\n When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version.\n Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``.\n For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.*", "inputs": { "properties": { "functionName": { @@ -292913,7 +292966,7 @@ }, "kmsKeyArn": { "type": "string", - "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key." + "description": "The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key." }, "layers": { "type": "array", @@ -292936,7 +292989,7 @@ }, "recursiveLoop": { "$ref": "#/types/aws-native:lambda:FunctionRecursiveLoop", - "description": "The status of your function's recursive loop detection configuration.\n\nWhen this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n\nWhen this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." + "description": "The status of your function's recursive loop detection configuration.\n When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action.\n When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you." }, "reservedConcurrentExecutions": { "type": "integer", @@ -292962,7 +293015,7 @@ "items": { "$ref": "#/types/aws-native:index:Tag" }, - "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function." + "description": "A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function.\n You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update." }, "timeout": { "type": "integer", diff --git a/reports/missedAutonaming.json b/reports/missedAutonaming.json index 8cd3de39e4..c463f0f1e5 100644 --- a/reports/missedAutonaming.json +++ b/reports/missedAutonaming.json @@ -874,6 +874,10 @@ "type": "string", "description": "The name of the resource group." }, + "snsNotificationArn": { + "type": "string", + "description": "Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application." + }, "tags": { "type": "array", "items": { @@ -3418,7 +3422,7 @@ }, "unusedReservationBillingOwnerId": { "type": "string", - "description": "The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned." + "description": "The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) .\n\nYou can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) ." } } }, diff --git a/sdk/dotnet/ApplicationInsights/Application.cs b/sdk/dotnet/ApplicationInsights/Application.cs index 6b97c8e7eb..fbead980a1 100644 --- a/sdk/dotnet/ApplicationInsights/Application.cs +++ b/sdk/dotnet/ApplicationInsights/Application.cs @@ -81,6 +81,12 @@ public partial class Application : global::Pulumi.CustomResource [Output("resourceGroupName")] public Output ResourceGroupName { get; private set; } = null!; + /// + /// Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + /// + [Output("snsNotificationArn")] + public Output SnsNotificationArn { get; private set; } = null!; + /// /// The tags of Application Insights application. /// @@ -215,6 +221,12 @@ public InputList LogPatternSets [Input("resourceGroupName", required: true)] public Input ResourceGroupName { get; set; } = null!; + /// + /// Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + /// + [Input("snsNotificationArn")] + public Input? SnsNotificationArn { get; set; } + [Input("tags")] private InputList? _tags; diff --git a/sdk/dotnet/AutoScaling/AutoScalingGroup.cs b/sdk/dotnet/AutoScaling/AutoScalingGroup.cs index 0c44c39860..5b7921bfb9 100644 --- a/sdk/dotnet/AutoScaling/AutoScalingGroup.cs +++ b/sdk/dotnet/AutoScaling/AutoScalingGroup.cs @@ -26,6 +26,9 @@ public partial class AutoScalingGroup : global::Pulumi.CustomResource [Output("autoScalingGroupName")] public Output AutoScalingGroupName { get; private set; } = null!; + /// + /// The instance capacity distribution across Availability Zones. + /// [Output("availabilityZoneDistribution")] public Output AvailabilityZoneDistribution { get; private set; } = null!; @@ -287,6 +290,9 @@ public sealed class AutoScalingGroupArgs : global::Pulumi.ResourceArgs [Input("autoScalingGroupName")] public Input? AutoScalingGroupName { get; set; } + /// + /// The instance capacity distribution across Availability Zones. + /// [Input("availabilityZoneDistribution")] public Input? AvailabilityZoneDistribution { get; set; } diff --git a/sdk/dotnet/AutoScaling/Enums.cs b/sdk/dotnet/AutoScaling/Enums.cs index 1ad4fd4420..195fef4143 100644 --- a/sdk/dotnet/AutoScaling/Enums.cs +++ b/sdk/dotnet/AutoScaling/Enums.cs @@ -7,6 +7,12 @@ namespace Pulumi.AwsNative.AutoScaling { + /// + /// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + /// + /// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + /// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + /// [EnumType] public readonly struct AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy : IEquatable { diff --git a/sdk/dotnet/AutoScaling/GetAutoScalingGroup.cs b/sdk/dotnet/AutoScaling/GetAutoScalingGroup.cs index 35de70b659..46268fe79d 100644 --- a/sdk/dotnet/AutoScaling/GetAutoScalingGroup.cs +++ b/sdk/dotnet/AutoScaling/GetAutoScalingGroup.cs @@ -67,6 +67,9 @@ public GetAutoScalingGroupInvokeArgs() [OutputType] public sealed class GetAutoScalingGroupResult { + /// + /// The instance capacity distribution across Availability Zones. + /// public readonly Outputs.AutoScalingGroupAvailabilityZoneDistribution? AvailabilityZoneDistribution; /// /// A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. diff --git a/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneDistributionArgs.cs b/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneDistributionArgs.cs index a1e8a14d9a..2437e8b65d 100644 --- a/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneDistributionArgs.cs +++ b/sdk/dotnet/AutoScaling/Inputs/AutoScalingGroupAvailabilityZoneDistributionArgs.cs @@ -12,6 +12,12 @@ namespace Pulumi.AwsNative.AutoScaling.Inputs public sealed class AutoScalingGroupAvailabilityZoneDistributionArgs : global::Pulumi.ResourceArgs { + /// + /// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + /// + /// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + /// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + /// [Input("capacityDistributionStrategy")] public Input? CapacityDistributionStrategy { get; set; } diff --git a/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneDistribution.cs b/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneDistribution.cs index b47dbfb038..a77f9eabb8 100644 --- a/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneDistribution.cs +++ b/sdk/dotnet/AutoScaling/Outputs/AutoScalingGroupAvailabilityZoneDistribution.cs @@ -13,6 +13,12 @@ namespace Pulumi.AwsNative.AutoScaling.Outputs [OutputType] public sealed class AutoScalingGroupAvailabilityZoneDistribution { + /// + /// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + /// + /// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + /// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + /// public readonly Pulumi.AwsNative.AutoScaling.AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy? CapacityDistributionStrategy; [OutputConstructor] diff --git a/sdk/dotnet/CleanRooms/Collaboration.cs b/sdk/dotnet/CleanRooms/Collaboration.cs index e4b26d47a8..131a6dc9bd 100644 --- a/sdk/dotnet/CleanRooms/Collaboration.cs +++ b/sdk/dotnet/CleanRooms/Collaboration.cs @@ -15,6 +15,12 @@ namespace Pulumi.AwsNative.CleanRooms [AwsNativeResourceType("aws-native:cleanrooms:Collaboration")] public partial class Collaboration : global::Pulumi.CustomResource { + /// + /// The analytics engine for the collaboration. + /// + [Output("analyticsEngine")] + public Output AnalyticsEngine { get; private set; } = null!; + /// /// Returns the Amazon Resource Name (ARN) of the specified collaboration. /// @@ -112,6 +118,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { + "analyticsEngine", "creatorDisplayName", "creatorMemberAbilities[*]", "creatorPaymentConfiguration", @@ -141,6 +148,12 @@ public static Collaboration Get(string name, Input id, CustomResourceOpt public sealed class CollaborationArgs : global::Pulumi.ResourceArgs { + /// + /// The analytics engine for the collaboration. + /// + [Input("analyticsEngine")] + public Input? AnalyticsEngine { get; set; } + /// /// A display name of the collaboration creator. /// diff --git a/sdk/dotnet/CleanRooms/Enums.cs b/sdk/dotnet/CleanRooms/Enums.cs index c15e0fbf6c..3c95e1376d 100644 --- a/sdk/dotnet/CleanRooms/Enums.cs +++ b/sdk/dotnet/CleanRooms/Enums.cs @@ -35,6 +35,19 @@ private AnalysisTemplateAnalysisParameterType(string value) public static AnalysisTemplateAnalysisParameterType Time { get; } = new AnalysisTemplateAnalysisParameterType("TIME"); public static AnalysisTemplateAnalysisParameterType Timetz { get; } = new AnalysisTemplateAnalysisParameterType("TIMETZ"); public static AnalysisTemplateAnalysisParameterType Varbyte { get; } = new AnalysisTemplateAnalysisParameterType("VARBYTE"); + public static AnalysisTemplateAnalysisParameterType Binary { get; } = new AnalysisTemplateAnalysisParameterType("BINARY"); + public static AnalysisTemplateAnalysisParameterType Byte { get; } = new AnalysisTemplateAnalysisParameterType("BYTE"); + public static AnalysisTemplateAnalysisParameterType Character { get; } = new AnalysisTemplateAnalysisParameterType("CHARACTER"); + public static AnalysisTemplateAnalysisParameterType Double { get; } = new AnalysisTemplateAnalysisParameterType("DOUBLE"); + public static AnalysisTemplateAnalysisParameterType Float { get; } = new AnalysisTemplateAnalysisParameterType("FLOAT"); + public static AnalysisTemplateAnalysisParameterType Int { get; } = new AnalysisTemplateAnalysisParameterType("INT"); + public static AnalysisTemplateAnalysisParameterType Long { get; } = new AnalysisTemplateAnalysisParameterType("LONG"); + public static AnalysisTemplateAnalysisParameterType Numeric { get; } = new AnalysisTemplateAnalysisParameterType("NUMERIC"); + public static AnalysisTemplateAnalysisParameterType Short { get; } = new AnalysisTemplateAnalysisParameterType("SHORT"); + public static AnalysisTemplateAnalysisParameterType String { get; } = new AnalysisTemplateAnalysisParameterType("STRING"); + public static AnalysisTemplateAnalysisParameterType TimestampLtz { get; } = new AnalysisTemplateAnalysisParameterType("TIMESTAMP_LTZ"); + public static AnalysisTemplateAnalysisParameterType TimestampNtz { get; } = new AnalysisTemplateAnalysisParameterType("TIMESTAMP_NTZ"); + public static AnalysisTemplateAnalysisParameterType Tinyint { get; } = new AnalysisTemplateAnalysisParameterType("TINYINT"); public static bool operator ==(AnalysisTemplateAnalysisParameterType left, AnalysisTemplateAnalysisParameterType right) => left.Equals(right); public static bool operator !=(AnalysisTemplateAnalysisParameterType left, AnalysisTemplateAnalysisParameterType right) => !left.Equals(right); @@ -81,6 +94,34 @@ private AnalysisTemplateFormat(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct CollaborationAnalyticsEngine : IEquatable + { + private readonly string _value; + + private CollaborationAnalyticsEngine(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static CollaborationAnalyticsEngine CleanRoomsSql { get; } = new CollaborationAnalyticsEngine("CLEAN_ROOMS_SQL"); + public static CollaborationAnalyticsEngine Spark { get; } = new CollaborationAnalyticsEngine("SPARK"); + + public static bool operator ==(CollaborationAnalyticsEngine left, CollaborationAnalyticsEngine right) => left.Equals(right); + public static bool operator !=(CollaborationAnalyticsEngine left, CollaborationAnalyticsEngine right) => !left.Equals(right); + + public static explicit operator string(CollaborationAnalyticsEngine value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is CollaborationAnalyticsEngine other && Equals(other); + public bool Equals(CollaborationAnalyticsEngine 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 CollaborationMemberAbility : IEquatable { diff --git a/sdk/dotnet/CleanRooms/GetIdNamespaceAssociation.cs b/sdk/dotnet/CleanRooms/GetIdNamespaceAssociation.cs index 37ba964358..3e76ebfb9d 100644 --- a/sdk/dotnet/CleanRooms/GetIdNamespaceAssociation.cs +++ b/sdk/dotnet/CleanRooms/GetIdNamespaceAssociation.cs @@ -90,6 +90,9 @@ public sealed class GetIdNamespaceAssociationResult /// The name of this ID namespace association. /// public readonly string? Name; + /// + /// An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + /// public readonly ImmutableArray Tags; [OutputConstructor] diff --git a/sdk/dotnet/CleanRooms/IdNamespaceAssociation.cs b/sdk/dotnet/CleanRooms/IdNamespaceAssociation.cs index 963ef15be7..54d9ab7ef3 100644 --- a/sdk/dotnet/CleanRooms/IdNamespaceAssociation.cs +++ b/sdk/dotnet/CleanRooms/IdNamespaceAssociation.cs @@ -72,6 +72,9 @@ public partial class IdNamespaceAssociation : global::Pulumi.CustomResource [Output("name")] public Output Name { get; private set; } = null!; + /// + /// An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -157,6 +160,10 @@ public sealed class IdNamespaceAssociationArgs : global::Pulumi.ResourceArgs [Input("tags")] private InputList? _tags; + + /// + /// An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + /// public InputList Tags { get => _tags ?? (_tags = new InputList()); diff --git a/sdk/dotnet/CodeBuild/Enums.cs b/sdk/dotnet/CodeBuild/Enums.cs index b5415b750a..a1d720dd03 100644 --- a/sdk/dotnet/CodeBuild/Enums.cs +++ b/sdk/dotnet/CodeBuild/Enums.cs @@ -7,6 +7,34 @@ namespace Pulumi.AwsNative.CodeBuild { + [EnumType] + public readonly struct FleetComputeConfigurationmachineType : IEquatable + { + private readonly string _value; + + private FleetComputeConfigurationmachineType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FleetComputeConfigurationmachineType General { get; } = new FleetComputeConfigurationmachineType("GENERAL"); + public static FleetComputeConfigurationmachineType Nvme { get; } = new FleetComputeConfigurationmachineType("NVME"); + + public static bool operator ==(FleetComputeConfigurationmachineType left, FleetComputeConfigurationmachineType right) => left.Equals(right); + public static bool operator !=(FleetComputeConfigurationmachineType left, FleetComputeConfigurationmachineType right) => !left.Equals(right); + + public static explicit operator string(FleetComputeConfigurationmachineType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FleetComputeConfigurationmachineType other && Equals(other); + public bool Equals(FleetComputeConfigurationmachineType other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// Information about the compute resources the compute fleet uses. Available values include: /// @@ -53,6 +81,7 @@ private FleetComputeType(string value) public static FleetComputeType BuildGeneral1Large { get; } = new FleetComputeType("BUILD_GENERAL1_LARGE"); public static FleetComputeType BuildGeneral1Xlarge { get; } = new FleetComputeType("BUILD_GENERAL1_XLARGE"); public static FleetComputeType BuildGeneral12xlarge { get; } = new FleetComputeType("BUILD_GENERAL1_2XLARGE"); + public static FleetComputeType AttributeBasedCompute { get; } = new FleetComputeType("ATTRIBUTE_BASED_COMPUTE"); public static bool operator ==(FleetComputeType left, FleetComputeType right) => left.Equals(right); public static bool operator !=(FleetComputeType left, FleetComputeType right) => !left.Equals(right); @@ -148,4 +177,142 @@ private FleetOverflowBehavior(string value) public override string ToString() => _value; } + + [EnumType] + public readonly struct FleetProxyConfigurationDefaultBehavior : IEquatable + { + private readonly string _value; + + private FleetProxyConfigurationDefaultBehavior(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FleetProxyConfigurationDefaultBehavior AllowAll { get; } = new FleetProxyConfigurationDefaultBehavior("ALLOW_ALL"); + public static FleetProxyConfigurationDefaultBehavior DenyAll { get; } = new FleetProxyConfigurationDefaultBehavior("DENY_ALL"); + + public static bool operator ==(FleetProxyConfigurationDefaultBehavior left, FleetProxyConfigurationDefaultBehavior right) => left.Equals(right); + public static bool operator !=(FleetProxyConfigurationDefaultBehavior left, FleetProxyConfigurationDefaultBehavior right) => !left.Equals(right); + + public static explicit operator string(FleetProxyConfigurationDefaultBehavior value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FleetProxyConfigurationDefaultBehavior other && Equals(other); + public bool Equals(FleetProxyConfigurationDefaultBehavior 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 FleetProxyRuleEffect : IEquatable + { + private readonly string _value; + + private FleetProxyRuleEffect(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FleetProxyRuleEffect Allow { get; } = new FleetProxyRuleEffect("ALLOW"); + public static FleetProxyRuleEffect Deny { get; } = new FleetProxyRuleEffect("DENY"); + + public static bool operator ==(FleetProxyRuleEffect left, FleetProxyRuleEffect right) => left.Equals(right); + public static bool operator !=(FleetProxyRuleEffect left, FleetProxyRuleEffect right) => !left.Equals(right); + + public static explicit operator string(FleetProxyRuleEffect value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FleetProxyRuleEffect other && Equals(other); + public bool Equals(FleetProxyRuleEffect 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 FleetProxyRuleType : IEquatable + { + private readonly string _value; + + private FleetProxyRuleType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FleetProxyRuleType Domain { get; } = new FleetProxyRuleType("DOMAIN"); + public static FleetProxyRuleType Ip { get; } = new FleetProxyRuleType("IP"); + + public static bool operator ==(FleetProxyRuleType left, FleetProxyRuleType right) => left.Equals(right); + public static bool operator !=(FleetProxyRuleType left, FleetProxyRuleType right) => !left.Equals(right); + + public static explicit operator string(FleetProxyRuleType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FleetProxyRuleType other && Equals(other); + public bool Equals(FleetProxyRuleType 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 FleetScalingConfigurationInputScalingType : IEquatable + { + private readonly string _value; + + private FleetScalingConfigurationInputScalingType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FleetScalingConfigurationInputScalingType TargetTrackingScaling { get; } = new FleetScalingConfigurationInputScalingType("TARGET_TRACKING_SCALING"); + + public static bool operator ==(FleetScalingConfigurationInputScalingType left, FleetScalingConfigurationInputScalingType right) => left.Equals(right); + public static bool operator !=(FleetScalingConfigurationInputScalingType left, FleetScalingConfigurationInputScalingType right) => !left.Equals(right); + + public static explicit operator string(FleetScalingConfigurationInputScalingType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FleetScalingConfigurationInputScalingType other && Equals(other); + public bool Equals(FleetScalingConfigurationInputScalingType 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 FleetTargetTrackingScalingConfigurationMetricType : IEquatable + { + private readonly string _value; + + private FleetTargetTrackingScalingConfigurationMetricType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static FleetTargetTrackingScalingConfigurationMetricType FleetUtilizationRate { get; } = new FleetTargetTrackingScalingConfigurationMetricType("FLEET_UTILIZATION_RATE"); + + public static bool operator ==(FleetTargetTrackingScalingConfigurationMetricType left, FleetTargetTrackingScalingConfigurationMetricType right) => left.Equals(right); + public static bool operator !=(FleetTargetTrackingScalingConfigurationMetricType left, FleetTargetTrackingScalingConfigurationMetricType right) => !left.Equals(right); + + public static explicit operator string(FleetTargetTrackingScalingConfigurationMetricType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is FleetTargetTrackingScalingConfigurationMetricType other && Equals(other); + public bool Equals(FleetTargetTrackingScalingConfigurationMetricType 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/CodeBuild/Fleet.cs b/sdk/dotnet/CodeBuild/Fleet.cs index 354cdbbeaa..0e566b0982 100644 --- a/sdk/dotnet/CodeBuild/Fleet.cs +++ b/sdk/dotnet/CodeBuild/Fleet.cs @@ -27,6 +27,9 @@ public partial class Fleet : global::Pulumi.CustomResource [Output("baseCapacity")] public Output BaseCapacity { get; private set; } = null!; + [Output("computeConfiguration")] + public Output ComputeConfiguration { get; private set; } = null!; + /// /// Information about the compute resources the compute fleet uses. Available values include: /// @@ -76,6 +79,9 @@ public partial class Fleet : global::Pulumi.CustomResource [Output("environmentType")] public Output EnvironmentType { get; private set; } = null!; + [Output("fleetProxyConfiguration")] + public Output FleetProxyConfiguration { get; private set; } = null!; + /// /// The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . /// @@ -111,6 +117,9 @@ public partial class Fleet : global::Pulumi.CustomResource [Output("overflowBehavior")] public Output OverflowBehavior { get; private set; } = null!; + [Output("scalingConfiguration")] + public Output ScalingConfiguration { get; private set; } = null!; + /// /// A list of tag key and value pairs associated with this compute fleet. /// @@ -170,6 +179,9 @@ public sealed class FleetArgs : global::Pulumi.ResourceArgs [Input("baseCapacity")] public Input? BaseCapacity { get; set; } + [Input("computeConfiguration")] + public Input? ComputeConfiguration { get; set; } + /// /// Information about the compute resources the compute fleet uses. Available values include: /// @@ -219,6 +231,9 @@ public sealed class FleetArgs : global::Pulumi.ResourceArgs [Input("environmentType")] public Input? EnvironmentType { get; set; } + [Input("fleetProxyConfiguration")] + public Input? FleetProxyConfiguration { get; set; } + /// /// The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . /// @@ -254,6 +269,9 @@ public sealed class FleetArgs : global::Pulumi.ResourceArgs [Input("overflowBehavior")] public Input? OverflowBehavior { get; set; } + [Input("scalingConfiguration")] + public Input? ScalingConfiguration { get; set; } + [Input("tags")] private InputList? _tags; diff --git a/sdk/dotnet/CodeBuild/GetFleet.cs b/sdk/dotnet/CodeBuild/GetFleet.cs index 8a8bbfc287..b2f1165188 100644 --- a/sdk/dotnet/CodeBuild/GetFleet.cs +++ b/sdk/dotnet/CodeBuild/GetFleet.cs @@ -65,6 +65,7 @@ public sealed class GetFleetResult /// The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel. /// public readonly int? BaseCapacity; + public readonly Outputs.FleetComputeConfiguration? ComputeConfiguration; /// /// Information about the compute resources the compute fleet uses. Available values include: /// @@ -110,6 +111,7 @@ public sealed class GetFleetResult /// For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . /// public readonly Pulumi.AwsNative.CodeBuild.FleetEnvironmentType? EnvironmentType; + public readonly Outputs.FleetProxyConfiguration? FleetProxyConfiguration; /// /// The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . /// @@ -135,6 +137,7 @@ public sealed class GetFleetResult /// > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . /// public readonly Pulumi.AwsNative.CodeBuild.FleetOverflowBehavior? OverflowBehavior; + public readonly Outputs.FleetScalingConfigurationInput? ScalingConfiguration; /// /// A list of tag key and value pairs associated with this compute fleet. /// @@ -148,10 +151,14 @@ private GetFleetResult( int? baseCapacity, + Outputs.FleetComputeConfiguration? computeConfiguration, + Pulumi.AwsNative.CodeBuild.FleetComputeType? computeType, Pulumi.AwsNative.CodeBuild.FleetEnvironmentType? environmentType, + Outputs.FleetProxyConfiguration? fleetProxyConfiguration, + string? fleetServiceRole, Outputs.FleetVpcConfig? fleetVpcConfig, @@ -162,17 +169,22 @@ private GetFleetResult( Pulumi.AwsNative.CodeBuild.FleetOverflowBehavior? overflowBehavior, + Outputs.FleetScalingConfigurationInput? scalingConfiguration, + ImmutableArray tags) { Arn = arn; BaseCapacity = baseCapacity; + ComputeConfiguration = computeConfiguration; ComputeType = computeType; EnvironmentType = environmentType; + FleetProxyConfiguration = fleetProxyConfiguration; FleetServiceRole = fleetServiceRole; FleetVpcConfig = fleetVpcConfig; ImageId = imageId; Name = name; OverflowBehavior = overflowBehavior; + ScalingConfiguration = scalingConfiguration; Tags = tags; } } diff --git a/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationArgs.cs b/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationArgs.cs new file mode 100644 index 0000000000..d07b869e1d --- /dev/null +++ b/sdk/dotnet/CodeBuild/Inputs/FleetComputeConfigurationArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Inputs +{ + + public sealed class FleetComputeConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("disk")] + public Input? Disk { get; set; } + + [Input("machineType")] + public Input? MachineType { get; set; } + + [Input("memory")] + public Input? Memory { get; set; } + + [Input("vCpu")] + public Input? VCpu { get; set; } + + public FleetComputeConfigurationArgs() + { + } + public static new FleetComputeConfigurationArgs Empty => new FleetComputeConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CodeBuild/Inputs/FleetProxyConfigurationArgs.cs b/sdk/dotnet/CodeBuild/Inputs/FleetProxyConfigurationArgs.cs new file mode 100644 index 0000000000..179079665c --- /dev/null +++ b/sdk/dotnet/CodeBuild/Inputs/FleetProxyConfigurationArgs.cs @@ -0,0 +1,31 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Inputs +{ + + public sealed class FleetProxyConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("defaultBehavior")] + public Input? DefaultBehavior { get; set; } + + [Input("orderedProxyRules")] + private InputList? _orderedProxyRules; + public InputList OrderedProxyRules + { + get => _orderedProxyRules ?? (_orderedProxyRules = new InputList()); + set => _orderedProxyRules = value; + } + + public FleetProxyConfigurationArgs() + { + } + public static new FleetProxyConfigurationArgs Empty => new FleetProxyConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CodeBuild/Inputs/FleetProxyRuleArgs.cs b/sdk/dotnet/CodeBuild/Inputs/FleetProxyRuleArgs.cs new file mode 100644 index 0000000000..5c2e5355b6 --- /dev/null +++ b/sdk/dotnet/CodeBuild/Inputs/FleetProxyRuleArgs.cs @@ -0,0 +1,34 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Inputs +{ + + public sealed class FleetProxyRuleArgs : global::Pulumi.ResourceArgs + { + [Input("effect")] + public Input? Effect { get; set; } + + [Input("entities")] + private InputList? _entities; + public InputList Entities + { + get => _entities ?? (_entities = new InputList()); + set => _entities = value; + } + + [Input("type")] + public Input? Type { get; set; } + + public FleetProxyRuleArgs() + { + } + public static new FleetProxyRuleArgs Empty => new FleetProxyRuleArgs(); + } +} diff --git a/sdk/dotnet/CodeBuild/Inputs/FleetScalingConfigurationInputArgs.cs b/sdk/dotnet/CodeBuild/Inputs/FleetScalingConfigurationInputArgs.cs new file mode 100644 index 0000000000..95a83cc6dd --- /dev/null +++ b/sdk/dotnet/CodeBuild/Inputs/FleetScalingConfigurationInputArgs.cs @@ -0,0 +1,34 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Inputs +{ + + public sealed class FleetScalingConfigurationInputArgs : global::Pulumi.ResourceArgs + { + [Input("maxCapacity")] + public Input? MaxCapacity { get; set; } + + [Input("scalingType")] + public Input? ScalingType { get; set; } + + [Input("targetTrackingScalingConfigs")] + private InputList? _targetTrackingScalingConfigs; + public InputList TargetTrackingScalingConfigs + { + get => _targetTrackingScalingConfigs ?? (_targetTrackingScalingConfigs = new InputList()); + set => _targetTrackingScalingConfigs = value; + } + + public FleetScalingConfigurationInputArgs() + { + } + public static new FleetScalingConfigurationInputArgs Empty => new FleetScalingConfigurationInputArgs(); + } +} diff --git a/sdk/dotnet/CodeBuild/Inputs/FleetTargetTrackingScalingConfigurationArgs.cs b/sdk/dotnet/CodeBuild/Inputs/FleetTargetTrackingScalingConfigurationArgs.cs new file mode 100644 index 0000000000..0123bc4213 --- /dev/null +++ b/sdk/dotnet/CodeBuild/Inputs/FleetTargetTrackingScalingConfigurationArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Inputs +{ + + public sealed class FleetTargetTrackingScalingConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("metricType")] + public Input? MetricType { get; set; } + + [Input("targetValue")] + public Input? TargetValue { get; set; } + + public FleetTargetTrackingScalingConfigurationArgs() + { + } + public static new FleetTargetTrackingScalingConfigurationArgs Empty => new FleetTargetTrackingScalingConfigurationArgs(); + } +} diff --git a/sdk/dotnet/CodeBuild/Outputs/FleetComputeConfiguration.cs b/sdk/dotnet/CodeBuild/Outputs/FleetComputeConfiguration.cs new file mode 100644 index 0000000000..bb1e3c5ebe --- /dev/null +++ b/sdk/dotnet/CodeBuild/Outputs/FleetComputeConfiguration.cs @@ -0,0 +1,37 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Outputs +{ + + [OutputType] + public sealed class FleetComputeConfiguration + { + public readonly int? Disk; + public readonly Pulumi.AwsNative.CodeBuild.FleetComputeConfigurationmachineType? MachineType; + public readonly int? Memory; + public readonly int? VCpu; + + [OutputConstructor] + private FleetComputeConfiguration( + int? disk, + + Pulumi.AwsNative.CodeBuild.FleetComputeConfigurationmachineType? machineType, + + int? memory, + + int? vCpu) + { + Disk = disk; + MachineType = machineType; + Memory = memory; + VCpu = vCpu; + } + } +} diff --git a/sdk/dotnet/CodeBuild/Outputs/FleetProxyConfiguration.cs b/sdk/dotnet/CodeBuild/Outputs/FleetProxyConfiguration.cs new file mode 100644 index 0000000000..3ee1b9cff0 --- /dev/null +++ b/sdk/dotnet/CodeBuild/Outputs/FleetProxyConfiguration.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Outputs +{ + + [OutputType] + public sealed class FleetProxyConfiguration + { + public readonly Pulumi.AwsNative.CodeBuild.FleetProxyConfigurationDefaultBehavior? DefaultBehavior; + public readonly ImmutableArray OrderedProxyRules; + + [OutputConstructor] + private FleetProxyConfiguration( + Pulumi.AwsNative.CodeBuild.FleetProxyConfigurationDefaultBehavior? defaultBehavior, + + ImmutableArray orderedProxyRules) + { + DefaultBehavior = defaultBehavior; + OrderedProxyRules = orderedProxyRules; + } + } +} diff --git a/sdk/dotnet/CodeBuild/Outputs/FleetProxyRule.cs b/sdk/dotnet/CodeBuild/Outputs/FleetProxyRule.cs new file mode 100644 index 0000000000..400931a124 --- /dev/null +++ b/sdk/dotnet/CodeBuild/Outputs/FleetProxyRule.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Outputs +{ + + [OutputType] + public sealed class FleetProxyRule + { + public readonly Pulumi.AwsNative.CodeBuild.FleetProxyRuleEffect? Effect; + public readonly ImmutableArray Entities; + public readonly Pulumi.AwsNative.CodeBuild.FleetProxyRuleType? Type; + + [OutputConstructor] + private FleetProxyRule( + Pulumi.AwsNative.CodeBuild.FleetProxyRuleEffect? effect, + + ImmutableArray entities, + + Pulumi.AwsNative.CodeBuild.FleetProxyRuleType? type) + { + Effect = effect; + Entities = entities; + Type = type; + } + } +} diff --git a/sdk/dotnet/CodeBuild/Outputs/FleetScalingConfigurationInput.cs b/sdk/dotnet/CodeBuild/Outputs/FleetScalingConfigurationInput.cs new file mode 100644 index 0000000000..dee04aaab4 --- /dev/null +++ b/sdk/dotnet/CodeBuild/Outputs/FleetScalingConfigurationInput.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Outputs +{ + + [OutputType] + public sealed class FleetScalingConfigurationInput + { + public readonly int? MaxCapacity; + public readonly Pulumi.AwsNative.CodeBuild.FleetScalingConfigurationInputScalingType? ScalingType; + public readonly ImmutableArray TargetTrackingScalingConfigs; + + [OutputConstructor] + private FleetScalingConfigurationInput( + int? maxCapacity, + + Pulumi.AwsNative.CodeBuild.FleetScalingConfigurationInputScalingType? scalingType, + + ImmutableArray targetTrackingScalingConfigs) + { + MaxCapacity = maxCapacity; + ScalingType = scalingType; + TargetTrackingScalingConfigs = targetTrackingScalingConfigs; + } + } +} diff --git a/sdk/dotnet/CodeBuild/Outputs/FleetTargetTrackingScalingConfiguration.cs b/sdk/dotnet/CodeBuild/Outputs/FleetTargetTrackingScalingConfiguration.cs new file mode 100644 index 0000000000..63e18b6571 --- /dev/null +++ b/sdk/dotnet/CodeBuild/Outputs/FleetTargetTrackingScalingConfiguration.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.CodeBuild.Outputs +{ + + [OutputType] + public sealed class FleetTargetTrackingScalingConfiguration + { + public readonly Pulumi.AwsNative.CodeBuild.FleetTargetTrackingScalingConfigurationMetricType? MetricType; + public readonly double? TargetValue; + + [OutputConstructor] + private FleetTargetTrackingScalingConfiguration( + Pulumi.AwsNative.CodeBuild.FleetTargetTrackingScalingConfigurationMetricType? metricType, + + double? targetValue) + { + MetricType = metricType; + TargetValue = targetValue; + } + } +} diff --git a/sdk/dotnet/DynamoDb/GetGlobalTable.cs b/sdk/dotnet/DynamoDb/GetGlobalTable.cs index 366ab66b7c..9eb1e3e556 100644 --- a/sdk/dotnet/DynamoDb/GetGlobalTable.cs +++ b/sdk/dotnet/DynamoDb/GetGlobalTable.cs @@ -117,7 +117,7 @@ public sealed class GetGlobalTableResult /// public readonly Outputs.GlobalTableTimeToLiveSpecification? TimeToLiveSpecification; /// - /// Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + /// Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . /// public readonly Outputs.GlobalTableWriteOnDemandThroughputSettings? WriteOnDemandThroughputSettings; /// diff --git a/sdk/dotnet/DynamoDb/GlobalTable.cs b/sdk/dotnet/DynamoDb/GlobalTable.cs index 7cbdaa67fa..dbeaff8298 100644 --- a/sdk/dotnet/DynamoDb/GlobalTable.cs +++ b/sdk/dotnet/DynamoDb/GlobalTable.cs @@ -111,7 +111,7 @@ public partial class GlobalTable : global::Pulumi.CustomResource public Output TimeToLiveSpecification { get; private set; } = null!; /// - /// Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + /// Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . /// [Output("writeOnDemandThroughputSettings")] public Output WriteOnDemandThroughputSettings { get; private set; } = null!; @@ -279,7 +279,7 @@ public InputList Replicas public Input? TimeToLiveSpecification { get; set; } /// - /// Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + /// Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . /// [Input("writeOnDemandThroughputSettings")] public Input? WriteOnDemandThroughputSettings { get; set; } diff --git a/sdk/dotnet/DynamoDb/Inputs/GlobalTableGlobalSecondaryIndexArgs.cs b/sdk/dotnet/DynamoDb/Inputs/GlobalTableGlobalSecondaryIndexArgs.cs index 2bc27e4222..b490207bd9 100644 --- a/sdk/dotnet/DynamoDb/Inputs/GlobalTableGlobalSecondaryIndexArgs.cs +++ b/sdk/dotnet/DynamoDb/Inputs/GlobalTableGlobalSecondaryIndexArgs.cs @@ -44,7 +44,7 @@ public InputList KeySchema public Input Projection { get; set; } = null!; /// - /// Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + /// Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . /// [Input("writeOnDemandThroughputSettings")] public Input? WriteOnDemandThroughputSettings { get; set; } diff --git a/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaGlobalSecondaryIndexSpecificationArgs.cs b/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaGlobalSecondaryIndexSpecificationArgs.cs index 6437a89ac7..0761b66a9b 100644 --- a/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaGlobalSecondaryIndexSpecificationArgs.cs +++ b/sdk/dotnet/DynamoDb/Inputs/GlobalTableReplicaGlobalSecondaryIndexSpecificationArgs.cs @@ -25,7 +25,7 @@ public sealed class GlobalTableReplicaGlobalSecondaryIndexSpecificationArgs : gl public Input IndexName { get; set; } = null!; /// - /// Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + /// Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . /// [Input("readOnDemandThroughputSettings")] public Input? ReadOnDemandThroughputSettings { get; set; } diff --git a/sdk/dotnet/DynamoDb/Outputs/GlobalTableGlobalSecondaryIndex.cs b/sdk/dotnet/DynamoDb/Outputs/GlobalTableGlobalSecondaryIndex.cs index 9c90e8c16e..fb4b6436f6 100644 --- a/sdk/dotnet/DynamoDb/Outputs/GlobalTableGlobalSecondaryIndex.cs +++ b/sdk/dotnet/DynamoDb/Outputs/GlobalTableGlobalSecondaryIndex.cs @@ -33,7 +33,7 @@ public sealed class GlobalTableGlobalSecondaryIndex /// public readonly Outputs.GlobalTableProjection Projection; /// - /// Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + /// Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . /// public readonly Outputs.GlobalTableWriteOnDemandThroughputSettings? WriteOnDemandThroughputSettings; /// diff --git a/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaGlobalSecondaryIndexSpecification.cs b/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaGlobalSecondaryIndexSpecification.cs index 16e94a728f..837fee132d 100644 --- a/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaGlobalSecondaryIndexSpecification.cs +++ b/sdk/dotnet/DynamoDb/Outputs/GlobalTableReplicaGlobalSecondaryIndexSpecification.cs @@ -22,7 +22,7 @@ public sealed class GlobalTableReplicaGlobalSecondaryIndexSpecification /// public readonly string IndexName; /// - /// Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + /// Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . /// public readonly Outputs.GlobalTableReadOnDemandThroughputSettings? ReadOnDemandThroughputSettings; /// diff --git a/sdk/dotnet/Ec2/CapacityReservation.cs b/sdk/dotnet/Ec2/CapacityReservation.cs index 94ef3b41cc..7c04df1e90 100644 --- a/sdk/dotnet/Ec2/CapacityReservation.cs +++ b/sdk/dotnet/Ec2/CapacityReservation.cs @@ -129,7 +129,9 @@ public partial class CapacityReservation : global::Pulumi.CustomResource public Output TotalInstanceCount { get; private set; } = null!; /// - /// The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + /// The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + /// + /// You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . /// [Output("unusedReservationBillingOwnerId")] public Output UnusedReservationBillingOwnerId { get; private set; } = null!; @@ -293,7 +295,9 @@ public InputList TagSpecificatio public Input? Tenancy { get; set; } /// - /// The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + /// The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + /// + /// You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . /// [Input("unusedReservationBillingOwnerId")] public Input? UnusedReservationBillingOwnerId { get; set; } diff --git a/sdk/dotnet/Ecs/Enums.cs b/sdk/dotnet/Ecs/Enums.cs index 3d2b2e11c0..a735a32c26 100644 --- a/sdk/dotnet/Ecs/Enums.cs +++ b/sdk/dotnet/Ecs/Enums.cs @@ -168,6 +168,34 @@ private ClusterCapacityProviderAssociationsCapacityProvider0(string value) public override string ToString() => _value; } + [EnumType] + public readonly struct ServiceAvailabilityZoneRebalancing : IEquatable + { + private readonly string _value; + + private ServiceAvailabilityZoneRebalancing(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static ServiceAvailabilityZoneRebalancing Enabled { get; } = new ServiceAvailabilityZoneRebalancing("ENABLED"); + public static ServiceAvailabilityZoneRebalancing Disabled { get; } = new ServiceAvailabilityZoneRebalancing("DISABLED"); + + public static bool operator ==(ServiceAvailabilityZoneRebalancing left, ServiceAvailabilityZoneRebalancing right) => left.Equals(right); + public static bool operator !=(ServiceAvailabilityZoneRebalancing left, ServiceAvailabilityZoneRebalancing right) => !left.Equals(right); + + public static explicit operator string(ServiceAvailabilityZoneRebalancing value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is ServiceAvailabilityZoneRebalancing other && Equals(other); + public bool Equals(ServiceAvailabilityZoneRebalancing other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. /// diff --git a/sdk/dotnet/Ecs/GetService.cs b/sdk/dotnet/Ecs/GetService.cs index eb9ca2c2b5..9015683105 100644 --- a/sdk/dotnet/Ecs/GetService.cs +++ b/sdk/dotnet/Ecs/GetService.cs @@ -73,6 +73,7 @@ public GetServiceInvokeArgs() [OutputType] public sealed class GetServiceResult { + public readonly Pulumi.AwsNative.Ecs.ServiceAvailabilityZoneRebalancing? AvailabilityZoneRebalancing; /// /// The capacity provider strategy to use for the service. /// If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -80,7 +81,7 @@ public sealed class GetServiceResult /// public readonly ImmutableArray CapacityProviderStrategy; /// - /// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + /// Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. /// public readonly Outputs.ServiceDeploymentConfiguration? DeploymentConfiguration; /// @@ -161,9 +162,12 @@ public sealed class GetServiceResult /// For more information about deployment types, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html). /// public readonly string? TaskDefinition; + public readonly ImmutableArray VpcLatticeConfigurations; [OutputConstructor] private GetServiceResult( + Pulumi.AwsNative.Ecs.ServiceAvailabilityZoneRebalancing? availabilityZoneRebalancing, + ImmutableArray capacityProviderStrategy, Outputs.ServiceDeploymentConfiguration? deploymentConfiguration, @@ -196,8 +200,11 @@ private GetServiceResult( ImmutableArray tags, - string? taskDefinition) + string? taskDefinition, + + ImmutableArray vpcLatticeConfigurations) { + AvailabilityZoneRebalancing = availabilityZoneRebalancing; CapacityProviderStrategy = capacityProviderStrategy; DeploymentConfiguration = deploymentConfiguration; DesiredCount = desiredCount; @@ -215,6 +222,7 @@ private GetServiceResult( ServiceRegistries = serviceRegistries; Tags = tags; TaskDefinition = taskDefinition; + VpcLatticeConfigurations = vpcLatticeConfigurations; } } } diff --git a/sdk/dotnet/Ecs/Inputs/ServiceDeploymentConfigurationArgs.cs b/sdk/dotnet/Ecs/Inputs/ServiceDeploymentConfigurationArgs.cs index 8f44016c39..968503b8e1 100644 --- a/sdk/dotnet/Ecs/Inputs/ServiceDeploymentConfigurationArgs.cs +++ b/sdk/dotnet/Ecs/Inputs/ServiceDeploymentConfigurationArgs.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Ecs.Inputs { /// - /// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + /// Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. /// public sealed class ServiceDeploymentConfigurationArgs : global::Pulumi.ResourceArgs { diff --git a/sdk/dotnet/Ecs/Inputs/ServiceLoadBalancerArgs.cs b/sdk/dotnet/Ecs/Inputs/ServiceLoadBalancerArgs.cs index 1aa917a128..96afada33b 100644 --- a/sdk/dotnet/Ecs/Inputs/ServiceLoadBalancerArgs.cs +++ b/sdk/dotnet/Ecs/Inputs/ServiceLoadBalancerArgs.cs @@ -31,7 +31,7 @@ public sealed class ServiceLoadBalancerArgs : global::Pulumi.ResourceArgs public Input? ContainerPort { get; set; } /// - /// The name of the load balancer to associate with the service or task set. + /// The name of the load balancer to associate with the Amazon ECS service or task set. /// If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. /// [Input("loadBalancerName")] diff --git a/sdk/dotnet/Ecs/Inputs/ServiceVpcLatticeConfigurationArgs.cs b/sdk/dotnet/Ecs/Inputs/ServiceVpcLatticeConfigurationArgs.cs new file mode 100644 index 0000000000..0733072756 --- /dev/null +++ b/sdk/dotnet/Ecs/Inputs/ServiceVpcLatticeConfigurationArgs.cs @@ -0,0 +1,29 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Ecs.Inputs +{ + + public sealed class ServiceVpcLatticeConfigurationArgs : global::Pulumi.ResourceArgs + { + [Input("portName", required: true)] + public Input PortName { get; set; } = null!; + + [Input("roleArn", required: true)] + public Input RoleArn { get; set; } = null!; + + [Input("targetGroupArn", required: true)] + public Input TargetGroupArn { get; set; } = null!; + + public ServiceVpcLatticeConfigurationArgs() + { + } + public static new ServiceVpcLatticeConfigurationArgs Empty => new ServiceVpcLatticeConfigurationArgs(); + } +} diff --git a/sdk/dotnet/Ecs/Outputs/ServiceDeploymentConfiguration.cs b/sdk/dotnet/Ecs/Outputs/ServiceDeploymentConfiguration.cs index 8a61ddb15e..05d47923c4 100644 --- a/sdk/dotnet/Ecs/Outputs/ServiceDeploymentConfiguration.cs +++ b/sdk/dotnet/Ecs/Outputs/ServiceDeploymentConfiguration.cs @@ -11,7 +11,7 @@ namespace Pulumi.AwsNative.Ecs.Outputs { /// - /// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + /// Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. /// [OutputType] public sealed class ServiceDeploymentConfiguration diff --git a/sdk/dotnet/Ecs/Outputs/ServiceLoadBalancer.cs b/sdk/dotnet/Ecs/Outputs/ServiceLoadBalancer.cs index b4b631de1d..03b89dac58 100644 --- a/sdk/dotnet/Ecs/Outputs/ServiceLoadBalancer.cs +++ b/sdk/dotnet/Ecs/Outputs/ServiceLoadBalancer.cs @@ -28,7 +28,7 @@ public sealed class ServiceLoadBalancer /// public readonly int? ContainerPort; /// - /// The name of the load balancer to associate with the service or task set. + /// The name of the load balancer to associate with the Amazon ECS service or task set. /// If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. /// public readonly string? LoadBalancerName; diff --git a/sdk/dotnet/Ecs/Outputs/ServiceVpcLatticeConfiguration.cs b/sdk/dotnet/Ecs/Outputs/ServiceVpcLatticeConfiguration.cs new file mode 100644 index 0000000000..53f6d80664 --- /dev/null +++ b/sdk/dotnet/Ecs/Outputs/ServiceVpcLatticeConfiguration.cs @@ -0,0 +1,33 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.Ecs.Outputs +{ + + [OutputType] + public sealed class ServiceVpcLatticeConfiguration + { + public readonly string PortName; + public readonly string RoleArn; + public readonly string TargetGroupArn; + + [OutputConstructor] + private ServiceVpcLatticeConfiguration( + string portName, + + string roleArn, + + string targetGroupArn) + { + PortName = portName; + RoleArn = roleArn; + TargetGroupArn = targetGroupArn; + } + } +} diff --git a/sdk/dotnet/Ecs/Service.cs b/sdk/dotnet/Ecs/Service.cs index 687a179f85..25cfb6abc8 100644 --- a/sdk/dotnet/Ecs/Service.cs +++ b/sdk/dotnet/Ecs/Service.cs @@ -17,6 +17,9 @@ namespace Pulumi.AwsNative.Ecs [AwsNativeResourceType("aws-native:ecs:Service")] public partial class Service : global::Pulumi.CustomResource { + [Output("availabilityZoneRebalancing")] + public Output AvailabilityZoneRebalancing { get; private set; } = null!; + /// /// The capacity provider strategy to use for the service. /// If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -32,7 +35,7 @@ public partial class Service : global::Pulumi.CustomResource public Output Cluster { get; private set; } = null!; /// - /// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + /// Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. /// [Output("deploymentConfiguration")] public Output DeploymentConfiguration { get; private set; } = null!; @@ -195,6 +198,9 @@ public partial class Service : global::Pulumi.CustomResource [Output("volumeConfigurations")] public Output> VolumeConfigurations { get; private set; } = null!; + [Output("vpcLatticeConfigurations")] + public Output> VpcLatticeConfigurations { get; private set; } = null!; + /// /// Create a Service resource with the given unique name, arguments, and options. @@ -249,6 +255,9 @@ public static Service Get(string name, Input id, CustomResourceOptions? public sealed class ServiceArgs : global::Pulumi.ResourceArgs { + [Input("availabilityZoneRebalancing")] + public Input? AvailabilityZoneRebalancing { get; set; } + [Input("capacityProviderStrategy")] private InputList? _capacityProviderStrategy; @@ -270,7 +279,7 @@ public InputList CapacityProvide public Input? Cluster { get; set; } /// - /// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + /// Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. /// [Input("deploymentConfiguration")] public Input? DeploymentConfiguration { get; set; } @@ -457,6 +466,14 @@ public InputList VolumeConfigurations set => _volumeConfigurations = value; } + [Input("vpcLatticeConfigurations")] + private InputList? _vpcLatticeConfigurations; + public InputList VpcLatticeConfigurations + { + get => _vpcLatticeConfigurations ?? (_vpcLatticeConfigurations = new InputList()); + set => _vpcLatticeConfigurations = value; + } + public ServiceArgs() { } diff --git a/sdk/dotnet/GameLift/ContainerGroupDefinition.cs b/sdk/dotnet/GameLift/ContainerGroupDefinition.cs index 3882d5da65..a2260132a5 100644 --- a/sdk/dotnet/GameLift/ContainerGroupDefinition.cs +++ b/sdk/dotnet/GameLift/ContainerGroupDefinition.cs @@ -15,12 +15,6 @@ namespace Pulumi.AwsNative.GameLift [AwsNativeResourceType("aws-native:gamelift:ContainerGroupDefinition")] public partial class ContainerGroupDefinition : global::Pulumi.CustomResource { - /// - /// A collection of container definitions that define the containers in this group. - /// - [Output("containerDefinitions")] - public Output> ContainerDefinitions { get; private set; } = null!; - /// /// The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift container group resource and uniquely identifies it across all AWS Regions. /// @@ -45,12 +39,6 @@ public partial class ContainerGroupDefinition : global::Pulumi.CustomResource [Output("operatingSystem")] public Output OperatingSystem { get; private set; } = null!; - /// - /// Specifies whether the container group includes replica or daemon containers. - /// - [Output("schedulingStrategy")] - public Output SchedulingStrategy { get; private set; } = null!; - /// /// A specific ContainerGroupDefinition version to be updated /// @@ -81,18 +69,6 @@ public partial class ContainerGroupDefinition : global::Pulumi.CustomResource [Output("tags")] public Output> Tags { get; private set; } = null!; - /// - /// The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - /// - [Output("totalCpuLimit")] - public Output TotalCpuLimit { get; private set; } = null!; - - /// - /// The maximum amount of memory (in MiB) to allocate for this container group. - /// - [Output("totalMemoryLimit")] - public Output TotalMemoryLimit { get; private set; } = null!; - /// /// Create a ContainerGroupDefinition resource with the given unique name, arguments, and options. @@ -118,12 +94,7 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? Version = Utilities.Version, ReplaceOnChanges = { - "containerDefinitions[*]", "name", - "operatingSystem", - "schedulingStrategy", - "totalCpuLimit", - "totalMemoryLimit", }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); @@ -147,18 +118,6 @@ public static ContainerGroupDefinition Get(string name, Input id, Custom public sealed class ContainerGroupDefinitionArgs : global::Pulumi.ResourceArgs { - [Input("containerDefinitions", required: true)] - private InputList? _containerDefinitions; - - /// - /// A collection of container definitions that define the containers in this group. - /// - public InputList ContainerDefinitions - { - get => _containerDefinitions ?? (_containerDefinitions = new InputList()); - set => _containerDefinitions = value; - } - /// /// A descriptive label for the container group definition. /// @@ -171,12 +130,6 @@ public InputList Contain [Input("operatingSystem", required: true)] public Input OperatingSystem { get; set; } = null!; - /// - /// Specifies whether the container group includes replica or daemon containers. - /// - [Input("schedulingStrategy")] - public Input? SchedulingStrategy { get; set; } - /// /// A specific ContainerGroupDefinition version to be updated /// @@ -207,18 +160,6 @@ public InputList Tags set => _tags = value; } - /// - /// The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - /// - [Input("totalCpuLimit", required: true)] - public Input TotalCpuLimit { get; set; } = null!; - - /// - /// The maximum amount of memory (in MiB) to allocate for this container group. - /// - [Input("totalMemoryLimit", required: true)] - public Input TotalMemoryLimit { get; set; } = null!; - public ContainerGroupDefinitionArgs() { } diff --git a/sdk/dotnet/GameLift/Enums.cs b/sdk/dotnet/GameLift/Enums.cs index 6c470ee920..432aad490d 100644 --- a/sdk/dotnet/GameLift/Enums.cs +++ b/sdk/dotnet/GameLift/Enums.cs @@ -72,70 +72,6 @@ private BuildOperatingSystem(string value) public override string ToString() => _value; } - /// - /// The type of dependency. - /// - [EnumType] - public readonly struct ContainerGroupDefinitionContainerDependencyCondition : IEquatable - { - private readonly string _value; - - private ContainerGroupDefinitionContainerDependencyCondition(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static ContainerGroupDefinitionContainerDependencyCondition Start { get; } = new ContainerGroupDefinitionContainerDependencyCondition("START"); - public static ContainerGroupDefinitionContainerDependencyCondition Complete { get; } = new ContainerGroupDefinitionContainerDependencyCondition("COMPLETE"); - public static ContainerGroupDefinitionContainerDependencyCondition Success { get; } = new ContainerGroupDefinitionContainerDependencyCondition("SUCCESS"); - public static ContainerGroupDefinitionContainerDependencyCondition Healthy { get; } = new ContainerGroupDefinitionContainerDependencyCondition("HEALTHY"); - - public static bool operator ==(ContainerGroupDefinitionContainerDependencyCondition left, ContainerGroupDefinitionContainerDependencyCondition right) => left.Equals(right); - public static bool operator !=(ContainerGroupDefinitionContainerDependencyCondition left, ContainerGroupDefinitionContainerDependencyCondition right) => !left.Equals(right); - - public static explicit operator string(ContainerGroupDefinitionContainerDependencyCondition value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is ContainerGroupDefinitionContainerDependencyCondition other && Equals(other); - public bool Equals(ContainerGroupDefinitionContainerDependencyCondition other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - - /// - /// Defines the protocol of these ports. - /// - [EnumType] - public readonly struct ContainerGroupDefinitionContainerPortRangeProtocol : IEquatable - { - private readonly string _value; - - private ContainerGroupDefinitionContainerPortRangeProtocol(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static ContainerGroupDefinitionContainerPortRangeProtocol Tcp { get; } = new ContainerGroupDefinitionContainerPortRangeProtocol("TCP"); - public static ContainerGroupDefinitionContainerPortRangeProtocol Udp { get; } = new ContainerGroupDefinitionContainerPortRangeProtocol("UDP"); - - public static bool operator ==(ContainerGroupDefinitionContainerPortRangeProtocol left, ContainerGroupDefinitionContainerPortRangeProtocol right) => left.Equals(right); - public static bool operator !=(ContainerGroupDefinitionContainerPortRangeProtocol left, ContainerGroupDefinitionContainerPortRangeProtocol right) => !left.Equals(right); - - public static explicit operator string(ContainerGroupDefinitionContainerPortRangeProtocol value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is ContainerGroupDefinitionContainerPortRangeProtocol other && Equals(other); - public bool Equals(ContainerGroupDefinitionContainerPortRangeProtocol other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - /// /// The operating system of the container group /// @@ -166,37 +102,6 @@ private ContainerGroupDefinitionOperatingSystem(string value) public override string ToString() => _value; } - /// - /// Specifies whether the container group includes replica or daemon containers. - /// - [EnumType] - public readonly struct ContainerGroupDefinitionSchedulingStrategy : IEquatable - { - private readonly string _value; - - private ContainerGroupDefinitionSchedulingStrategy(string value) - { - _value = value ?? throw new ArgumentNullException(nameof(value)); - } - - public static ContainerGroupDefinitionSchedulingStrategy Replica { get; } = new ContainerGroupDefinitionSchedulingStrategy("REPLICA"); - public static ContainerGroupDefinitionSchedulingStrategy Daemon { get; } = new ContainerGroupDefinitionSchedulingStrategy("DAEMON"); - - public static bool operator ==(ContainerGroupDefinitionSchedulingStrategy left, ContainerGroupDefinitionSchedulingStrategy right) => left.Equals(right); - public static bool operator !=(ContainerGroupDefinitionSchedulingStrategy left, ContainerGroupDefinitionSchedulingStrategy right) => !left.Equals(right); - - public static explicit operator string(ContainerGroupDefinitionSchedulingStrategy value) => value._value; - - [EditorBrowsable(EditorBrowsableState.Never)] - public override bool Equals(object? obj) => obj is ContainerGroupDefinitionSchedulingStrategy other && Equals(other); - public bool Equals(ContainerGroupDefinitionSchedulingStrategy other) => string.Equals(_value, other._value, StringComparison.Ordinal); - - [EditorBrowsable(EditorBrowsableState.Never)] - public override int GetHashCode() => _value?.GetHashCode() ?? 0; - - public override string ToString() => _value; - } - /// /// A string indicating ContainerGroupDefinition status. /// @@ -311,7 +216,6 @@ private FleetComputeType(string value) public static FleetComputeType Ec2 { get; } = new FleetComputeType("EC2"); public static FleetComputeType Anywhere { get; } = new FleetComputeType("ANYWHERE"); - public static FleetComputeType Container { get; } = new FleetComputeType("CONTAINER"); public static bool operator ==(FleetComputeType left, FleetComputeType right) => left.Equals(right); public static bool operator !=(FleetComputeType left, FleetComputeType right) => !left.Equals(right); diff --git a/sdk/dotnet/GameLift/Fleet.cs b/sdk/dotnet/GameLift/Fleet.cs index c04512f5f8..0e47b081df 100644 --- a/sdk/dotnet/GameLift/Fleet.cs +++ b/sdk/dotnet/GameLift/Fleet.cs @@ -45,16 +45,6 @@ public partial class Fleet : global::Pulumi.CustomResource [Output("computeType")] public Output ComputeType { get; private set; } = null!; - /// - /// *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - /// - /// Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - /// - /// *Used with:* `CreateFleet` - /// - [Output("containerGroupsConfiguration")] - public Output ContainerGroupsConfiguration { get; private set; } = null!; - /// /// A human-readable description of a fleet. /// @@ -226,7 +216,6 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? "buildId", "certificateConfiguration", "computeType", - "containerGroupsConfiguration", "ec2InstanceType", "fleetType", "instanceRoleArn", @@ -290,16 +279,6 @@ public sealed class FleetArgs : global::Pulumi.ResourceArgs [Input("computeType")] public Input? ComputeType { get; set; } - /// - /// *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - /// - /// Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - /// - /// *Used with:* `CreateFleet` - /// - [Input("containerGroupsConfiguration")] - public Input? ContainerGroupsConfiguration { get; set; } - /// /// A human-readable description of a fleet. /// diff --git a/sdk/dotnet/GameLift/GetContainerGroupDefinition.cs b/sdk/dotnet/GameLift/GetContainerGroupDefinition.cs index 51d3d43382..f2ccfb7c1e 100644 --- a/sdk/dotnet/GameLift/GetContainerGroupDefinition.cs +++ b/sdk/dotnet/GameLift/GetContainerGroupDefinition.cs @@ -66,6 +66,10 @@ public sealed class GetContainerGroupDefinitionResult /// public readonly string? CreationTime; /// + /// The operating system of the container group + /// + public readonly Pulumi.AwsNative.GameLift.ContainerGroupDefinitionOperatingSystem? OperatingSystem; + /// /// A specific ContainerGroupDefinition version to be updated /// public readonly int? SourceVersionNumber; @@ -92,6 +96,8 @@ private GetContainerGroupDefinitionResult( string? creationTime, + Pulumi.AwsNative.GameLift.ContainerGroupDefinitionOperatingSystem? operatingSystem, + int? sourceVersionNumber, Pulumi.AwsNative.GameLift.ContainerGroupDefinitionStatus? status, @@ -104,6 +110,7 @@ private GetContainerGroupDefinitionResult( { ContainerGroupDefinitionArn = containerGroupDefinitionArn; CreationTime = creationTime; + OperatingSystem = operatingSystem; SourceVersionNumber = sourceVersionNumber; Status = status; StatusReason = statusReason; diff --git a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerDefinitionArgs.cs b/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerDefinitionArgs.cs deleted file mode 100644 index c1d95d100d..0000000000 --- a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerDefinitionArgs.cs +++ /dev/null @@ -1,125 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// Details about a container that is used in a container fleet - /// - public sealed class ContainerGroupDefinitionContainerDefinitionArgs : global::Pulumi.ResourceArgs - { - [Input("command")] - private InputList? _command; - - /// - /// The command that's passed to the container. - /// - public InputList Command - { - get => _command ?? (_command = new InputList()); - set => _command = value; - } - - /// - /// A descriptive label for the container definition. Container definition names must be unique with a container group definition. - /// - [Input("containerName", required: true)] - public Input ContainerName { get; set; } = null!; - - /// - /// The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - /// - [Input("cpu")] - public Input? Cpu { get; set; } - - [Input("dependsOn")] - private InputList? _dependsOn; - - /// - /// A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - /// - public InputList DependsOn - { - get => _dependsOn ?? (_dependsOn = new InputList()); - set => _dependsOn = value; - } - - [Input("entryPoint")] - private InputList? _entryPoint; - - /// - /// The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - /// - public InputList EntryPoint - { - get => _entryPoint ?? (_entryPoint = new InputList()); - set => _entryPoint = value; - } - - [Input("environment")] - private InputList? _environment; - - /// - /// The environment variables to pass to a container. - /// - public InputList Environment - { - get => _environment ?? (_environment = new InputList()); - set => _environment = value; - } - - /// - /// Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - /// - [Input("essential")] - public Input? Essential { get; set; } - - /// - /// Specifies how the health of the containers will be checked. - /// - [Input("healthCheck")] - public Input? HealthCheck { get; set; } - - /// - /// Specifies the image URI of this container. - /// - [Input("imageUri", required: true)] - public Input ImageUri { get; set; } = null!; - - /// - /// Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - /// - [Input("memoryLimits")] - public Input? MemoryLimits { get; set; } - - /// - /// Defines the ports on the container. - /// - [Input("portConfiguration")] - public Input? PortConfiguration { get; set; } - - /// - /// The digest of the container image. - /// - [Input("resolvedImageDigest")] - public Input? ResolvedImageDigest { get; set; } - - /// - /// The working directory to run commands inside the container in. - /// - [Input("workingDirectory")] - public Input? WorkingDirectory { get; set; } - - public ContainerGroupDefinitionContainerDefinitionArgs() - { - } - public static new ContainerGroupDefinitionContainerDefinitionArgs Empty => new ContainerGroupDefinitionContainerDefinitionArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerDependencyArgs.cs b/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerDependencyArgs.cs deleted file mode 100644 index d39914d259..0000000000 --- a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerDependencyArgs.cs +++ /dev/null @@ -1,35 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// A dependency that impacts a container's startup and shutdown. - /// - public sealed class ContainerGroupDefinitionContainerDependencyArgs : global::Pulumi.ResourceArgs - { - /// - /// The type of dependency. - /// - [Input("condition", required: true)] - public Input Condition { get; set; } = null!; - - /// - /// A descriptive label for the container definition. The container being defined depends on this container's condition. - /// - [Input("containerName", required: true)] - public Input ContainerName { get; set; } = null!; - - public ContainerGroupDefinitionContainerDependencyArgs() - { - } - public static new ContainerGroupDefinitionContainerDependencyArgs Empty => new ContainerGroupDefinitionContainerDependencyArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerEnvironmentArgs.cs b/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerEnvironmentArgs.cs deleted file mode 100644 index 0350a4737e..0000000000 --- a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerEnvironmentArgs.cs +++ /dev/null @@ -1,35 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// An environment variable to set inside a container, in the form of a key-value pair. - /// - public sealed class ContainerGroupDefinitionContainerEnvironmentArgs : global::Pulumi.ResourceArgs - { - /// - /// The environment variable name. - /// - [Input("name", required: true)] - public Input Name { get; set; } = null!; - - /// - /// The environment variable value. - /// - [Input("value", required: true)] - public Input Value { get; set; } = null!; - - public ContainerGroupDefinitionContainerEnvironmentArgs() - { - } - public static new ContainerGroupDefinitionContainerEnvironmentArgs Empty => new ContainerGroupDefinitionContainerEnvironmentArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerHealthCheckArgs.cs b/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerHealthCheckArgs.cs deleted file mode 100644 index fb296fbcf5..0000000000 --- a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerHealthCheckArgs.cs +++ /dev/null @@ -1,59 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// Specifies how the process manager checks the health of containers. - /// - public sealed class ContainerGroupDefinitionContainerHealthCheckArgs : global::Pulumi.ResourceArgs - { - [Input("command", required: true)] - private InputList? _command; - - /// - /// A string array representing the command that the container runs to determine if it is healthy. - /// - public InputList Command - { - get => _command ?? (_command = new InputList()); - set => _command = value; - } - - /// - /// How often (in seconds) the health is checked. - /// - [Input("interval")] - public Input? Interval { get; set; } - - /// - /// How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - /// - [Input("retries")] - public Input? Retries { get; set; } - - /// - /// The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - /// - [Input("startPeriod")] - public Input? StartPeriod { get; set; } - - /// - /// How many seconds the process manager allows the command to run before canceling it. - /// - [Input("timeout")] - public Input? Timeout { get; set; } - - public ContainerGroupDefinitionContainerHealthCheckArgs() - { - } - public static new ContainerGroupDefinitionContainerHealthCheckArgs Empty => new ContainerGroupDefinitionContainerHealthCheckArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerPortRangeArgs.cs b/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerPortRangeArgs.cs deleted file mode 100644 index 79eefc7659..0000000000 --- a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionContainerPortRangeArgs.cs +++ /dev/null @@ -1,41 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// A set of one or more port numbers that can be opened on the container. - /// - public sealed class ContainerGroupDefinitionContainerPortRangeArgs : global::Pulumi.ResourceArgs - { - /// - /// A starting value for the range of allowed port numbers. - /// - [Input("fromPort", required: true)] - public Input FromPort { get; set; } = null!; - - /// - /// Defines the protocol of these ports. - /// - [Input("protocol", required: true)] - public Input Protocol { get; set; } = null!; - - /// - /// An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - /// - [Input("toPort", required: true)] - public Input ToPort { get; set; } = null!; - - public ContainerGroupDefinitionContainerPortRangeArgs() - { - } - public static new ContainerGroupDefinitionContainerPortRangeArgs Empty => new ContainerGroupDefinitionContainerPortRangeArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionMemoryLimitsArgs.cs b/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionMemoryLimitsArgs.cs deleted file mode 100644 index dbf86c6c73..0000000000 --- a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionMemoryLimitsArgs.cs +++ /dev/null @@ -1,35 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// Specifies how much memory is available to the container. - /// - public sealed class ContainerGroupDefinitionMemoryLimitsArgs : global::Pulumi.ResourceArgs - { - /// - /// The hard limit of memory to reserve for the container. - /// - [Input("hardLimit")] - public Input? HardLimit { get; set; } - - /// - /// The amount of memory that is reserved for the container. - /// - [Input("softLimit")] - public Input? SoftLimit { get; set; } - - public ContainerGroupDefinitionMemoryLimitsArgs() - { - } - public static new ContainerGroupDefinitionMemoryLimitsArgs Empty => new ContainerGroupDefinitionMemoryLimitsArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionPortConfigurationArgs.cs b/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionPortConfigurationArgs.cs deleted file mode 100644 index a02d001c94..0000000000 --- a/sdk/dotnet/GameLift/Inputs/ContainerGroupDefinitionPortConfigurationArgs.cs +++ /dev/null @@ -1,35 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// Defines the ports on a container. - /// - public sealed class ContainerGroupDefinitionPortConfigurationArgs : global::Pulumi.ResourceArgs - { - [Input("containerPortRanges", required: true)] - private InputList? _containerPortRanges; - - /// - /// Specifies one or more ranges of ports on a container. - /// - public InputList ContainerPortRanges - { - get => _containerPortRanges ?? (_containerPortRanges = new InputList()); - set => _containerPortRanges = value; - } - - public ContainerGroupDefinitionPortConfigurationArgs() - { - } - public static new ContainerGroupDefinitionPortConfigurationArgs Empty => new ContainerGroupDefinitionPortConfigurationArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/FleetConnectionPortRangeArgs.cs b/sdk/dotnet/GameLift/Inputs/FleetConnectionPortRangeArgs.cs deleted file mode 100644 index f3eb93c8ba..0000000000 --- a/sdk/dotnet/GameLift/Inputs/FleetConnectionPortRangeArgs.cs +++ /dev/null @@ -1,35 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. - /// - public sealed class FleetConnectionPortRangeArgs : global::Pulumi.ResourceArgs - { - /// - /// A starting value for a range of allowed port numbers. - /// - [Input("fromPort", required: true)] - public Input FromPort { get; set; } = null!; - - /// - /// An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - /// - [Input("toPort", required: true)] - public Input ToPort { get; set; } = null!; - - public FleetConnectionPortRangeArgs() - { - } - public static new FleetConnectionPortRangeArgs Empty => new FleetConnectionPortRangeArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/FleetContainerGroupsConfigurationArgs.cs b/sdk/dotnet/GameLift/Inputs/FleetContainerGroupsConfigurationArgs.cs deleted file mode 100644 index bc50a2c82d..0000000000 --- a/sdk/dotnet/GameLift/Inputs/FleetContainerGroupsConfigurationArgs.cs +++ /dev/null @@ -1,52 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. - /// - public sealed class FleetContainerGroupsConfigurationArgs : global::Pulumi.ResourceArgs - { - /// - /// A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - /// - /// Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - /// - /// *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - /// - /// As a best practice, double the minimum number of connection ports. - /// - /// > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - /// - [Input("connectionPortRange", required: true)] - public Input ConnectionPortRange { get; set; } = null!; - - [Input("containerGroupDefinitionNames", required: true)] - private InputList? _containerGroupDefinitionNames; - - /// - /// The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - /// - public InputList ContainerGroupDefinitionNames - { - get => _containerGroupDefinitionNames ?? (_containerGroupDefinitionNames = new InputList()); - set => _containerGroupDefinitionNames = value; - } - - [Input("containerGroupsPerInstance")] - public Input? ContainerGroupsPerInstance { get; set; } - - public FleetContainerGroupsConfigurationArgs() - { - } - public static new FleetContainerGroupsConfigurationArgs Empty => new FleetContainerGroupsConfigurationArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Inputs/FleetContainerGroupsPerInstanceArgs.cs b/sdk/dotnet/GameLift/Inputs/FleetContainerGroupsPerInstanceArgs.cs deleted file mode 100644 index 57a19aa80e..0000000000 --- a/sdk/dotnet/GameLift/Inputs/FleetContainerGroupsPerInstanceArgs.cs +++ /dev/null @@ -1,35 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Inputs -{ - - /// - /// The number of container groups per instance. - /// - public sealed class FleetContainerGroupsPerInstanceArgs : global::Pulumi.ResourceArgs - { - /// - /// Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - /// - [Input("desiredReplicaContainerGroupsPerInstance")] - public Input? DesiredReplicaContainerGroupsPerInstance { get; set; } - - /// - /// GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - /// - [Input("maxReplicaContainerGroupsPerInstance")] - public Input? MaxReplicaContainerGroupsPerInstance { get; set; } - - public FleetContainerGroupsPerInstanceArgs() - { - } - public static new FleetContainerGroupsPerInstanceArgs Empty => new FleetContainerGroupsPerInstanceArgs(); - } -} diff --git a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerDefinition.cs b/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerDefinition.cs deleted file mode 100644 index fff00df016..0000000000 --- a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerDefinition.cs +++ /dev/null @@ -1,115 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// Details about a container that is used in a container fleet - /// - [OutputType] - public sealed class ContainerGroupDefinitionContainerDefinition - { - /// - /// The command that's passed to the container. - /// - public readonly ImmutableArray Command; - /// - /// A descriptive label for the container definition. Container definition names must be unique with a container group definition. - /// - public readonly string ContainerName; - /// - /// The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - /// - public readonly int? Cpu; - /// - /// A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - /// - public readonly ImmutableArray DependsOn; - /// - /// The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - /// - public readonly ImmutableArray EntryPoint; - /// - /// The environment variables to pass to a container. - /// - public readonly ImmutableArray Environment; - /// - /// Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - /// - public readonly bool? Essential; - /// - /// Specifies how the health of the containers will be checked. - /// - public readonly Outputs.ContainerGroupDefinitionContainerHealthCheck? HealthCheck; - /// - /// Specifies the image URI of this container. - /// - public readonly string ImageUri; - /// - /// Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - /// - public readonly Outputs.ContainerGroupDefinitionMemoryLimits? MemoryLimits; - /// - /// Defines the ports on the container. - /// - public readonly Outputs.ContainerGroupDefinitionPortConfiguration? PortConfiguration; - /// - /// The digest of the container image. - /// - public readonly string? ResolvedImageDigest; - /// - /// The working directory to run commands inside the container in. - /// - public readonly string? WorkingDirectory; - - [OutputConstructor] - private ContainerGroupDefinitionContainerDefinition( - ImmutableArray command, - - string containerName, - - int? cpu, - - ImmutableArray dependsOn, - - ImmutableArray entryPoint, - - ImmutableArray environment, - - bool? essential, - - Outputs.ContainerGroupDefinitionContainerHealthCheck? healthCheck, - - string imageUri, - - Outputs.ContainerGroupDefinitionMemoryLimits? memoryLimits, - - Outputs.ContainerGroupDefinitionPortConfiguration? portConfiguration, - - string? resolvedImageDigest, - - string? workingDirectory) - { - Command = command; - ContainerName = containerName; - Cpu = cpu; - DependsOn = dependsOn; - EntryPoint = entryPoint; - Environment = environment; - Essential = essential; - HealthCheck = healthCheck; - ImageUri = imageUri; - MemoryLimits = memoryLimits; - PortConfiguration = portConfiguration; - ResolvedImageDigest = resolvedImageDigest; - WorkingDirectory = workingDirectory; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerDependency.cs b/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerDependency.cs deleted file mode 100644 index 2dc0155ef6..0000000000 --- a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerDependency.cs +++ /dev/null @@ -1,38 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// A dependency that impacts a container's startup and shutdown. - /// - [OutputType] - public sealed class ContainerGroupDefinitionContainerDependency - { - /// - /// The type of dependency. - /// - public readonly Pulumi.AwsNative.GameLift.ContainerGroupDefinitionContainerDependencyCondition Condition; - /// - /// A descriptive label for the container definition. The container being defined depends on this container's condition. - /// - public readonly string ContainerName; - - [OutputConstructor] - private ContainerGroupDefinitionContainerDependency( - Pulumi.AwsNative.GameLift.ContainerGroupDefinitionContainerDependencyCondition condition, - - string containerName) - { - Condition = condition; - ContainerName = containerName; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerEnvironment.cs b/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerEnvironment.cs deleted file mode 100644 index 99d8a0474d..0000000000 --- a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerEnvironment.cs +++ /dev/null @@ -1,38 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// An environment variable to set inside a container, in the form of a key-value pair. - /// - [OutputType] - public sealed class ContainerGroupDefinitionContainerEnvironment - { - /// - /// The environment variable name. - /// - public readonly string Name; - /// - /// The environment variable value. - /// - public readonly string Value; - - [OutputConstructor] - private ContainerGroupDefinitionContainerEnvironment( - string name, - - string value) - { - Name = name; - Value = value; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerHealthCheck.cs b/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerHealthCheck.cs deleted file mode 100644 index b23064f8aa..0000000000 --- a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerHealthCheck.cs +++ /dev/null @@ -1,59 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// Specifies how the process manager checks the health of containers. - /// - [OutputType] - public sealed class ContainerGroupDefinitionContainerHealthCheck - { - /// - /// A string array representing the command that the container runs to determine if it is healthy. - /// - public readonly ImmutableArray Command; - /// - /// How often (in seconds) the health is checked. - /// - public readonly int? Interval; - /// - /// How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - /// - public readonly int? Retries; - /// - /// The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - /// - public readonly int? StartPeriod; - /// - /// How many seconds the process manager allows the command to run before canceling it. - /// - public readonly int? Timeout; - - [OutputConstructor] - private ContainerGroupDefinitionContainerHealthCheck( - ImmutableArray command, - - int? interval, - - int? retries, - - int? startPeriod, - - int? timeout) - { - Command = command; - Interval = interval; - Retries = retries; - StartPeriod = startPeriod; - Timeout = timeout; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerPortRange.cs b/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerPortRange.cs deleted file mode 100644 index 2c9433561a..0000000000 --- a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionContainerPortRange.cs +++ /dev/null @@ -1,45 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// A set of one or more port numbers that can be opened on the container. - /// - [OutputType] - public sealed class ContainerGroupDefinitionContainerPortRange - { - /// - /// A starting value for the range of allowed port numbers. - /// - public readonly int FromPort; - /// - /// Defines the protocol of these ports. - /// - public readonly Pulumi.AwsNative.GameLift.ContainerGroupDefinitionContainerPortRangeProtocol Protocol; - /// - /// An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - /// - public readonly int ToPort; - - [OutputConstructor] - private ContainerGroupDefinitionContainerPortRange( - int fromPort, - - Pulumi.AwsNative.GameLift.ContainerGroupDefinitionContainerPortRangeProtocol protocol, - - int toPort) - { - FromPort = fromPort; - Protocol = protocol; - ToPort = toPort; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionMemoryLimits.cs b/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionMemoryLimits.cs deleted file mode 100644 index 84d868d3e0..0000000000 --- a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionMemoryLimits.cs +++ /dev/null @@ -1,38 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// Specifies how much memory is available to the container. - /// - [OutputType] - public sealed class ContainerGroupDefinitionMemoryLimits - { - /// - /// The hard limit of memory to reserve for the container. - /// - public readonly int? HardLimit; - /// - /// The amount of memory that is reserved for the container. - /// - public readonly int? SoftLimit; - - [OutputConstructor] - private ContainerGroupDefinitionMemoryLimits( - int? hardLimit, - - int? softLimit) - { - HardLimit = hardLimit; - SoftLimit = softLimit; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionPortConfiguration.cs b/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionPortConfiguration.cs deleted file mode 100644 index b2213825bc..0000000000 --- a/sdk/dotnet/GameLift/Outputs/ContainerGroupDefinitionPortConfiguration.cs +++ /dev/null @@ -1,30 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// Defines the ports on a container. - /// - [OutputType] - public sealed class ContainerGroupDefinitionPortConfiguration - { - /// - /// Specifies one or more ranges of ports on a container. - /// - public readonly ImmutableArray ContainerPortRanges; - - [OutputConstructor] - private ContainerGroupDefinitionPortConfiguration(ImmutableArray containerPortRanges) - { - ContainerPortRanges = containerPortRanges; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/FleetConnectionPortRange.cs b/sdk/dotnet/GameLift/Outputs/FleetConnectionPortRange.cs deleted file mode 100644 index 91c877e250..0000000000 --- a/sdk/dotnet/GameLift/Outputs/FleetConnectionPortRange.cs +++ /dev/null @@ -1,38 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. - /// - [OutputType] - public sealed class FleetConnectionPortRange - { - /// - /// A starting value for a range of allowed port numbers. - /// - public readonly int FromPort; - /// - /// An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - /// - public readonly int ToPort; - - [OutputConstructor] - private FleetConnectionPortRange( - int fromPort, - - int toPort) - { - FromPort = fromPort; - ToPort = toPort; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/FleetContainerGroupsConfiguration.cs b/sdk/dotnet/GameLift/Outputs/FleetContainerGroupsConfiguration.cs deleted file mode 100644 index ec3b881bd8..0000000000 --- a/sdk/dotnet/GameLift/Outputs/FleetContainerGroupsConfiguration.cs +++ /dev/null @@ -1,50 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. - /// - [OutputType] - public sealed class FleetContainerGroupsConfiguration - { - /// - /// A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - /// - /// Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - /// - /// *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - /// - /// As a best practice, double the minimum number of connection ports. - /// - /// > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - /// - public readonly Outputs.FleetConnectionPortRange ConnectionPortRange; - /// - /// The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - /// - public readonly ImmutableArray ContainerGroupDefinitionNames; - public readonly Outputs.FleetContainerGroupsPerInstance? ContainerGroupsPerInstance; - - [OutputConstructor] - private FleetContainerGroupsConfiguration( - Outputs.FleetConnectionPortRange connectionPortRange, - - ImmutableArray containerGroupDefinitionNames, - - Outputs.FleetContainerGroupsPerInstance? containerGroupsPerInstance) - { - ConnectionPortRange = connectionPortRange; - ContainerGroupDefinitionNames = containerGroupDefinitionNames; - ContainerGroupsPerInstance = containerGroupsPerInstance; - } - } -} diff --git a/sdk/dotnet/GameLift/Outputs/FleetContainerGroupsPerInstance.cs b/sdk/dotnet/GameLift/Outputs/FleetContainerGroupsPerInstance.cs deleted file mode 100644 index 03eeb6ede4..0000000000 --- a/sdk/dotnet/GameLift/Outputs/FleetContainerGroupsPerInstance.cs +++ /dev/null @@ -1,38 +0,0 @@ -// *** WARNING: this file was generated by pulumi. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.AwsNative.GameLift.Outputs -{ - - /// - /// The number of container groups per instance. - /// - [OutputType] - public sealed class FleetContainerGroupsPerInstance - { - /// - /// Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - /// - public readonly int? DesiredReplicaContainerGroupsPerInstance; - /// - /// GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - /// - public readonly int? MaxReplicaContainerGroupsPerInstance; - - [OutputConstructor] - private FleetContainerGroupsPerInstance( - int? desiredReplicaContainerGroupsPerInstance, - - int? maxReplicaContainerGroupsPerInstance) - { - DesiredReplicaContainerGroupsPerInstance = desiredReplicaContainerGroupsPerInstance; - MaxReplicaContainerGroupsPerInstance = maxReplicaContainerGroupsPerInstance; - } - } -} diff --git a/sdk/dotnet/IoTWireless/DeviceProfile.cs b/sdk/dotnet/IoTWireless/DeviceProfile.cs index 09b2cf4163..d9eecb1623 100644 --- a/sdk/dotnet/IoTWireless/DeviceProfile.cs +++ b/sdk/dotnet/IoTWireless/DeviceProfile.cs @@ -68,6 +68,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, + ReplaceOnChanges = + { + "loRaWan", + "name", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. diff --git a/sdk/dotnet/IoTWireless/Enums.cs b/sdk/dotnet/IoTWireless/Enums.cs index 637217cf99..1b65fe1c61 100644 --- a/sdk/dotnet/IoTWireless/Enums.cs +++ b/sdk/dotnet/IoTWireless/Enums.cs @@ -126,6 +126,70 @@ private TaskDefinitionType(string value) public override string ToString() => _value; } + /// + /// Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + /// + [EnumType] + public readonly struct WirelessDeviceApplicationType : IEquatable + { + private readonly string _value; + + private WirelessDeviceApplicationType(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static WirelessDeviceApplicationType SemtechGeolocation { get; } = new WirelessDeviceApplicationType("SemtechGeolocation"); + public static WirelessDeviceApplicationType SemtechGnss { get; } = new WirelessDeviceApplicationType("SemtechGNSS"); + public static WirelessDeviceApplicationType SemtechGnssng { get; } = new WirelessDeviceApplicationType("SemtechGNSSNG"); + public static WirelessDeviceApplicationType SemtechWiFi { get; } = new WirelessDeviceApplicationType("SemtechWiFi"); + + public static bool operator ==(WirelessDeviceApplicationType left, WirelessDeviceApplicationType right) => left.Equals(right); + public static bool operator !=(WirelessDeviceApplicationType left, WirelessDeviceApplicationType right) => !left.Equals(right); + + public static explicit operator string(WirelessDeviceApplicationType value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is WirelessDeviceApplicationType other && Equals(other); + public bool Equals(WirelessDeviceApplicationType other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + + /// + /// FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + /// + [EnumType] + public readonly struct WirelessDevicePositioning : IEquatable + { + private readonly string _value; + + private WirelessDevicePositioning(string value) + { + _value = value ?? throw new ArgumentNullException(nameof(value)); + } + + public static WirelessDevicePositioning Enabled { get; } = new WirelessDevicePositioning("Enabled"); + public static WirelessDevicePositioning Disabled { get; } = new WirelessDevicePositioning("Disabled"); + + public static bool operator ==(WirelessDevicePositioning left, WirelessDevicePositioning right) => left.Equals(right); + public static bool operator !=(WirelessDevicePositioning left, WirelessDevicePositioning right) => !left.Equals(right); + + public static explicit operator string(WirelessDevicePositioning value) => value._value; + + [EditorBrowsable(EditorBrowsableState.Never)] + public override bool Equals(object? obj) => obj is WirelessDevicePositioning other && Equals(other); + public bool Equals(WirelessDevicePositioning other) => string.Equals(_value, other._value, StringComparison.Ordinal); + + [EditorBrowsable(EditorBrowsableState.Never)] + public override int GetHashCode() => _value?.GetHashCode() ?? 0; + + public override string ToString() => _value; + } + /// /// Wireless device type, currently only Sidewalk and LoRa /// diff --git a/sdk/dotnet/IoTWireless/GetDeviceProfile.cs b/sdk/dotnet/IoTWireless/GetDeviceProfile.cs index 47f143179b..8b945d13f5 100644 --- a/sdk/dotnet/IoTWireless/GetDeviceProfile.cs +++ b/sdk/dotnet/IoTWireless/GetDeviceProfile.cs @@ -66,14 +66,6 @@ public sealed class GetDeviceProfileResult /// public readonly string? Id; /// - /// LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation - /// - public readonly Outputs.DeviceProfileLoRaWanDeviceProfile? LoRaWan; - /// - /// Name of service profile - /// - public readonly string? Name; - /// /// A list of key-value pairs that contain metadata for the device profile. /// public readonly ImmutableArray Tags; @@ -84,16 +76,10 @@ private GetDeviceProfileResult( string? id, - Outputs.DeviceProfileLoRaWanDeviceProfile? loRaWan, - - string? name, - ImmutableArray tags) { Arn = arn; Id = id; - LoRaWan = loRaWan; - Name = name; Tags = tags; } } diff --git a/sdk/dotnet/IoTWireless/GetNetworkAnalyzerConfiguration.cs b/sdk/dotnet/IoTWireless/GetNetworkAnalyzerConfiguration.cs index 51dc09de36..6db04f9817 100644 --- a/sdk/dotnet/IoTWireless/GetNetworkAnalyzerConfiguration.cs +++ b/sdk/dotnet/IoTWireless/GetNetworkAnalyzerConfiguration.cs @@ -66,6 +66,10 @@ public sealed class GetNetworkAnalyzerConfigurationResult /// public readonly string? Description; /// + /// An array of key-value pairs to apply to this resource. + /// + public readonly ImmutableArray Tags; + /// /// Trace content for your wireless gateway and wireless device resources /// public readonly Outputs.TraceContentProperties? TraceContent; @@ -84,6 +88,8 @@ private GetNetworkAnalyzerConfigurationResult( string? description, + ImmutableArray tags, + Outputs.TraceContentProperties? traceContent, ImmutableArray wirelessDevices, @@ -92,6 +98,7 @@ private GetNetworkAnalyzerConfigurationResult( { Arn = arn; Description = description; + Tags = tags; TraceContent = traceContent; WirelessDevices = wirelessDevices; WirelessGateways = wirelessGateways; diff --git a/sdk/dotnet/IoTWireless/GetServiceProfile.cs b/sdk/dotnet/IoTWireless/GetServiceProfile.cs index efbef9bdcc..dd2431f2d7 100644 --- a/sdk/dotnet/IoTWireless/GetServiceProfile.cs +++ b/sdk/dotnet/IoTWireless/GetServiceProfile.cs @@ -66,14 +66,6 @@ public sealed class GetServiceProfileResult /// public readonly string? Id; /// - /// LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation - /// - public readonly Outputs.ServiceProfileLoRaWanServiceProfile? LoRaWan; - /// - /// Name of service profile - /// - public readonly string? Name; - /// /// A list of key-value pairs that contain metadata for the service profile. /// public readonly ImmutableArray Tags; @@ -84,16 +76,10 @@ private GetServiceProfileResult( string? id, - Outputs.ServiceProfileLoRaWanServiceProfile? loRaWan, - - string? name, - ImmutableArray tags) { Arn = arn; Id = id; - LoRaWan = loRaWan; - Name = name; Tags = tags; } } diff --git a/sdk/dotnet/IoTWireless/GetWirelessDevice.cs b/sdk/dotnet/IoTWireless/GetWirelessDevice.cs index be0d3cd61b..68948f47a6 100644 --- a/sdk/dotnet/IoTWireless/GetWirelessDevice.cs +++ b/sdk/dotnet/IoTWireless/GetWirelessDevice.cs @@ -86,6 +86,10 @@ public sealed class GetWirelessDeviceResult /// public readonly string? Name; /// + /// FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + /// + public readonly Pulumi.AwsNative.IoTWireless.WirelessDevicePositioning? Positioning; + /// /// A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. /// public readonly ImmutableArray Tags; @@ -118,6 +122,8 @@ private GetWirelessDeviceResult( string? name, + Pulumi.AwsNative.IoTWireless.WirelessDevicePositioning? positioning, + ImmutableArray tags, string? thingArn, @@ -133,6 +139,7 @@ private GetWirelessDeviceResult( LastUplinkReceivedAt = lastUplinkReceivedAt; LoRaWan = loRaWan; Name = name; + Positioning = positioning; Tags = tags; ThingArn = thingArn; ThingName = thingName; diff --git a/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceApplicationArgs.cs b/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceApplicationArgs.cs new file mode 100644 index 0000000000..89f8f95039 --- /dev/null +++ b/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceApplicationArgs.cs @@ -0,0 +1,41 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.IoTWireless.Inputs +{ + + /// + /// LoRaWAN application configuration, which can be used to perform geolocation. + /// + public sealed class WirelessDeviceApplicationArgs : global::Pulumi.ResourceArgs + { + /// + /// The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + /// + [Input("destinationName")] + public Input? DestinationName { get; set; } + + /// + /// The Fport value. + /// + [Input("fPort")] + public Input? FPort { get; set; } + + /// + /// Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + /// + [Input("type")] + public Input? Type { get; set; } + + public WirelessDeviceApplicationArgs() + { + } + public static new WirelessDeviceApplicationArgs Empty => new WirelessDeviceApplicationArgs(); + } +} diff --git a/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceFPortsArgs.cs b/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceFPortsArgs.cs new file mode 100644 index 0000000000..24e28716d9 --- /dev/null +++ b/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceFPortsArgs.cs @@ -0,0 +1,32 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.IoTWireless.Inputs +{ + + public sealed class WirelessDeviceFPortsArgs : global::Pulumi.ResourceArgs + { + [Input("applications")] + private InputList? _applications; + + /// + /// A list of optional LoRaWAN application information, which can be used for geolocation. + /// + public InputList Applications + { + get => _applications ?? (_applications = new InputList()); + set => _applications = value; + } + + public WirelessDeviceFPortsArgs() + { + } + public static new WirelessDeviceFPortsArgs Empty => new WirelessDeviceFPortsArgs(); + } +} diff --git a/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceLoRaWanDeviceArgs.cs b/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceLoRaWanDeviceArgs.cs index cf8025a711..0587a7cfdc 100644 --- a/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceLoRaWanDeviceArgs.cs +++ b/sdk/dotnet/IoTWireless/Inputs/WirelessDeviceLoRaWanDeviceArgs.cs @@ -36,6 +36,12 @@ public sealed class WirelessDeviceLoRaWanDeviceArgs : global::Pulumi.ResourceArg [Input("deviceProfileId")] public Input? DeviceProfileId { get; set; } + /// + /// List of FPort assigned for different LoRaWAN application packages to use. + /// + [Input("fPorts")] + public Input? FPorts { get; set; } + /// /// OTAA device object for create APIs for v1.0.x /// diff --git a/sdk/dotnet/IoTWireless/NetworkAnalyzerConfiguration.cs b/sdk/dotnet/IoTWireless/NetworkAnalyzerConfiguration.cs index 8fd5feb969..de1747df79 100644 --- a/sdk/dotnet/IoTWireless/NetworkAnalyzerConfiguration.cs +++ b/sdk/dotnet/IoTWireless/NetworkAnalyzerConfiguration.cs @@ -37,7 +37,7 @@ public partial class NetworkAnalyzerConfiguration : global::Pulumi.CustomResourc /// An array of key-value pairs to apply to this resource. /// [Output("tags")] - public Output> Tags { get; private set; } = null!; + public Output> Tags { get; private set; } = null!; /// /// Trace content for your wireless gateway and wireless device resources @@ -83,7 +83,6 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? ReplaceOnChanges = { "name", - "tags[*]", }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); @@ -120,14 +119,14 @@ public sealed class NetworkAnalyzerConfigurationArgs : global::Pulumi.ResourceAr public Input? Name { get; set; } [Input("tags")] - private InputList? _tags; + private InputList? _tags; /// /// An array of key-value pairs to apply to this resource. /// - public InputList Tags + public InputList Tags { - get => _tags ?? (_tags = new InputList()); + get => _tags ?? (_tags = new InputList()); set => _tags = value; } diff --git a/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceApplication.cs b/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceApplication.cs new file mode 100644 index 0000000000..7057ce3e66 --- /dev/null +++ b/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceApplication.cs @@ -0,0 +1,45 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.IoTWireless.Outputs +{ + + /// + /// LoRaWAN application configuration, which can be used to perform geolocation. + /// + [OutputType] + public sealed class WirelessDeviceApplication + { + /// + /// The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + /// + public readonly string? DestinationName; + /// + /// The Fport value. + /// + public readonly int? FPort; + /// + /// Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + /// + public readonly Pulumi.AwsNative.IoTWireless.WirelessDeviceApplicationType? Type; + + [OutputConstructor] + private WirelessDeviceApplication( + string? destinationName, + + int? fPort, + + Pulumi.AwsNative.IoTWireless.WirelessDeviceApplicationType? type) + { + DestinationName = destinationName; + FPort = fPort; + Type = type; + } + } +} diff --git a/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceFPorts.cs b/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceFPorts.cs new file mode 100644 index 0000000000..ac399fc6f2 --- /dev/null +++ b/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceFPorts.cs @@ -0,0 +1,27 @@ +// *** WARNING: this file was generated by pulumi. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.AwsNative.IoTWireless.Outputs +{ + + [OutputType] + public sealed class WirelessDeviceFPorts + { + /// + /// A list of optional LoRaWAN application information, which can be used for geolocation. + /// + public readonly ImmutableArray Applications; + + [OutputConstructor] + private WirelessDeviceFPorts(ImmutableArray applications) + { + Applications = applications; + } + } +} diff --git a/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceLoRaWanDevice.cs b/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceLoRaWanDevice.cs index 8561bb09b6..08f2c84bff 100644 --- a/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceLoRaWanDevice.cs +++ b/sdk/dotnet/IoTWireless/Outputs/WirelessDeviceLoRaWanDevice.cs @@ -30,6 +30,10 @@ public sealed class WirelessDeviceLoRaWanDevice /// public readonly string? DeviceProfileId; /// + /// List of FPort assigned for different LoRaWAN application packages to use. + /// + public readonly Outputs.WirelessDeviceFPorts? FPorts; + /// /// OTAA device object for create APIs for v1.0.x /// public readonly Outputs.WirelessDeviceOtaaV10x? OtaaV10x; @@ -52,6 +56,8 @@ private WirelessDeviceLoRaWanDevice( string? deviceProfileId, + Outputs.WirelessDeviceFPorts? fPorts, + Outputs.WirelessDeviceOtaaV10x? otaaV10x, Outputs.WirelessDeviceOtaaV11? otaaV11, @@ -62,6 +68,7 @@ private WirelessDeviceLoRaWanDevice( AbpV11 = abpV11; DevEui = devEui; DeviceProfileId = deviceProfileId; + FPorts = fPorts; OtaaV10x = otaaV10x; OtaaV11 = otaaV11; ServiceProfileId = serviceProfileId; diff --git a/sdk/dotnet/IoTWireless/ServiceProfile.cs b/sdk/dotnet/IoTWireless/ServiceProfile.cs index 3166889680..fadcf06a36 100644 --- a/sdk/dotnet/IoTWireless/ServiceProfile.cs +++ b/sdk/dotnet/IoTWireless/ServiceProfile.cs @@ -68,6 +68,11 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? var defaultOptions = new CustomResourceOptions { Version = Utilities.Version, + ReplaceOnChanges = + { + "loRaWan", + "name", + }, }; var merged = CustomResourceOptions.Merge(defaultOptions, options); // Override the ID if one was specified for consistency with other language SDKs. diff --git a/sdk/dotnet/IoTWireless/WirelessDevice.cs b/sdk/dotnet/IoTWireless/WirelessDevice.cs index 85998b16e3..25911ab27c 100644 --- a/sdk/dotnet/IoTWireless/WirelessDevice.cs +++ b/sdk/dotnet/IoTWireless/WirelessDevice.cs @@ -57,6 +57,12 @@ public partial class WirelessDevice : global::Pulumi.CustomResource [Output("name")] public Output Name { get; private set; } = null!; + /// + /// FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + /// + [Output("positioning")] + public Output Positioning { get; private set; } = null!; + /// /// A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. /// @@ -156,6 +162,12 @@ public sealed class WirelessDeviceArgs : global::Pulumi.ResourceArgs [Input("name")] public Input? Name { get; set; } + /// + /// FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + /// + [Input("positioning")] + public Input? Positioning { get; set; } + [Input("tags")] private InputList? _tags; diff --git a/sdk/dotnet/Lambda/Function.cs b/sdk/dotnet/Lambda/Function.cs index add75fbe90..074af7b008 100644 --- a/sdk/dotnet/Lambda/Function.cs +++ b/sdk/dotnet/Lambda/Function.cs @@ -11,9 +11,10 @@ namespace Pulumi.AwsNative.Lambda { /// /// The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - /// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - /// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + /// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + /// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. /// You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + /// When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. /// Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. /// For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* /// @@ -335,7 +336,10 @@ public partial class Function : global::Pulumi.CustomResource public Output Arn { get; private set; } = null!; /// - /// The code for the function. + /// The code for the function. You can define your function code in multiple ways: + /// + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + /// + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + /// + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. /// [Output("code")] public Output Code { get; private set; } = null!; @@ -397,7 +401,7 @@ public partial class Function : global::Pulumi.CustomResource public Output ImageConfig { get; private set; } = null!; /// - /// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + /// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. /// [Output("kmsKeyArn")] public Output KmsKeyArn { get; private set; } = null!; @@ -428,10 +432,8 @@ public partial class Function : global::Pulumi.CustomResource /// /// The status of your function's recursive loop detection configuration. - /// - /// When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - /// - /// When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + /// When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + /// When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. /// [Output("recursiveLoop")] public Output RecursiveLoop { get; private set; } = null!; @@ -473,6 +475,7 @@ public partial class Function : global::Pulumi.CustomResource /// /// A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + /// You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. /// [Output("tags")] public Output> Tags { get; private set; } = null!; @@ -557,7 +560,10 @@ public InputList Architecture } /// - /// The code for the function. + /// The code for the function. You can define your function code in multiple ways: + /// + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + /// + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + /// + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. /// [Input("code", required: true)] public Input Code { get; set; } = null!; @@ -625,7 +631,7 @@ public InputList FileSystemConfigs public Input? ImageConfig { get; set; } /// - /// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + /// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. /// [Input("kmsKeyArn")] public Input? KmsKeyArn { get; set; } @@ -662,10 +668,8 @@ public InputList Layers /// /// The status of your function's recursive loop detection configuration. - /// - /// When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - /// - /// When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + /// When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + /// When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. /// [Input("recursiveLoop")] public Input? RecursiveLoop { get; set; } @@ -707,6 +711,7 @@ public InputList Layers /// /// A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + /// You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. /// public InputList Tags { diff --git a/sdk/dotnet/Lambda/GetFunction.cs b/sdk/dotnet/Lambda/GetFunction.cs index af1bf9f283..fe4be9b077 100644 --- a/sdk/dotnet/Lambda/GetFunction.cs +++ b/sdk/dotnet/Lambda/GetFunction.cs @@ -13,9 +13,10 @@ public static class GetFunction { /// /// The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - /// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - /// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + /// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + /// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. /// You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + /// When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. /// Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. /// For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* /// @@ -24,9 +25,10 @@ public static Task InvokeAsync(GetFunctionArgs args, InvokeOp /// /// The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - /// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - /// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + /// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + /// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. /// You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + /// When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. /// Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. /// For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* /// @@ -111,7 +113,7 @@ public sealed class GetFunctionResult /// public readonly Outputs.FunctionImageConfig? ImageConfig; /// - /// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + /// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. /// public readonly string? KmsKeyArn; /// @@ -132,10 +134,8 @@ public sealed class GetFunctionResult public readonly Pulumi.AwsNative.Lambda.FunctionPackageType? PackageType; /// /// The status of your function's recursive loop detection configuration. - /// - /// When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - /// - /// When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + /// When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + /// When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. /// public readonly Pulumi.AwsNative.Lambda.FunctionRecursiveLoop? RecursiveLoop; /// @@ -159,6 +159,7 @@ public sealed class GetFunctionResult public readonly Outputs.FunctionSnapStartResponse? SnapStartResponse; /// /// A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + /// You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. /// public readonly ImmutableArray Tags; /// diff --git a/sdk/dotnet/Lambda/Inputs/FunctionEnvironmentArgs.cs b/sdk/dotnet/Lambda/Inputs/FunctionEnvironmentArgs.cs index 5368f3ddab..0f9cdbc6a6 100644 --- a/sdk/dotnet/Lambda/Inputs/FunctionEnvironmentArgs.cs +++ b/sdk/dotnet/Lambda/Inputs/FunctionEnvironmentArgs.cs @@ -20,6 +20,7 @@ public sealed class FunctionEnvironmentArgs : global::Pulumi.ResourceArgs /// /// Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + /// If the value of the environment variable is a time or a duration, enclose the value in quotes. /// public InputMap Variables { diff --git a/sdk/dotnet/Lambda/Outputs/FunctionEnvironment.cs b/sdk/dotnet/Lambda/Outputs/FunctionEnvironment.cs index c6a4b6f3cf..12a0aaa7a7 100644 --- a/sdk/dotnet/Lambda/Outputs/FunctionEnvironment.cs +++ b/sdk/dotnet/Lambda/Outputs/FunctionEnvironment.cs @@ -18,6 +18,7 @@ public sealed class FunctionEnvironment { /// /// Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + /// If the value of the environment variable is a time or a duration, enclose the value in quotes. /// public readonly ImmutableDictionary? Variables; diff --git a/sdk/dotnet/Location/Inputs/MapConfigurationArgs.cs b/sdk/dotnet/Location/Inputs/MapConfigurationArgs.cs index 8f0d85fc46..5105260f6b 100644 --- a/sdk/dotnet/Location/Inputs/MapConfigurationArgs.cs +++ b/sdk/dotnet/Location/Inputs/MapConfigurationArgs.cs @@ -35,7 +35,7 @@ public InputList CustomLayers /// /// Specifies the map style selected from an available data provider. /// - /// Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + /// Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : /// /// - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. /// - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -44,7 +44,7 @@ public InputList CustomLayers /// - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. /// - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. /// - /// Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + /// Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : /// /// - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. /// @@ -56,14 +56,14 @@ public InputList CustomLayers /// /// > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. /// - /// Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + /// Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : /// /// - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. /// - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. /// - /// > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + /// > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . /// - /// Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + /// Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : /// /// - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. /// - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. diff --git a/sdk/dotnet/Location/Outputs/MapConfiguration.cs b/sdk/dotnet/Location/Outputs/MapConfiguration.cs index 233ea89720..5efdb5f7cf 100644 --- a/sdk/dotnet/Location/Outputs/MapConfiguration.cs +++ b/sdk/dotnet/Location/Outputs/MapConfiguration.cs @@ -26,7 +26,7 @@ public sealed class MapConfiguration /// /// Specifies the map style selected from an available data provider. /// - /// Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + /// Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : /// /// - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. /// - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -35,7 +35,7 @@ public sealed class MapConfiguration /// - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. /// - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. /// - /// Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + /// Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : /// /// - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. /// @@ -47,14 +47,14 @@ public sealed class MapConfiguration /// /// > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. /// - /// Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + /// Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : /// /// - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. /// - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. /// - /// > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + /// > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . /// - /// Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + /// Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : /// /// - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. /// - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. diff --git a/sdk/dotnet/Location/PlaceIndex.cs b/sdk/dotnet/Location/PlaceIndex.cs index 9ff55a3e59..e477376401 100644 --- a/sdk/dotnet/Location/PlaceIndex.cs +++ b/sdk/dotnet/Location/PlaceIndex.cs @@ -36,13 +36,13 @@ public partial class PlaceIndex : global::Pulumi.CustomResource /// /// Valid values include: /// - /// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - /// - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - /// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + /// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + /// - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + /// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . /// /// > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. /// - /// For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + /// For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . /// [Output("dataSource")] public Output DataSource { get; private set; } = null!; @@ -156,13 +156,13 @@ public sealed class PlaceIndexArgs : global::Pulumi.ResourceArgs /// /// Valid values include: /// - /// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - /// - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - /// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + /// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + /// - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + /// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . /// /// > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. /// - /// For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + /// For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . /// [Input("dataSource", required: true)] public Input DataSource { get; set; } = null!; diff --git a/sdk/dotnet/Location/RouteCalculator.cs b/sdk/dotnet/Location/RouteCalculator.cs index 5c5743a67d..0ba7357f4d 100644 --- a/sdk/dotnet/Location/RouteCalculator.cs +++ b/sdk/dotnet/Location/RouteCalculator.cs @@ -56,13 +56,13 @@ public partial class RouteCalculator : global::Pulumi.CustomResource /// /// Valid values include: /// - /// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + /// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . /// /// Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - /// - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - /// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + /// - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + /// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . /// - /// For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + /// For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . /// [Output("dataSource")] public Output DataSource { get; private set; } = null!; @@ -162,13 +162,13 @@ public sealed class RouteCalculatorArgs : global::Pulumi.ResourceArgs /// /// Valid values include: /// - /// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + /// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . /// /// Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - /// - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - /// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + /// - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + /// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . /// - /// For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + /// For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . /// [Input("dataSource", required: true)] public Input DataSource { get; set; } = null!; diff --git a/sdk/dotnet/QuickSight/Inputs/DataSourceOAuthParametersArgs.cs b/sdk/dotnet/QuickSight/Inputs/DataSourceOAuthParametersArgs.cs index c92611af37..d38bed890a 100644 --- a/sdk/dotnet/QuickSight/Inputs/DataSourceOAuthParametersArgs.cs +++ b/sdk/dotnet/QuickSight/Inputs/DataSourceOAuthParametersArgs.cs @@ -12,15 +12,24 @@ namespace Pulumi.AwsNative.QuickSight.Inputs public sealed class DataSourceOAuthParametersArgs : global::Pulumi.ResourceArgs { + /// + /// The resource uri of the identity provider. + /// [Input("identityProviderResourceUri")] public Input? IdentityProviderResourceUri { get; set; } [Input("identityProviderVpcConnectionProperties")] public Input? IdentityProviderVpcConnectionProperties { get; set; } + /// + /// The OAuth scope. + /// [Input("oAuthScope")] public Input? OAuthScope { get; set; } + /// + /// The token endpoint URL of the identity provider. + /// [Input("tokenProviderUrl", required: true)] public Input TokenProviderUrl { get; set; } = null!; diff --git a/sdk/dotnet/QuickSight/Inputs/DataSourceSnowflakeParametersArgs.cs b/sdk/dotnet/QuickSight/Inputs/DataSourceSnowflakeParametersArgs.cs index f6ca648d6a..8d6602a6d2 100644 --- a/sdk/dotnet/QuickSight/Inputs/DataSourceSnowflakeParametersArgs.cs +++ b/sdk/dotnet/QuickSight/Inputs/DataSourceSnowflakeParametersArgs.cs @@ -15,6 +15,9 @@ namespace Pulumi.AwsNative.QuickSight.Inputs /// public sealed class DataSourceSnowflakeParametersArgs : global::Pulumi.ResourceArgs { + /// + /// The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + /// [Input("authenticationType")] public Input? AuthenticationType { get; set; } @@ -24,6 +27,9 @@ public sealed class DataSourceSnowflakeParametersArgs : global::Pulumi.ResourceA [Input("database", required: true)] public Input Database { get; set; } = null!; + /// + /// The database access control role. + /// [Input("databaseAccessControlRole")] public Input? DatabaseAccessControlRole { get; set; } @@ -33,6 +39,9 @@ public sealed class DataSourceSnowflakeParametersArgs : global::Pulumi.ResourceA [Input("host", required: true)] public Input Host { get; set; } = null!; + /// + /// An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. + /// [Input("oAuthParameters")] public Input? OAuthParameters { get; set; } diff --git a/sdk/dotnet/QuickSight/Inputs/DataSourceStarburstParametersArgs.cs b/sdk/dotnet/QuickSight/Inputs/DataSourceStarburstParametersArgs.cs index 64399255e6..8bc5f3ae41 100644 --- a/sdk/dotnet/QuickSight/Inputs/DataSourceStarburstParametersArgs.cs +++ b/sdk/dotnet/QuickSight/Inputs/DataSourceStarburstParametersArgs.cs @@ -15,6 +15,9 @@ namespace Pulumi.AwsNative.QuickSight.Inputs /// public sealed class DataSourceStarburstParametersArgs : global::Pulumi.ResourceArgs { + /// + /// The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + /// [Input("authenticationType")] public Input? AuthenticationType { get; set; } @@ -24,6 +27,9 @@ public sealed class DataSourceStarburstParametersArgs : global::Pulumi.ResourceA [Input("catalog", required: true)] public Input Catalog { get; set; } = null!; + /// + /// The database access control role. + /// [Input("databaseAccessControlRole")] public Input? DatabaseAccessControlRole { get; set; } @@ -33,6 +39,9 @@ public sealed class DataSourceStarburstParametersArgs : global::Pulumi.ResourceA [Input("host", required: true)] public Input Host { get; set; } = null!; + /// + /// An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. + /// [Input("oAuthParameters")] public Input? OAuthParameters { get; set; } diff --git a/sdk/dotnet/QuickSight/Outputs/DataSourceOAuthParameters.cs b/sdk/dotnet/QuickSight/Outputs/DataSourceOAuthParameters.cs index e1744db92b..581b8a67fa 100644 --- a/sdk/dotnet/QuickSight/Outputs/DataSourceOAuthParameters.cs +++ b/sdk/dotnet/QuickSight/Outputs/DataSourceOAuthParameters.cs @@ -13,9 +13,18 @@ namespace Pulumi.AwsNative.QuickSight.Outputs [OutputType] public sealed class DataSourceOAuthParameters { + /// + /// The resource uri of the identity provider. + /// public readonly string? IdentityProviderResourceUri; public readonly Outputs.DataSourceVpcConnectionProperties? IdentityProviderVpcConnectionProperties; + /// + /// The OAuth scope. + /// public readonly string? OAuthScope; + /// + /// The token endpoint URL of the identity provider. + /// public readonly string TokenProviderUrl; [OutputConstructor] diff --git a/sdk/dotnet/QuickSight/Outputs/DataSourceSnowflakeParameters.cs b/sdk/dotnet/QuickSight/Outputs/DataSourceSnowflakeParameters.cs index 03d06bd034..d73eff1628 100644 --- a/sdk/dotnet/QuickSight/Outputs/DataSourceSnowflakeParameters.cs +++ b/sdk/dotnet/QuickSight/Outputs/DataSourceSnowflakeParameters.cs @@ -16,16 +16,25 @@ namespace Pulumi.AwsNative.QuickSight.Outputs [OutputType] public sealed class DataSourceSnowflakeParameters { + /// + /// The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + /// public readonly Pulumi.AwsNative.QuickSight.DataSourceAuthenticationType? AuthenticationType; /// /// <p>Database.</p> /// public readonly string Database; + /// + /// The database access control role. + /// public readonly string? DatabaseAccessControlRole; /// /// <p>Host.</p> /// public readonly string Host; + /// + /// An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. + /// public readonly Outputs.DataSourceOAuthParameters? OAuthParameters; /// /// <p>Warehouse.</p> diff --git a/sdk/dotnet/QuickSight/Outputs/DataSourceStarburstParameters.cs b/sdk/dotnet/QuickSight/Outputs/DataSourceStarburstParameters.cs index 2a56642a56..cdd70db3e2 100644 --- a/sdk/dotnet/QuickSight/Outputs/DataSourceStarburstParameters.cs +++ b/sdk/dotnet/QuickSight/Outputs/DataSourceStarburstParameters.cs @@ -16,16 +16,25 @@ namespace Pulumi.AwsNative.QuickSight.Outputs [OutputType] public sealed class DataSourceStarburstParameters { + /// + /// The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + /// public readonly Pulumi.AwsNative.QuickSight.DataSourceAuthenticationType? AuthenticationType; /// /// <p>The catalog name for the Starburst data source.</p> /// public readonly string Catalog; + /// + /// The database access control role. + /// public readonly string? DatabaseAccessControlRole; /// /// <p>The host name of the Starburst data source.</p> /// public readonly string Host; + /// + /// An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. + /// public readonly Outputs.DataSourceOAuthParameters? OAuthParameters; /// /// <p>The port for the Starburst data source.</p> diff --git a/sdk/go/aws/applicationinsights/application.go b/sdk/go/aws/applicationinsights/application.go index 52111c255d..96c23f92de 100644 --- a/sdk/go/aws/applicationinsights/application.go +++ b/sdk/go/aws/applicationinsights/application.go @@ -39,6 +39,8 @@ type Application struct { OpsItemSnsTopicArn pulumi.StringPtrOutput `pulumi:"opsItemSnsTopicArn"` // The name of the resource group. ResourceGroupName pulumi.StringOutput `pulumi:"resourceGroupName"` + // Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + SnsNotificationArn pulumi.StringPtrOutput `pulumi:"snsNotificationArn"` // The tags of Application Insights application. Tags aws.TagArrayOutput `pulumi:"tags"` } @@ -111,6 +113,8 @@ type applicationArgs struct { OpsItemSnsTopicArn *string `pulumi:"opsItemSnsTopicArn"` // The name of the resource group. ResourceGroupName string `pulumi:"resourceGroupName"` + // Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + SnsNotificationArn *string `pulumi:"snsNotificationArn"` // The tags of Application Insights application. Tags []aws.Tag `pulumi:"tags"` } @@ -137,6 +141,8 @@ type ApplicationArgs struct { OpsItemSnsTopicArn pulumi.StringPtrInput // The name of the resource group. ResourceGroupName pulumi.StringInput + // Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + SnsNotificationArn pulumi.StringPtrInput // The tags of Application Insights application. Tags aws.TagArrayInput } @@ -235,6 +241,11 @@ func (o ApplicationOutput) ResourceGroupName() pulumi.StringOutput { return o.ApplyT(func(v *Application) pulumi.StringOutput { return v.ResourceGroupName }).(pulumi.StringOutput) } +// Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. +func (o ApplicationOutput) SnsNotificationArn() pulumi.StringPtrOutput { + return o.ApplyT(func(v *Application) pulumi.StringPtrOutput { return v.SnsNotificationArn }).(pulumi.StringPtrOutput) +} + // The tags of Application Insights application. func (o ApplicationOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *Application) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) diff --git a/sdk/go/aws/autoscaling/autoScalingGroup.go b/sdk/go/aws/autoscaling/autoScalingGroup.go index a56eed3088..836775ff28 100644 --- a/sdk/go/aws/autoscaling/autoScalingGroup.go +++ b/sdk/go/aws/autoscaling/autoScalingGroup.go @@ -23,7 +23,8 @@ type AutoScalingGroup struct { // The name of the Auto Scaling group. This name must be unique per Region per account. // The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters. // You cannot use a colon (:) in the name. - AutoScalingGroupName pulumi.StringPtrOutput `pulumi:"autoScalingGroupName"` + AutoScalingGroupName pulumi.StringPtrOutput `pulumi:"autoScalingGroupName"` + // The instance capacity distribution across Availability Zones. AvailabilityZoneDistribution AutoScalingGroupAvailabilityZoneDistributionPtrOutput `pulumi:"availabilityZoneDistribution"` // A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"` @@ -163,7 +164,8 @@ type autoScalingGroupArgs struct { // The name of the Auto Scaling group. This name must be unique per Region per account. // The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters. // You cannot use a colon (:) in the name. - AutoScalingGroupName *string `pulumi:"autoScalingGroupName"` + AutoScalingGroupName *string `pulumi:"autoScalingGroupName"` + // The instance capacity distribution across Availability Zones. AvailabilityZoneDistribution *AutoScalingGroupAvailabilityZoneDistribution `pulumi:"availabilityZoneDistribution"` // A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. AvailabilityZones []string `pulumi:"availabilityZones"` @@ -254,7 +256,8 @@ type AutoScalingGroupArgs struct { // The name of the Auto Scaling group. This name must be unique per Region per account. // The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters. // You cannot use a colon (:) in the name. - AutoScalingGroupName pulumi.StringPtrInput + AutoScalingGroupName pulumi.StringPtrInput + // The instance capacity distribution across Availability Zones. AvailabilityZoneDistribution AutoScalingGroupAvailabilityZoneDistributionPtrInput // A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. AvailabilityZones pulumi.StringArrayInput @@ -385,6 +388,7 @@ func (o AutoScalingGroupOutput) AutoScalingGroupName() pulumi.StringPtrOutput { return o.ApplyT(func(v *AutoScalingGroup) pulumi.StringPtrOutput { return v.AutoScalingGroupName }).(pulumi.StringPtrOutput) } +// The instance capacity distribution across Availability Zones. func (o AutoScalingGroupOutput) AvailabilityZoneDistribution() AutoScalingGroupAvailabilityZoneDistributionPtrOutput { return o.ApplyT(func(v *AutoScalingGroup) AutoScalingGroupAvailabilityZoneDistributionPtrOutput { return v.AvailabilityZoneDistribution diff --git a/sdk/go/aws/autoscaling/getAutoScalingGroup.go b/sdk/go/aws/autoscaling/getAutoScalingGroup.go index c9b66a9a71..d16943f6a7 100644 --- a/sdk/go/aws/autoscaling/getAutoScalingGroup.go +++ b/sdk/go/aws/autoscaling/getAutoScalingGroup.go @@ -34,6 +34,7 @@ type LookupAutoScalingGroupArgs struct { } type LookupAutoScalingGroupResult struct { + // The instance capacity distribution across Availability Zones. AvailabilityZoneDistribution *AutoScalingGroupAvailabilityZoneDistribution `pulumi:"availabilityZoneDistribution"` // A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. AvailabilityZones []string `pulumi:"availabilityZones"` @@ -160,6 +161,7 @@ func (o LookupAutoScalingGroupResultOutput) ToLookupAutoScalingGroupResultOutput return o } +// The instance capacity distribution across Availability Zones. func (o LookupAutoScalingGroupResultOutput) AvailabilityZoneDistribution() AutoScalingGroupAvailabilityZoneDistributionPtrOutput { return o.ApplyT(func(v LookupAutoScalingGroupResult) *AutoScalingGroupAvailabilityZoneDistribution { return v.AvailabilityZoneDistribution diff --git a/sdk/go/aws/autoscaling/pulumiEnums.go b/sdk/go/aws/autoscaling/pulumiEnums.go index dea325b600..fe825e52f9 100644 --- a/sdk/go/aws/autoscaling/pulumiEnums.go +++ b/sdk/go/aws/autoscaling/pulumiEnums.go @@ -10,6 +10,10 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) +// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . +// +// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. +// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. type AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy string const ( diff --git a/sdk/go/aws/autoscaling/pulumiTypes.go b/sdk/go/aws/autoscaling/pulumiTypes.go index 34f74bbd84..95ea37b6c8 100644 --- a/sdk/go/aws/autoscaling/pulumiTypes.go +++ b/sdk/go/aws/autoscaling/pulumiTypes.go @@ -332,6 +332,10 @@ func (o AutoScalingGroupAcceleratorTotalMemoryMiBRequestPtrOutput) Min() pulumi. } type AutoScalingGroupAvailabilityZoneDistribution struct { + // If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + // + // - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + // - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. CapacityDistributionStrategy *AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy `pulumi:"capacityDistributionStrategy"` } @@ -347,6 +351,10 @@ type AutoScalingGroupAvailabilityZoneDistributionInput interface { } type AutoScalingGroupAvailabilityZoneDistributionArgs struct { + // If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + // + // - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + // - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. CapacityDistributionStrategy AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategyPtrInput `pulumi:"capacityDistributionStrategy"` } @@ -427,6 +435,10 @@ func (o AutoScalingGroupAvailabilityZoneDistributionOutput) ToAutoScalingGroupAv }).(AutoScalingGroupAvailabilityZoneDistributionPtrOutput) } +// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . +// +// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. +// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. func (o AutoScalingGroupAvailabilityZoneDistributionOutput) CapacityDistributionStrategy() AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategyPtrOutput { return o.ApplyT(func(v AutoScalingGroupAvailabilityZoneDistribution) *AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy { return v.CapacityDistributionStrategy @@ -457,6 +469,10 @@ func (o AutoScalingGroupAvailabilityZoneDistributionPtrOutput) Elem() AutoScalin }).(AutoScalingGroupAvailabilityZoneDistributionOutput) } +// If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . +// +// - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. +// - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. func (o AutoScalingGroupAvailabilityZoneDistributionPtrOutput) CapacityDistributionStrategy() AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategyPtrOutput { return o.ApplyT(func(v *AutoScalingGroupAvailabilityZoneDistribution) *AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy { if v == nil { diff --git a/sdk/go/aws/cleanrooms/collaboration.go b/sdk/go/aws/cleanrooms/collaboration.go index 35e8616e0e..732a9febbc 100644 --- a/sdk/go/aws/cleanrooms/collaboration.go +++ b/sdk/go/aws/cleanrooms/collaboration.go @@ -17,6 +17,8 @@ import ( type Collaboration struct { pulumi.CustomResourceState + // The analytics engine for the collaboration. + AnalyticsEngine CollaborationAnalyticsEnginePtrOutput `pulumi:"analyticsEngine"` // Returns the Amazon Resource Name (ARN) of the specified collaboration. // // Example: `arn:aws:cleanrooms:us-east-1:111122223333:collaboration/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111` @@ -70,6 +72,7 @@ func NewCollaboration(ctx *pulumi.Context, return nil, errors.New("invalid value for required argument 'QueryLogStatus'") } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "analyticsEngine", "creatorDisplayName", "creatorMemberAbilities[*]", "creatorPaymentConfiguration", @@ -111,6 +114,8 @@ func (CollaborationState) ElementType() reflect.Type { } type collaborationArgs struct { + // The analytics engine for the collaboration. + AnalyticsEngine *CollaborationAnalyticsEngine `pulumi:"analyticsEngine"` // A display name of the collaboration creator. CreatorDisplayName string `pulumi:"creatorDisplayName"` // The abilities granted to the collaboration creator. @@ -135,6 +140,8 @@ type collaborationArgs struct { // The set of arguments for constructing a Collaboration resource. type CollaborationArgs struct { + // The analytics engine for the collaboration. + AnalyticsEngine CollaborationAnalyticsEnginePtrInput // A display name of the collaboration creator. CreatorDisplayName pulumi.StringInput // The abilities granted to the collaboration creator. @@ -194,6 +201,11 @@ func (o CollaborationOutput) ToCollaborationOutputWithContext(ctx context.Contex return o } +// The analytics engine for the collaboration. +func (o CollaborationOutput) AnalyticsEngine() CollaborationAnalyticsEnginePtrOutput { + return o.ApplyT(func(v *Collaboration) CollaborationAnalyticsEnginePtrOutput { return v.AnalyticsEngine }).(CollaborationAnalyticsEnginePtrOutput) +} + // Returns the Amazon Resource Name (ARN) of the specified collaboration. // // Example: `arn:aws:cleanrooms:us-east-1:111122223333:collaboration/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111` diff --git a/sdk/go/aws/cleanrooms/getIdNamespaceAssociation.go b/sdk/go/aws/cleanrooms/getIdNamespaceAssociation.go index fd3ff90f97..f45e309f0b 100644 --- a/sdk/go/aws/cleanrooms/getIdNamespaceAssociation.go +++ b/sdk/go/aws/cleanrooms/getIdNamespaceAssociation.go @@ -44,7 +44,8 @@ type LookupIdNamespaceAssociationResult struct { // The Amazon Resource Name (ARN) of the membership resource for this ID namespace association. MembershipArn *string `pulumi:"membershipArn"` // The name of this ID namespace association. - Name *string `pulumi:"name"` + Name *string `pulumi:"name"` + // An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. Tags []aws.Tag `pulumi:"tags"` } @@ -137,6 +138,7 @@ func (o LookupIdNamespaceAssociationResultOutput) Name() pulumi.StringPtrOutput return o.ApplyT(func(v LookupIdNamespaceAssociationResult) *string { return v.Name }).(pulumi.StringPtrOutput) } +// An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. func (o LookupIdNamespaceAssociationResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupIdNamespaceAssociationResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/cleanrooms/idNamespaceAssociation.go b/sdk/go/aws/cleanrooms/idNamespaceAssociation.go index 45675e51a3..647053e316 100644 --- a/sdk/go/aws/cleanrooms/idNamespaceAssociation.go +++ b/sdk/go/aws/cleanrooms/idNamespaceAssociation.go @@ -36,7 +36,8 @@ type IdNamespaceAssociation struct { MembershipIdentifier pulumi.StringOutput `pulumi:"membershipIdentifier"` // The name of this ID namespace association. Name pulumi.StringOutput `pulumi:"name"` - Tags aws.TagArrayOutput `pulumi:"tags"` + // An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + Tags aws.TagArrayOutput `pulumi:"tags"` } // NewIdNamespaceAssociation registers a new resource with the given unique name, arguments, and options. @@ -99,7 +100,8 @@ type idNamespaceAssociationArgs struct { // The unique identifier of the membership that contains the ID namespace association. MembershipIdentifier string `pulumi:"membershipIdentifier"` // The name of this ID namespace association. - Name *string `pulumi:"name"` + Name *string `pulumi:"name"` + // An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. Tags []aws.Tag `pulumi:"tags"` } @@ -115,6 +117,7 @@ type IdNamespaceAssociationArgs struct { MembershipIdentifier pulumi.StringInput // The name of this ID namespace association. Name pulumi.StringPtrInput + // An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. Tags aws.TagArrayInput } @@ -213,6 +216,7 @@ func (o IdNamespaceAssociationOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *IdNamespaceAssociation) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } +// An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. func (o IdNamespaceAssociationOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *IdNamespaceAssociation) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/cleanrooms/pulumiEnums.go b/sdk/go/aws/cleanrooms/pulumiEnums.go index 9b6e7d4e91..5655522c66 100644 --- a/sdk/go/aws/cleanrooms/pulumiEnums.go +++ b/sdk/go/aws/cleanrooms/pulumiEnums.go @@ -29,6 +29,19 @@ const ( AnalysisTemplateAnalysisParameterTypeTime = AnalysisTemplateAnalysisParameterType("TIME") AnalysisTemplateAnalysisParameterTypeTimetz = AnalysisTemplateAnalysisParameterType("TIMETZ") AnalysisTemplateAnalysisParameterTypeVarbyte = AnalysisTemplateAnalysisParameterType("VARBYTE") + AnalysisTemplateAnalysisParameterTypeBinary = AnalysisTemplateAnalysisParameterType("BINARY") + AnalysisTemplateAnalysisParameterTypeByte = AnalysisTemplateAnalysisParameterType("BYTE") + AnalysisTemplateAnalysisParameterTypeCharacter = AnalysisTemplateAnalysisParameterType("CHARACTER") + AnalysisTemplateAnalysisParameterTypeDouble = AnalysisTemplateAnalysisParameterType("DOUBLE") + AnalysisTemplateAnalysisParameterTypeFloat = AnalysisTemplateAnalysisParameterType("FLOAT") + AnalysisTemplateAnalysisParameterTypeInt = AnalysisTemplateAnalysisParameterType("INT") + AnalysisTemplateAnalysisParameterTypeLong = AnalysisTemplateAnalysisParameterType("LONG") + AnalysisTemplateAnalysisParameterTypeNumeric = AnalysisTemplateAnalysisParameterType("NUMERIC") + AnalysisTemplateAnalysisParameterTypeShort = AnalysisTemplateAnalysisParameterType("SHORT") + AnalysisTemplateAnalysisParameterTypeString = AnalysisTemplateAnalysisParameterType("STRING") + AnalysisTemplateAnalysisParameterTypeTimestampLtz = AnalysisTemplateAnalysisParameterType("TIMESTAMP_LTZ") + AnalysisTemplateAnalysisParameterTypeTimestampNtz = AnalysisTemplateAnalysisParameterType("TIMESTAMP_NTZ") + AnalysisTemplateAnalysisParameterTypeTinyint = AnalysisTemplateAnalysisParameterType("TINYINT") ) func (AnalysisTemplateAnalysisParameterType) ElementType() reflect.Type { @@ -168,6 +181,19 @@ func (o AnalysisTemplateAnalysisParameterTypePtrOutput) ToStringPtrOutputWithCon // AnalysisTemplateAnalysisParameterTypeTime // AnalysisTemplateAnalysisParameterTypeTimetz // AnalysisTemplateAnalysisParameterTypeVarbyte +// AnalysisTemplateAnalysisParameterTypeBinary +// AnalysisTemplateAnalysisParameterTypeByte +// AnalysisTemplateAnalysisParameterTypeCharacter +// AnalysisTemplateAnalysisParameterTypeDouble +// AnalysisTemplateAnalysisParameterTypeFloat +// AnalysisTemplateAnalysisParameterTypeInt +// AnalysisTemplateAnalysisParameterTypeLong +// AnalysisTemplateAnalysisParameterTypeNumeric +// AnalysisTemplateAnalysisParameterTypeShort +// AnalysisTemplateAnalysisParameterTypeString +// AnalysisTemplateAnalysisParameterTypeTimestampLtz +// AnalysisTemplateAnalysisParameterTypeTimestampNtz +// AnalysisTemplateAnalysisParameterTypeTinyint type AnalysisTemplateAnalysisParameterTypeInput interface { pulumi.Input @@ -366,6 +392,171 @@ func (in *analysisTemplateFormatPtr) ToAnalysisTemplateFormatPtrOutputWithContex return pulumi.ToOutputWithContext(ctx, in).(AnalysisTemplateFormatPtrOutput) } +type CollaborationAnalyticsEngine string + +const ( + CollaborationAnalyticsEngineCleanRoomsSql = CollaborationAnalyticsEngine("CLEAN_ROOMS_SQL") + CollaborationAnalyticsEngineSpark = CollaborationAnalyticsEngine("SPARK") +) + +func (CollaborationAnalyticsEngine) ElementType() reflect.Type { + return reflect.TypeOf((*CollaborationAnalyticsEngine)(nil)).Elem() +} + +func (e CollaborationAnalyticsEngine) ToCollaborationAnalyticsEngineOutput() CollaborationAnalyticsEngineOutput { + return pulumi.ToOutput(e).(CollaborationAnalyticsEngineOutput) +} + +func (e CollaborationAnalyticsEngine) ToCollaborationAnalyticsEngineOutputWithContext(ctx context.Context) CollaborationAnalyticsEngineOutput { + return pulumi.ToOutputWithContext(ctx, e).(CollaborationAnalyticsEngineOutput) +} + +func (e CollaborationAnalyticsEngine) ToCollaborationAnalyticsEnginePtrOutput() CollaborationAnalyticsEnginePtrOutput { + return e.ToCollaborationAnalyticsEnginePtrOutputWithContext(context.Background()) +} + +func (e CollaborationAnalyticsEngine) ToCollaborationAnalyticsEnginePtrOutputWithContext(ctx context.Context) CollaborationAnalyticsEnginePtrOutput { + return CollaborationAnalyticsEngine(e).ToCollaborationAnalyticsEngineOutputWithContext(ctx).ToCollaborationAnalyticsEnginePtrOutputWithContext(ctx) +} + +func (e CollaborationAnalyticsEngine) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CollaborationAnalyticsEngine) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e CollaborationAnalyticsEngine) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e CollaborationAnalyticsEngine) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type CollaborationAnalyticsEngineOutput struct{ *pulumi.OutputState } + +func (CollaborationAnalyticsEngineOutput) ElementType() reflect.Type { + return reflect.TypeOf((*CollaborationAnalyticsEngine)(nil)).Elem() +} + +func (o CollaborationAnalyticsEngineOutput) ToCollaborationAnalyticsEngineOutput() CollaborationAnalyticsEngineOutput { + return o +} + +func (o CollaborationAnalyticsEngineOutput) ToCollaborationAnalyticsEngineOutputWithContext(ctx context.Context) CollaborationAnalyticsEngineOutput { + return o +} + +func (o CollaborationAnalyticsEngineOutput) ToCollaborationAnalyticsEnginePtrOutput() CollaborationAnalyticsEnginePtrOutput { + return o.ToCollaborationAnalyticsEnginePtrOutputWithContext(context.Background()) +} + +func (o CollaborationAnalyticsEngineOutput) ToCollaborationAnalyticsEnginePtrOutputWithContext(ctx context.Context) CollaborationAnalyticsEnginePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v CollaborationAnalyticsEngine) *CollaborationAnalyticsEngine { + return &v + }).(CollaborationAnalyticsEnginePtrOutput) +} + +func (o CollaborationAnalyticsEngineOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o CollaborationAnalyticsEngineOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CollaborationAnalyticsEngine) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o CollaborationAnalyticsEngineOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CollaborationAnalyticsEngineOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e CollaborationAnalyticsEngine) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type CollaborationAnalyticsEnginePtrOutput struct{ *pulumi.OutputState } + +func (CollaborationAnalyticsEnginePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**CollaborationAnalyticsEngine)(nil)).Elem() +} + +func (o CollaborationAnalyticsEnginePtrOutput) ToCollaborationAnalyticsEnginePtrOutput() CollaborationAnalyticsEnginePtrOutput { + return o +} + +func (o CollaborationAnalyticsEnginePtrOutput) ToCollaborationAnalyticsEnginePtrOutputWithContext(ctx context.Context) CollaborationAnalyticsEnginePtrOutput { + return o +} + +func (o CollaborationAnalyticsEnginePtrOutput) Elem() CollaborationAnalyticsEngineOutput { + return o.ApplyT(func(v *CollaborationAnalyticsEngine) CollaborationAnalyticsEngine { + if v != nil { + return *v + } + var ret CollaborationAnalyticsEngine + return ret + }).(CollaborationAnalyticsEngineOutput) +} + +func (o CollaborationAnalyticsEnginePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o CollaborationAnalyticsEnginePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *CollaborationAnalyticsEngine) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// CollaborationAnalyticsEngineInput is an input type that accepts values of the CollaborationAnalyticsEngine enum +// A concrete instance of `CollaborationAnalyticsEngineInput` can be one of the following: +// +// CollaborationAnalyticsEngineCleanRoomsSql +// CollaborationAnalyticsEngineSpark +type CollaborationAnalyticsEngineInput interface { + pulumi.Input + + ToCollaborationAnalyticsEngineOutput() CollaborationAnalyticsEngineOutput + ToCollaborationAnalyticsEngineOutputWithContext(context.Context) CollaborationAnalyticsEngineOutput +} + +var collaborationAnalyticsEnginePtrType = reflect.TypeOf((**CollaborationAnalyticsEngine)(nil)).Elem() + +type CollaborationAnalyticsEnginePtrInput interface { + pulumi.Input + + ToCollaborationAnalyticsEnginePtrOutput() CollaborationAnalyticsEnginePtrOutput + ToCollaborationAnalyticsEnginePtrOutputWithContext(context.Context) CollaborationAnalyticsEnginePtrOutput +} + +type collaborationAnalyticsEnginePtr string + +func CollaborationAnalyticsEnginePtr(v string) CollaborationAnalyticsEnginePtrInput { + return (*collaborationAnalyticsEnginePtr)(&v) +} + +func (*collaborationAnalyticsEnginePtr) ElementType() reflect.Type { + return collaborationAnalyticsEnginePtrType +} + +func (in *collaborationAnalyticsEnginePtr) ToCollaborationAnalyticsEnginePtrOutput() CollaborationAnalyticsEnginePtrOutput { + return pulumi.ToOutput(in).(CollaborationAnalyticsEnginePtrOutput) +} + +func (in *collaborationAnalyticsEnginePtr) ToCollaborationAnalyticsEnginePtrOutputWithContext(ctx context.Context) CollaborationAnalyticsEnginePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(CollaborationAnalyticsEnginePtrOutput) +} + type CollaborationMemberAbility string const ( @@ -3215,6 +3406,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AnalysisTemplateAnalysisParameterTypePtrInput)(nil)).Elem(), AnalysisTemplateAnalysisParameterType("SMALLINT")) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisTemplateFormatInput)(nil)).Elem(), AnalysisTemplateFormat("SQL")) pulumi.RegisterInputType(reflect.TypeOf((*AnalysisTemplateFormatPtrInput)(nil)).Elem(), AnalysisTemplateFormat("SQL")) + pulumi.RegisterInputType(reflect.TypeOf((*CollaborationAnalyticsEngineInput)(nil)).Elem(), CollaborationAnalyticsEngine("CLEAN_ROOMS_SQL")) + pulumi.RegisterInputType(reflect.TypeOf((*CollaborationAnalyticsEnginePtrInput)(nil)).Elem(), CollaborationAnalyticsEngine("CLEAN_ROOMS_SQL")) pulumi.RegisterInputType(reflect.TypeOf((*CollaborationMemberAbilityInput)(nil)).Elem(), CollaborationMemberAbility("CAN_QUERY")) pulumi.RegisterInputType(reflect.TypeOf((*CollaborationMemberAbilityPtrInput)(nil)).Elem(), CollaborationMemberAbility("CAN_QUERY")) pulumi.RegisterInputType(reflect.TypeOf((*CollaborationMemberAbilityArrayInput)(nil)).Elem(), CollaborationMemberAbilityArray{}) @@ -3252,6 +3445,8 @@ func init() { pulumi.RegisterOutputType(AnalysisTemplateAnalysisParameterTypePtrOutput{}) pulumi.RegisterOutputType(AnalysisTemplateFormatOutput{}) pulumi.RegisterOutputType(AnalysisTemplateFormatPtrOutput{}) + pulumi.RegisterOutputType(CollaborationAnalyticsEngineOutput{}) + pulumi.RegisterOutputType(CollaborationAnalyticsEnginePtrOutput{}) pulumi.RegisterOutputType(CollaborationMemberAbilityOutput{}) pulumi.RegisterOutputType(CollaborationMemberAbilityPtrOutput{}) pulumi.RegisterOutputType(CollaborationMemberAbilityArrayOutput{}) diff --git a/sdk/go/aws/codebuild/fleet.go b/sdk/go/aws/codebuild/fleet.go index c7af7be18a..5037bb4913 100644 --- a/sdk/go/aws/codebuild/fleet.go +++ b/sdk/go/aws/codebuild/fleet.go @@ -19,7 +19,8 @@ type Fleet struct { // The ARN of the compute fleet. Arn pulumi.StringOutput `pulumi:"arn"` // The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel. - BaseCapacity pulumi.IntPtrOutput `pulumi:"baseCapacity"` + BaseCapacity pulumi.IntPtrOutput `pulumi:"baseCapacity"` + ComputeConfiguration FleetComputeConfigurationPtrOutput `pulumi:"computeConfiguration"` // Information about the compute resources the compute fleet uses. Available values include: // // - `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine. @@ -60,7 +61,8 @@ type Fleet struct { // - The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai). // // For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . - EnvironmentType FleetEnvironmentTypePtrOutput `pulumi:"environmentType"` + EnvironmentType FleetEnvironmentTypePtrOutput `pulumi:"environmentType"` + FleetProxyConfiguration FleetProxyConfigurationPtrOutput `pulumi:"fleetProxyConfiguration"` // The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . FleetServiceRole pulumi.StringPtrOutput `pulumi:"fleetServiceRole"` // Information about the VPC configuration that AWS CodeBuild accesses. @@ -75,7 +77,8 @@ type Fleet struct { // - For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand. // // > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . - OverflowBehavior FleetOverflowBehaviorPtrOutput `pulumi:"overflowBehavior"` + OverflowBehavior FleetOverflowBehaviorPtrOutput `pulumi:"overflowBehavior"` + ScalingConfiguration FleetScalingConfigurationInputPtrOutput `pulumi:"scalingConfiguration"` // A list of tag key and value pairs associated with this compute fleet. // // These tags are available for use by AWS services that support AWS CodeBuild compute fleet tags. @@ -123,7 +126,8 @@ func (FleetState) ElementType() reflect.Type { type fleetArgs struct { // The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel. - BaseCapacity *int `pulumi:"baseCapacity"` + BaseCapacity *int `pulumi:"baseCapacity"` + ComputeConfiguration *FleetComputeConfiguration `pulumi:"computeConfiguration"` // Information about the compute resources the compute fleet uses. Available values include: // // - `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine. @@ -164,7 +168,8 @@ type fleetArgs struct { // - The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai). // // For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . - EnvironmentType *FleetEnvironmentType `pulumi:"environmentType"` + EnvironmentType *FleetEnvironmentType `pulumi:"environmentType"` + FleetProxyConfiguration *FleetProxyConfiguration `pulumi:"fleetProxyConfiguration"` // The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . FleetServiceRole *string `pulumi:"fleetServiceRole"` // Information about the VPC configuration that AWS CodeBuild accesses. @@ -179,7 +184,8 @@ type fleetArgs struct { // - For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand. // // > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . - OverflowBehavior *FleetOverflowBehavior `pulumi:"overflowBehavior"` + OverflowBehavior *FleetOverflowBehavior `pulumi:"overflowBehavior"` + ScalingConfiguration *FleetScalingConfigurationInput `pulumi:"scalingConfiguration"` // A list of tag key and value pairs associated with this compute fleet. // // These tags are available for use by AWS services that support AWS CodeBuild compute fleet tags. @@ -189,7 +195,8 @@ type fleetArgs struct { // The set of arguments for constructing a Fleet resource. type FleetArgs struct { // The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel. - BaseCapacity pulumi.IntPtrInput + BaseCapacity pulumi.IntPtrInput + ComputeConfiguration FleetComputeConfigurationPtrInput // Information about the compute resources the compute fleet uses. Available values include: // // - `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine. @@ -230,7 +237,8 @@ type FleetArgs struct { // - The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai). // // For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . - EnvironmentType FleetEnvironmentTypePtrInput + EnvironmentType FleetEnvironmentTypePtrInput + FleetProxyConfiguration FleetProxyConfigurationPtrInput // The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . FleetServiceRole pulumi.StringPtrInput // Information about the VPC configuration that AWS CodeBuild accesses. @@ -245,7 +253,8 @@ type FleetArgs struct { // - For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand. // // > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . - OverflowBehavior FleetOverflowBehaviorPtrInput + OverflowBehavior FleetOverflowBehaviorPtrInput + ScalingConfiguration FleetScalingConfigurationInputPtrInput // A list of tag key and value pairs associated with this compute fleet. // // These tags are available for use by AWS services that support AWS CodeBuild compute fleet tags. @@ -299,6 +308,10 @@ func (o FleetOutput) BaseCapacity() pulumi.IntPtrOutput { return o.ApplyT(func(v *Fleet) pulumi.IntPtrOutput { return v.BaseCapacity }).(pulumi.IntPtrOutput) } +func (o FleetOutput) ComputeConfiguration() FleetComputeConfigurationPtrOutput { + return o.ApplyT(func(v *Fleet) FleetComputeConfigurationPtrOutput { return v.ComputeConfiguration }).(FleetComputeConfigurationPtrOutput) +} + // Information about the compute resources the compute fleet uses. Available values include: // // - `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine. @@ -346,6 +359,10 @@ func (o FleetOutput) EnvironmentType() FleetEnvironmentTypePtrOutput { return o.ApplyT(func(v *Fleet) FleetEnvironmentTypePtrOutput { return v.EnvironmentType }).(FleetEnvironmentTypePtrOutput) } +func (o FleetOutput) FleetProxyConfiguration() FleetProxyConfigurationPtrOutput { + return o.ApplyT(func(v *Fleet) FleetProxyConfigurationPtrOutput { return v.FleetProxyConfiguration }).(FleetProxyConfigurationPtrOutput) +} + // The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . func (o FleetOutput) FleetServiceRole() pulumi.StringPtrOutput { return o.ApplyT(func(v *Fleet) pulumi.StringPtrOutput { return v.FleetServiceRole }).(pulumi.StringPtrOutput) @@ -376,6 +393,10 @@ func (o FleetOutput) OverflowBehavior() FleetOverflowBehaviorPtrOutput { return o.ApplyT(func(v *Fleet) FleetOverflowBehaviorPtrOutput { return v.OverflowBehavior }).(FleetOverflowBehaviorPtrOutput) } +func (o FleetOutput) ScalingConfiguration() FleetScalingConfigurationInputPtrOutput { + return o.ApplyT(func(v *Fleet) FleetScalingConfigurationInputPtrOutput { return v.ScalingConfiguration }).(FleetScalingConfigurationInputPtrOutput) +} + // A list of tag key and value pairs associated with this compute fleet. // // These tags are available for use by AWS services that support AWS CodeBuild compute fleet tags. diff --git a/sdk/go/aws/codebuild/getFleet.go b/sdk/go/aws/codebuild/getFleet.go index 2d64a219dc..d2a0d23c94 100644 --- a/sdk/go/aws/codebuild/getFleet.go +++ b/sdk/go/aws/codebuild/getFleet.go @@ -32,7 +32,8 @@ type LookupFleetResult struct { // The ARN of the compute fleet. Arn *string `pulumi:"arn"` // The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel. - BaseCapacity *int `pulumi:"baseCapacity"` + BaseCapacity *int `pulumi:"baseCapacity"` + ComputeConfiguration *FleetComputeConfiguration `pulumi:"computeConfiguration"` // Information about the compute resources the compute fleet uses. Available values include: // // - `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine. @@ -73,7 +74,8 @@ type LookupFleetResult struct { // - The environment type `WINDOWS_SERVER_2022_CONTAINER` is available only in regions US East (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), EU (Frankfurt), Asia Pacific (Sydney), Asia Pacific (Singapore), Asia Pacific (Tokyo), South America (São Paulo) and Asia Pacific (Mumbai). // // For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . - EnvironmentType *FleetEnvironmentType `pulumi:"environmentType"` + EnvironmentType *FleetEnvironmentType `pulumi:"environmentType"` + FleetProxyConfiguration *FleetProxyConfiguration `pulumi:"fleetProxyConfiguration"` // The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . FleetServiceRole *string `pulumi:"fleetServiceRole"` // Information about the VPC configuration that AWS CodeBuild accesses. @@ -88,7 +90,8 @@ type LookupFleetResult struct { // - For overflow behavior `ON_DEMAND` , your overflow builds run on CodeBuild on-demand. // // > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . - OverflowBehavior *FleetOverflowBehavior `pulumi:"overflowBehavior"` + OverflowBehavior *FleetOverflowBehavior `pulumi:"overflowBehavior"` + ScalingConfiguration *FleetScalingConfigurationInput `pulumi:"scalingConfiguration"` // A list of tag key and value pairs associated with this compute fleet. // // These tags are available for use by AWS services that support AWS CodeBuild compute fleet tags. @@ -147,6 +150,10 @@ func (o LookupFleetResultOutput) BaseCapacity() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupFleetResult) *int { return v.BaseCapacity }).(pulumi.IntPtrOutput) } +func (o LookupFleetResultOutput) ComputeConfiguration() FleetComputeConfigurationPtrOutput { + return o.ApplyT(func(v LookupFleetResult) *FleetComputeConfiguration { return v.ComputeConfiguration }).(FleetComputeConfigurationPtrOutput) +} + // Information about the compute resources the compute fleet uses. Available values include: // // - `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine. @@ -194,6 +201,10 @@ func (o LookupFleetResultOutput) EnvironmentType() FleetEnvironmentTypePtrOutput return o.ApplyT(func(v LookupFleetResult) *FleetEnvironmentType { return v.EnvironmentType }).(FleetEnvironmentTypePtrOutput) } +func (o LookupFleetResultOutput) FleetProxyConfiguration() FleetProxyConfigurationPtrOutput { + return o.ApplyT(func(v LookupFleetResult) *FleetProxyConfiguration { return v.FleetProxyConfiguration }).(FleetProxyConfigurationPtrOutput) +} + // The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . func (o LookupFleetResultOutput) FleetServiceRole() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFleetResult) *string { return v.FleetServiceRole }).(pulumi.StringPtrOutput) @@ -224,6 +235,10 @@ func (o LookupFleetResultOutput) OverflowBehavior() FleetOverflowBehaviorPtrOutp return o.ApplyT(func(v LookupFleetResult) *FleetOverflowBehavior { return v.OverflowBehavior }).(FleetOverflowBehaviorPtrOutput) } +func (o LookupFleetResultOutput) ScalingConfiguration() FleetScalingConfigurationInputPtrOutput { + return o.ApplyT(func(v LookupFleetResult) *FleetScalingConfigurationInput { return v.ScalingConfiguration }).(FleetScalingConfigurationInputPtrOutput) +} + // A list of tag key and value pairs associated with this compute fleet. // // These tags are available for use by AWS services that support AWS CodeBuild compute fleet tags. diff --git a/sdk/go/aws/codebuild/pulumiEnums.go b/sdk/go/aws/codebuild/pulumiEnums.go index 93ff369d02..c6c768e629 100644 --- a/sdk/go/aws/codebuild/pulumiEnums.go +++ b/sdk/go/aws/codebuild/pulumiEnums.go @@ -10,6 +10,171 @@ import ( "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) +type FleetComputeConfigurationmachineType string + +const ( + FleetComputeConfigurationmachineTypeGeneral = FleetComputeConfigurationmachineType("GENERAL") + FleetComputeConfigurationmachineTypeNvme = FleetComputeConfigurationmachineType("NVME") +) + +func (FleetComputeConfigurationmachineType) ElementType() reflect.Type { + return reflect.TypeOf((*FleetComputeConfigurationmachineType)(nil)).Elem() +} + +func (e FleetComputeConfigurationmachineType) ToFleetComputeConfigurationmachineTypeOutput() FleetComputeConfigurationmachineTypeOutput { + return pulumi.ToOutput(e).(FleetComputeConfigurationmachineTypeOutput) +} + +func (e FleetComputeConfigurationmachineType) ToFleetComputeConfigurationmachineTypeOutputWithContext(ctx context.Context) FleetComputeConfigurationmachineTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(FleetComputeConfigurationmachineTypeOutput) +} + +func (e FleetComputeConfigurationmachineType) ToFleetComputeConfigurationmachineTypePtrOutput() FleetComputeConfigurationmachineTypePtrOutput { + return e.ToFleetComputeConfigurationmachineTypePtrOutputWithContext(context.Background()) +} + +func (e FleetComputeConfigurationmachineType) ToFleetComputeConfigurationmachineTypePtrOutputWithContext(ctx context.Context) FleetComputeConfigurationmachineTypePtrOutput { + return FleetComputeConfigurationmachineType(e).ToFleetComputeConfigurationmachineTypeOutputWithContext(ctx).ToFleetComputeConfigurationmachineTypePtrOutputWithContext(ctx) +} + +func (e FleetComputeConfigurationmachineType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetComputeConfigurationmachineType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetComputeConfigurationmachineType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FleetComputeConfigurationmachineType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FleetComputeConfigurationmachineTypeOutput struct{ *pulumi.OutputState } + +func (FleetComputeConfigurationmachineTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetComputeConfigurationmachineType)(nil)).Elem() +} + +func (o FleetComputeConfigurationmachineTypeOutput) ToFleetComputeConfigurationmachineTypeOutput() FleetComputeConfigurationmachineTypeOutput { + return o +} + +func (o FleetComputeConfigurationmachineTypeOutput) ToFleetComputeConfigurationmachineTypeOutputWithContext(ctx context.Context) FleetComputeConfigurationmachineTypeOutput { + return o +} + +func (o FleetComputeConfigurationmachineTypeOutput) ToFleetComputeConfigurationmachineTypePtrOutput() FleetComputeConfigurationmachineTypePtrOutput { + return o.ToFleetComputeConfigurationmachineTypePtrOutputWithContext(context.Background()) +} + +func (o FleetComputeConfigurationmachineTypeOutput) ToFleetComputeConfigurationmachineTypePtrOutputWithContext(ctx context.Context) FleetComputeConfigurationmachineTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetComputeConfigurationmachineType) *FleetComputeConfigurationmachineType { + return &v + }).(FleetComputeConfigurationmachineTypePtrOutput) +} + +func (o FleetComputeConfigurationmachineTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FleetComputeConfigurationmachineTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetComputeConfigurationmachineType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FleetComputeConfigurationmachineTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetComputeConfigurationmachineTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetComputeConfigurationmachineType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FleetComputeConfigurationmachineTypePtrOutput struct{ *pulumi.OutputState } + +func (FleetComputeConfigurationmachineTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetComputeConfigurationmachineType)(nil)).Elem() +} + +func (o FleetComputeConfigurationmachineTypePtrOutput) ToFleetComputeConfigurationmachineTypePtrOutput() FleetComputeConfigurationmachineTypePtrOutput { + return o +} + +func (o FleetComputeConfigurationmachineTypePtrOutput) ToFleetComputeConfigurationmachineTypePtrOutputWithContext(ctx context.Context) FleetComputeConfigurationmachineTypePtrOutput { + return o +} + +func (o FleetComputeConfigurationmachineTypePtrOutput) Elem() FleetComputeConfigurationmachineTypeOutput { + return o.ApplyT(func(v *FleetComputeConfigurationmachineType) FleetComputeConfigurationmachineType { + if v != nil { + return *v + } + var ret FleetComputeConfigurationmachineType + return ret + }).(FleetComputeConfigurationmachineTypeOutput) +} + +func (o FleetComputeConfigurationmachineTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetComputeConfigurationmachineTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FleetComputeConfigurationmachineType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FleetComputeConfigurationmachineTypeInput is an input type that accepts values of the FleetComputeConfigurationmachineType enum +// A concrete instance of `FleetComputeConfigurationmachineTypeInput` can be one of the following: +// +// FleetComputeConfigurationmachineTypeGeneral +// FleetComputeConfigurationmachineTypeNvme +type FleetComputeConfigurationmachineTypeInput interface { + pulumi.Input + + ToFleetComputeConfigurationmachineTypeOutput() FleetComputeConfigurationmachineTypeOutput + ToFleetComputeConfigurationmachineTypeOutputWithContext(context.Context) FleetComputeConfigurationmachineTypeOutput +} + +var fleetComputeConfigurationmachineTypePtrType = reflect.TypeOf((**FleetComputeConfigurationmachineType)(nil)).Elem() + +type FleetComputeConfigurationmachineTypePtrInput interface { + pulumi.Input + + ToFleetComputeConfigurationmachineTypePtrOutput() FleetComputeConfigurationmachineTypePtrOutput + ToFleetComputeConfigurationmachineTypePtrOutputWithContext(context.Context) FleetComputeConfigurationmachineTypePtrOutput +} + +type fleetComputeConfigurationmachineTypePtr string + +func FleetComputeConfigurationmachineTypePtr(v string) FleetComputeConfigurationmachineTypePtrInput { + return (*fleetComputeConfigurationmachineTypePtr)(&v) +} + +func (*fleetComputeConfigurationmachineTypePtr) ElementType() reflect.Type { + return fleetComputeConfigurationmachineTypePtrType +} + +func (in *fleetComputeConfigurationmachineTypePtr) ToFleetComputeConfigurationmachineTypePtrOutput() FleetComputeConfigurationmachineTypePtrOutput { + return pulumi.ToOutput(in).(FleetComputeConfigurationmachineTypePtrOutput) +} + +func (in *fleetComputeConfigurationmachineTypePtr) ToFleetComputeConfigurationmachineTypePtrOutputWithContext(ctx context.Context) FleetComputeConfigurationmachineTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FleetComputeConfigurationmachineTypePtrOutput) +} + // Information about the compute resources the compute fleet uses. Available values include: // // - `ATTRIBUTE_BASED_COMPUTE` : Specify the amount of vCPUs, memory, disk space, and the type of machine. @@ -42,11 +207,12 @@ import ( type FleetComputeType string const ( - FleetComputeTypeBuildGeneral1Small = FleetComputeType("BUILD_GENERAL1_SMALL") - FleetComputeTypeBuildGeneral1Medium = FleetComputeType("BUILD_GENERAL1_MEDIUM") - FleetComputeTypeBuildGeneral1Large = FleetComputeType("BUILD_GENERAL1_LARGE") - FleetComputeTypeBuildGeneral1Xlarge = FleetComputeType("BUILD_GENERAL1_XLARGE") - FleetComputeTypeBuildGeneral12xlarge = FleetComputeType("BUILD_GENERAL1_2XLARGE") + FleetComputeTypeBuildGeneral1Small = FleetComputeType("BUILD_GENERAL1_SMALL") + FleetComputeTypeBuildGeneral1Medium = FleetComputeType("BUILD_GENERAL1_MEDIUM") + FleetComputeTypeBuildGeneral1Large = FleetComputeType("BUILD_GENERAL1_LARGE") + FleetComputeTypeBuildGeneral1Xlarge = FleetComputeType("BUILD_GENERAL1_XLARGE") + FleetComputeTypeBuildGeneral12xlarge = FleetComputeType("BUILD_GENERAL1_2XLARGE") + FleetComputeTypeAttributeBasedCompute = FleetComputeType("ATTRIBUTE_BASED_COMPUTE") ) func (FleetComputeType) ElementType() reflect.Type { @@ -176,6 +342,7 @@ func (o FleetComputeTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Cont // FleetComputeTypeBuildGeneral1Large // FleetComputeTypeBuildGeneral1Xlarge // FleetComputeTypeBuildGeneral12xlarge +// FleetComputeTypeAttributeBasedCompute type FleetComputeTypeInput interface { pulumi.Input @@ -564,17 +731,862 @@ func (in *fleetOverflowBehaviorPtr) ToFleetOverflowBehaviorPtrOutputWithContext( return pulumi.ToOutputWithContext(ctx, in).(FleetOverflowBehaviorPtrOutput) } +type FleetProxyConfigurationDefaultBehavior string + +const ( + FleetProxyConfigurationDefaultBehaviorAllowAll = FleetProxyConfigurationDefaultBehavior("ALLOW_ALL") + FleetProxyConfigurationDefaultBehaviorDenyAll = FleetProxyConfigurationDefaultBehavior("DENY_ALL") +) + +func (FleetProxyConfigurationDefaultBehavior) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyConfigurationDefaultBehavior)(nil)).Elem() +} + +func (e FleetProxyConfigurationDefaultBehavior) ToFleetProxyConfigurationDefaultBehaviorOutput() FleetProxyConfigurationDefaultBehaviorOutput { + return pulumi.ToOutput(e).(FleetProxyConfigurationDefaultBehaviorOutput) +} + +func (e FleetProxyConfigurationDefaultBehavior) ToFleetProxyConfigurationDefaultBehaviorOutputWithContext(ctx context.Context) FleetProxyConfigurationDefaultBehaviorOutput { + return pulumi.ToOutputWithContext(ctx, e).(FleetProxyConfigurationDefaultBehaviorOutput) +} + +func (e FleetProxyConfigurationDefaultBehavior) ToFleetProxyConfigurationDefaultBehaviorPtrOutput() FleetProxyConfigurationDefaultBehaviorPtrOutput { + return e.ToFleetProxyConfigurationDefaultBehaviorPtrOutputWithContext(context.Background()) +} + +func (e FleetProxyConfigurationDefaultBehavior) ToFleetProxyConfigurationDefaultBehaviorPtrOutputWithContext(ctx context.Context) FleetProxyConfigurationDefaultBehaviorPtrOutput { + return FleetProxyConfigurationDefaultBehavior(e).ToFleetProxyConfigurationDefaultBehaviorOutputWithContext(ctx).ToFleetProxyConfigurationDefaultBehaviorPtrOutputWithContext(ctx) +} + +func (e FleetProxyConfigurationDefaultBehavior) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetProxyConfigurationDefaultBehavior) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetProxyConfigurationDefaultBehavior) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FleetProxyConfigurationDefaultBehavior) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FleetProxyConfigurationDefaultBehaviorOutput struct{ *pulumi.OutputState } + +func (FleetProxyConfigurationDefaultBehaviorOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyConfigurationDefaultBehavior)(nil)).Elem() +} + +func (o FleetProxyConfigurationDefaultBehaviorOutput) ToFleetProxyConfigurationDefaultBehaviorOutput() FleetProxyConfigurationDefaultBehaviorOutput { + return o +} + +func (o FleetProxyConfigurationDefaultBehaviorOutput) ToFleetProxyConfigurationDefaultBehaviorOutputWithContext(ctx context.Context) FleetProxyConfigurationDefaultBehaviorOutput { + return o +} + +func (o FleetProxyConfigurationDefaultBehaviorOutput) ToFleetProxyConfigurationDefaultBehaviorPtrOutput() FleetProxyConfigurationDefaultBehaviorPtrOutput { + return o.ToFleetProxyConfigurationDefaultBehaviorPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyConfigurationDefaultBehaviorOutput) ToFleetProxyConfigurationDefaultBehaviorPtrOutputWithContext(ctx context.Context) FleetProxyConfigurationDefaultBehaviorPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetProxyConfigurationDefaultBehavior) *FleetProxyConfigurationDefaultBehavior { + return &v + }).(FleetProxyConfigurationDefaultBehaviorPtrOutput) +} + +func (o FleetProxyConfigurationDefaultBehaviorOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FleetProxyConfigurationDefaultBehaviorOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetProxyConfigurationDefaultBehavior) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FleetProxyConfigurationDefaultBehaviorOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyConfigurationDefaultBehaviorOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetProxyConfigurationDefaultBehavior) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FleetProxyConfigurationDefaultBehaviorPtrOutput struct{ *pulumi.OutputState } + +func (FleetProxyConfigurationDefaultBehaviorPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetProxyConfigurationDefaultBehavior)(nil)).Elem() +} + +func (o FleetProxyConfigurationDefaultBehaviorPtrOutput) ToFleetProxyConfigurationDefaultBehaviorPtrOutput() FleetProxyConfigurationDefaultBehaviorPtrOutput { + return o +} + +func (o FleetProxyConfigurationDefaultBehaviorPtrOutput) ToFleetProxyConfigurationDefaultBehaviorPtrOutputWithContext(ctx context.Context) FleetProxyConfigurationDefaultBehaviorPtrOutput { + return o +} + +func (o FleetProxyConfigurationDefaultBehaviorPtrOutput) Elem() FleetProxyConfigurationDefaultBehaviorOutput { + return o.ApplyT(func(v *FleetProxyConfigurationDefaultBehavior) FleetProxyConfigurationDefaultBehavior { + if v != nil { + return *v + } + var ret FleetProxyConfigurationDefaultBehavior + return ret + }).(FleetProxyConfigurationDefaultBehaviorOutput) +} + +func (o FleetProxyConfigurationDefaultBehaviorPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyConfigurationDefaultBehaviorPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FleetProxyConfigurationDefaultBehavior) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FleetProxyConfigurationDefaultBehaviorInput is an input type that accepts values of the FleetProxyConfigurationDefaultBehavior enum +// A concrete instance of `FleetProxyConfigurationDefaultBehaviorInput` can be one of the following: +// +// FleetProxyConfigurationDefaultBehaviorAllowAll +// FleetProxyConfigurationDefaultBehaviorDenyAll +type FleetProxyConfigurationDefaultBehaviorInput interface { + pulumi.Input + + ToFleetProxyConfigurationDefaultBehaviorOutput() FleetProxyConfigurationDefaultBehaviorOutput + ToFleetProxyConfigurationDefaultBehaviorOutputWithContext(context.Context) FleetProxyConfigurationDefaultBehaviorOutput +} + +var fleetProxyConfigurationDefaultBehaviorPtrType = reflect.TypeOf((**FleetProxyConfigurationDefaultBehavior)(nil)).Elem() + +type FleetProxyConfigurationDefaultBehaviorPtrInput interface { + pulumi.Input + + ToFleetProxyConfigurationDefaultBehaviorPtrOutput() FleetProxyConfigurationDefaultBehaviorPtrOutput + ToFleetProxyConfigurationDefaultBehaviorPtrOutputWithContext(context.Context) FleetProxyConfigurationDefaultBehaviorPtrOutput +} + +type fleetProxyConfigurationDefaultBehaviorPtr string + +func FleetProxyConfigurationDefaultBehaviorPtr(v string) FleetProxyConfigurationDefaultBehaviorPtrInput { + return (*fleetProxyConfigurationDefaultBehaviorPtr)(&v) +} + +func (*fleetProxyConfigurationDefaultBehaviorPtr) ElementType() reflect.Type { + return fleetProxyConfigurationDefaultBehaviorPtrType +} + +func (in *fleetProxyConfigurationDefaultBehaviorPtr) ToFleetProxyConfigurationDefaultBehaviorPtrOutput() FleetProxyConfigurationDefaultBehaviorPtrOutput { + return pulumi.ToOutput(in).(FleetProxyConfigurationDefaultBehaviorPtrOutput) +} + +func (in *fleetProxyConfigurationDefaultBehaviorPtr) ToFleetProxyConfigurationDefaultBehaviorPtrOutputWithContext(ctx context.Context) FleetProxyConfigurationDefaultBehaviorPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FleetProxyConfigurationDefaultBehaviorPtrOutput) +} + +type FleetProxyRuleEffect string + +const ( + FleetProxyRuleEffectAllow = FleetProxyRuleEffect("ALLOW") + FleetProxyRuleEffectDeny = FleetProxyRuleEffect("DENY") +) + +func (FleetProxyRuleEffect) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyRuleEffect)(nil)).Elem() +} + +func (e FleetProxyRuleEffect) ToFleetProxyRuleEffectOutput() FleetProxyRuleEffectOutput { + return pulumi.ToOutput(e).(FleetProxyRuleEffectOutput) +} + +func (e FleetProxyRuleEffect) ToFleetProxyRuleEffectOutputWithContext(ctx context.Context) FleetProxyRuleEffectOutput { + return pulumi.ToOutputWithContext(ctx, e).(FleetProxyRuleEffectOutput) +} + +func (e FleetProxyRuleEffect) ToFleetProxyRuleEffectPtrOutput() FleetProxyRuleEffectPtrOutput { + return e.ToFleetProxyRuleEffectPtrOutputWithContext(context.Background()) +} + +func (e FleetProxyRuleEffect) ToFleetProxyRuleEffectPtrOutputWithContext(ctx context.Context) FleetProxyRuleEffectPtrOutput { + return FleetProxyRuleEffect(e).ToFleetProxyRuleEffectOutputWithContext(ctx).ToFleetProxyRuleEffectPtrOutputWithContext(ctx) +} + +func (e FleetProxyRuleEffect) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetProxyRuleEffect) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetProxyRuleEffect) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FleetProxyRuleEffect) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FleetProxyRuleEffectOutput struct{ *pulumi.OutputState } + +func (FleetProxyRuleEffectOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyRuleEffect)(nil)).Elem() +} + +func (o FleetProxyRuleEffectOutput) ToFleetProxyRuleEffectOutput() FleetProxyRuleEffectOutput { + return o +} + +func (o FleetProxyRuleEffectOutput) ToFleetProxyRuleEffectOutputWithContext(ctx context.Context) FleetProxyRuleEffectOutput { + return o +} + +func (o FleetProxyRuleEffectOutput) ToFleetProxyRuleEffectPtrOutput() FleetProxyRuleEffectPtrOutput { + return o.ToFleetProxyRuleEffectPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyRuleEffectOutput) ToFleetProxyRuleEffectPtrOutputWithContext(ctx context.Context) FleetProxyRuleEffectPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetProxyRuleEffect) *FleetProxyRuleEffect { + return &v + }).(FleetProxyRuleEffectPtrOutput) +} + +func (o FleetProxyRuleEffectOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FleetProxyRuleEffectOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetProxyRuleEffect) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FleetProxyRuleEffectOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyRuleEffectOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetProxyRuleEffect) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FleetProxyRuleEffectPtrOutput struct{ *pulumi.OutputState } + +func (FleetProxyRuleEffectPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetProxyRuleEffect)(nil)).Elem() +} + +func (o FleetProxyRuleEffectPtrOutput) ToFleetProxyRuleEffectPtrOutput() FleetProxyRuleEffectPtrOutput { + return o +} + +func (o FleetProxyRuleEffectPtrOutput) ToFleetProxyRuleEffectPtrOutputWithContext(ctx context.Context) FleetProxyRuleEffectPtrOutput { + return o +} + +func (o FleetProxyRuleEffectPtrOutput) Elem() FleetProxyRuleEffectOutput { + return o.ApplyT(func(v *FleetProxyRuleEffect) FleetProxyRuleEffect { + if v != nil { + return *v + } + var ret FleetProxyRuleEffect + return ret + }).(FleetProxyRuleEffectOutput) +} + +func (o FleetProxyRuleEffectPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyRuleEffectPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FleetProxyRuleEffect) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FleetProxyRuleEffectInput is an input type that accepts values of the FleetProxyRuleEffect enum +// A concrete instance of `FleetProxyRuleEffectInput` can be one of the following: +// +// FleetProxyRuleEffectAllow +// FleetProxyRuleEffectDeny +type FleetProxyRuleEffectInput interface { + pulumi.Input + + ToFleetProxyRuleEffectOutput() FleetProxyRuleEffectOutput + ToFleetProxyRuleEffectOutputWithContext(context.Context) FleetProxyRuleEffectOutput +} + +var fleetProxyRuleEffectPtrType = reflect.TypeOf((**FleetProxyRuleEffect)(nil)).Elem() + +type FleetProxyRuleEffectPtrInput interface { + pulumi.Input + + ToFleetProxyRuleEffectPtrOutput() FleetProxyRuleEffectPtrOutput + ToFleetProxyRuleEffectPtrOutputWithContext(context.Context) FleetProxyRuleEffectPtrOutput +} + +type fleetProxyRuleEffectPtr string + +func FleetProxyRuleEffectPtr(v string) FleetProxyRuleEffectPtrInput { + return (*fleetProxyRuleEffectPtr)(&v) +} + +func (*fleetProxyRuleEffectPtr) ElementType() reflect.Type { + return fleetProxyRuleEffectPtrType +} + +func (in *fleetProxyRuleEffectPtr) ToFleetProxyRuleEffectPtrOutput() FleetProxyRuleEffectPtrOutput { + return pulumi.ToOutput(in).(FleetProxyRuleEffectPtrOutput) +} + +func (in *fleetProxyRuleEffectPtr) ToFleetProxyRuleEffectPtrOutputWithContext(ctx context.Context) FleetProxyRuleEffectPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FleetProxyRuleEffectPtrOutput) +} + +type FleetProxyRuleType string + +const ( + FleetProxyRuleTypeDomain = FleetProxyRuleType("DOMAIN") + FleetProxyRuleTypeIp = FleetProxyRuleType("IP") +) + +func (FleetProxyRuleType) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyRuleType)(nil)).Elem() +} + +func (e FleetProxyRuleType) ToFleetProxyRuleTypeOutput() FleetProxyRuleTypeOutput { + return pulumi.ToOutput(e).(FleetProxyRuleTypeOutput) +} + +func (e FleetProxyRuleType) ToFleetProxyRuleTypeOutputWithContext(ctx context.Context) FleetProxyRuleTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(FleetProxyRuleTypeOutput) +} + +func (e FleetProxyRuleType) ToFleetProxyRuleTypePtrOutput() FleetProxyRuleTypePtrOutput { + return e.ToFleetProxyRuleTypePtrOutputWithContext(context.Background()) +} + +func (e FleetProxyRuleType) ToFleetProxyRuleTypePtrOutputWithContext(ctx context.Context) FleetProxyRuleTypePtrOutput { + return FleetProxyRuleType(e).ToFleetProxyRuleTypeOutputWithContext(ctx).ToFleetProxyRuleTypePtrOutputWithContext(ctx) +} + +func (e FleetProxyRuleType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetProxyRuleType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetProxyRuleType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FleetProxyRuleType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FleetProxyRuleTypeOutput struct{ *pulumi.OutputState } + +func (FleetProxyRuleTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyRuleType)(nil)).Elem() +} + +func (o FleetProxyRuleTypeOutput) ToFleetProxyRuleTypeOutput() FleetProxyRuleTypeOutput { + return o +} + +func (o FleetProxyRuleTypeOutput) ToFleetProxyRuleTypeOutputWithContext(ctx context.Context) FleetProxyRuleTypeOutput { + return o +} + +func (o FleetProxyRuleTypeOutput) ToFleetProxyRuleTypePtrOutput() FleetProxyRuleTypePtrOutput { + return o.ToFleetProxyRuleTypePtrOutputWithContext(context.Background()) +} + +func (o FleetProxyRuleTypeOutput) ToFleetProxyRuleTypePtrOutputWithContext(ctx context.Context) FleetProxyRuleTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetProxyRuleType) *FleetProxyRuleType { + return &v + }).(FleetProxyRuleTypePtrOutput) +} + +func (o FleetProxyRuleTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FleetProxyRuleTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetProxyRuleType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FleetProxyRuleTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyRuleTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetProxyRuleType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FleetProxyRuleTypePtrOutput struct{ *pulumi.OutputState } + +func (FleetProxyRuleTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetProxyRuleType)(nil)).Elem() +} + +func (o FleetProxyRuleTypePtrOutput) ToFleetProxyRuleTypePtrOutput() FleetProxyRuleTypePtrOutput { + return o +} + +func (o FleetProxyRuleTypePtrOutput) ToFleetProxyRuleTypePtrOutputWithContext(ctx context.Context) FleetProxyRuleTypePtrOutput { + return o +} + +func (o FleetProxyRuleTypePtrOutput) Elem() FleetProxyRuleTypeOutput { + return o.ApplyT(func(v *FleetProxyRuleType) FleetProxyRuleType { + if v != nil { + return *v + } + var ret FleetProxyRuleType + return ret + }).(FleetProxyRuleTypeOutput) +} + +func (o FleetProxyRuleTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyRuleTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FleetProxyRuleType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FleetProxyRuleTypeInput is an input type that accepts values of the FleetProxyRuleType enum +// A concrete instance of `FleetProxyRuleTypeInput` can be one of the following: +// +// FleetProxyRuleTypeDomain +// FleetProxyRuleTypeIp +type FleetProxyRuleTypeInput interface { + pulumi.Input + + ToFleetProxyRuleTypeOutput() FleetProxyRuleTypeOutput + ToFleetProxyRuleTypeOutputWithContext(context.Context) FleetProxyRuleTypeOutput +} + +var fleetProxyRuleTypePtrType = reflect.TypeOf((**FleetProxyRuleType)(nil)).Elem() + +type FleetProxyRuleTypePtrInput interface { + pulumi.Input + + ToFleetProxyRuleTypePtrOutput() FleetProxyRuleTypePtrOutput + ToFleetProxyRuleTypePtrOutputWithContext(context.Context) FleetProxyRuleTypePtrOutput +} + +type fleetProxyRuleTypePtr string + +func FleetProxyRuleTypePtr(v string) FleetProxyRuleTypePtrInput { + return (*fleetProxyRuleTypePtr)(&v) +} + +func (*fleetProxyRuleTypePtr) ElementType() reflect.Type { + return fleetProxyRuleTypePtrType +} + +func (in *fleetProxyRuleTypePtr) ToFleetProxyRuleTypePtrOutput() FleetProxyRuleTypePtrOutput { + return pulumi.ToOutput(in).(FleetProxyRuleTypePtrOutput) +} + +func (in *fleetProxyRuleTypePtr) ToFleetProxyRuleTypePtrOutputWithContext(ctx context.Context) FleetProxyRuleTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FleetProxyRuleTypePtrOutput) +} + +type FleetScalingConfigurationInputScalingType string + +const ( + FleetScalingConfigurationInputScalingTypeTargetTrackingScaling = FleetScalingConfigurationInputScalingType("TARGET_TRACKING_SCALING") +) + +func (FleetScalingConfigurationInputScalingType) ElementType() reflect.Type { + return reflect.TypeOf((*FleetScalingConfigurationInputScalingType)(nil)).Elem() +} + +func (e FleetScalingConfigurationInputScalingType) ToFleetScalingConfigurationInputScalingTypeOutput() FleetScalingConfigurationInputScalingTypeOutput { + return pulumi.ToOutput(e).(FleetScalingConfigurationInputScalingTypeOutput) +} + +func (e FleetScalingConfigurationInputScalingType) ToFleetScalingConfigurationInputScalingTypeOutputWithContext(ctx context.Context) FleetScalingConfigurationInputScalingTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(FleetScalingConfigurationInputScalingTypeOutput) +} + +func (e FleetScalingConfigurationInputScalingType) ToFleetScalingConfigurationInputScalingTypePtrOutput() FleetScalingConfigurationInputScalingTypePtrOutput { + return e.ToFleetScalingConfigurationInputScalingTypePtrOutputWithContext(context.Background()) +} + +func (e FleetScalingConfigurationInputScalingType) ToFleetScalingConfigurationInputScalingTypePtrOutputWithContext(ctx context.Context) FleetScalingConfigurationInputScalingTypePtrOutput { + return FleetScalingConfigurationInputScalingType(e).ToFleetScalingConfigurationInputScalingTypeOutputWithContext(ctx).ToFleetScalingConfigurationInputScalingTypePtrOutputWithContext(ctx) +} + +func (e FleetScalingConfigurationInputScalingType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetScalingConfigurationInputScalingType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetScalingConfigurationInputScalingType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FleetScalingConfigurationInputScalingType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FleetScalingConfigurationInputScalingTypeOutput struct{ *pulumi.OutputState } + +func (FleetScalingConfigurationInputScalingTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetScalingConfigurationInputScalingType)(nil)).Elem() +} + +func (o FleetScalingConfigurationInputScalingTypeOutput) ToFleetScalingConfigurationInputScalingTypeOutput() FleetScalingConfigurationInputScalingTypeOutput { + return o +} + +func (o FleetScalingConfigurationInputScalingTypeOutput) ToFleetScalingConfigurationInputScalingTypeOutputWithContext(ctx context.Context) FleetScalingConfigurationInputScalingTypeOutput { + return o +} + +func (o FleetScalingConfigurationInputScalingTypeOutput) ToFleetScalingConfigurationInputScalingTypePtrOutput() FleetScalingConfigurationInputScalingTypePtrOutput { + return o.ToFleetScalingConfigurationInputScalingTypePtrOutputWithContext(context.Background()) +} + +func (o FleetScalingConfigurationInputScalingTypeOutput) ToFleetScalingConfigurationInputScalingTypePtrOutputWithContext(ctx context.Context) FleetScalingConfigurationInputScalingTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetScalingConfigurationInputScalingType) *FleetScalingConfigurationInputScalingType { + return &v + }).(FleetScalingConfigurationInputScalingTypePtrOutput) +} + +func (o FleetScalingConfigurationInputScalingTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FleetScalingConfigurationInputScalingTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetScalingConfigurationInputScalingType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FleetScalingConfigurationInputScalingTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetScalingConfigurationInputScalingTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetScalingConfigurationInputScalingType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FleetScalingConfigurationInputScalingTypePtrOutput struct{ *pulumi.OutputState } + +func (FleetScalingConfigurationInputScalingTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetScalingConfigurationInputScalingType)(nil)).Elem() +} + +func (o FleetScalingConfigurationInputScalingTypePtrOutput) ToFleetScalingConfigurationInputScalingTypePtrOutput() FleetScalingConfigurationInputScalingTypePtrOutput { + return o +} + +func (o FleetScalingConfigurationInputScalingTypePtrOutput) ToFleetScalingConfigurationInputScalingTypePtrOutputWithContext(ctx context.Context) FleetScalingConfigurationInputScalingTypePtrOutput { + return o +} + +func (o FleetScalingConfigurationInputScalingTypePtrOutput) Elem() FleetScalingConfigurationInputScalingTypeOutput { + return o.ApplyT(func(v *FleetScalingConfigurationInputScalingType) FleetScalingConfigurationInputScalingType { + if v != nil { + return *v + } + var ret FleetScalingConfigurationInputScalingType + return ret + }).(FleetScalingConfigurationInputScalingTypeOutput) +} + +func (o FleetScalingConfigurationInputScalingTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetScalingConfigurationInputScalingTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FleetScalingConfigurationInputScalingType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FleetScalingConfigurationInputScalingTypeInput is an input type that accepts values of the FleetScalingConfigurationInputScalingType enum +// A concrete instance of `FleetScalingConfigurationInputScalingTypeInput` can be one of the following: +// +// FleetScalingConfigurationInputScalingTypeTargetTrackingScaling +type FleetScalingConfigurationInputScalingTypeInput interface { + pulumi.Input + + ToFleetScalingConfigurationInputScalingTypeOutput() FleetScalingConfigurationInputScalingTypeOutput + ToFleetScalingConfigurationInputScalingTypeOutputWithContext(context.Context) FleetScalingConfigurationInputScalingTypeOutput +} + +var fleetScalingConfigurationInputScalingTypePtrType = reflect.TypeOf((**FleetScalingConfigurationInputScalingType)(nil)).Elem() + +type FleetScalingConfigurationInputScalingTypePtrInput interface { + pulumi.Input + + ToFleetScalingConfigurationInputScalingTypePtrOutput() FleetScalingConfigurationInputScalingTypePtrOutput + ToFleetScalingConfigurationInputScalingTypePtrOutputWithContext(context.Context) FleetScalingConfigurationInputScalingTypePtrOutput +} + +type fleetScalingConfigurationInputScalingTypePtr string + +func FleetScalingConfigurationInputScalingTypePtr(v string) FleetScalingConfigurationInputScalingTypePtrInput { + return (*fleetScalingConfigurationInputScalingTypePtr)(&v) +} + +func (*fleetScalingConfigurationInputScalingTypePtr) ElementType() reflect.Type { + return fleetScalingConfigurationInputScalingTypePtrType +} + +func (in *fleetScalingConfigurationInputScalingTypePtr) ToFleetScalingConfigurationInputScalingTypePtrOutput() FleetScalingConfigurationInputScalingTypePtrOutput { + return pulumi.ToOutput(in).(FleetScalingConfigurationInputScalingTypePtrOutput) +} + +func (in *fleetScalingConfigurationInputScalingTypePtr) ToFleetScalingConfigurationInputScalingTypePtrOutputWithContext(ctx context.Context) FleetScalingConfigurationInputScalingTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FleetScalingConfigurationInputScalingTypePtrOutput) +} + +type FleetTargetTrackingScalingConfigurationMetricType string + +const ( + FleetTargetTrackingScalingConfigurationMetricTypeFleetUtilizationRate = FleetTargetTrackingScalingConfigurationMetricType("FLEET_UTILIZATION_RATE") +) + +func (FleetTargetTrackingScalingConfigurationMetricType) ElementType() reflect.Type { + return reflect.TypeOf((*FleetTargetTrackingScalingConfigurationMetricType)(nil)).Elem() +} + +func (e FleetTargetTrackingScalingConfigurationMetricType) ToFleetTargetTrackingScalingConfigurationMetricTypeOutput() FleetTargetTrackingScalingConfigurationMetricTypeOutput { + return pulumi.ToOutput(e).(FleetTargetTrackingScalingConfigurationMetricTypeOutput) +} + +func (e FleetTargetTrackingScalingConfigurationMetricType) ToFleetTargetTrackingScalingConfigurationMetricTypeOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationMetricTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(FleetTargetTrackingScalingConfigurationMetricTypeOutput) +} + +func (e FleetTargetTrackingScalingConfigurationMetricType) ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutput() FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return e.ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutputWithContext(context.Background()) +} + +func (e FleetTargetTrackingScalingConfigurationMetricType) ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return FleetTargetTrackingScalingConfigurationMetricType(e).ToFleetTargetTrackingScalingConfigurationMetricTypeOutputWithContext(ctx).ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutputWithContext(ctx) +} + +func (e FleetTargetTrackingScalingConfigurationMetricType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetTargetTrackingScalingConfigurationMetricType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e FleetTargetTrackingScalingConfigurationMetricType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e FleetTargetTrackingScalingConfigurationMetricType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type FleetTargetTrackingScalingConfigurationMetricTypeOutput struct{ *pulumi.OutputState } + +func (FleetTargetTrackingScalingConfigurationMetricTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetTargetTrackingScalingConfigurationMetricType)(nil)).Elem() +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypeOutput) ToFleetTargetTrackingScalingConfigurationMetricTypeOutput() FleetTargetTrackingScalingConfigurationMetricTypeOutput { + return o +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypeOutput) ToFleetTargetTrackingScalingConfigurationMetricTypeOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationMetricTypeOutput { + return o +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypeOutput) ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutput() FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return o.ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutputWithContext(context.Background()) +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypeOutput) ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetTargetTrackingScalingConfigurationMetricType) *FleetTargetTrackingScalingConfigurationMetricType { + return &v + }).(FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetTargetTrackingScalingConfigurationMetricType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e FleetTargetTrackingScalingConfigurationMetricType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type FleetTargetTrackingScalingConfigurationMetricTypePtrOutput struct{ *pulumi.OutputState } + +func (FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetTargetTrackingScalingConfigurationMetricType)(nil)).Elem() +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutput() FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return o +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return o +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) Elem() FleetTargetTrackingScalingConfigurationMetricTypeOutput { + return o.ApplyT(func(v *FleetTargetTrackingScalingConfigurationMetricType) FleetTargetTrackingScalingConfigurationMetricType { + if v != nil { + return *v + } + var ret FleetTargetTrackingScalingConfigurationMetricType + return ret + }).(FleetTargetTrackingScalingConfigurationMetricTypeOutput) +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *FleetTargetTrackingScalingConfigurationMetricType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// FleetTargetTrackingScalingConfigurationMetricTypeInput is an input type that accepts values of the FleetTargetTrackingScalingConfigurationMetricType enum +// A concrete instance of `FleetTargetTrackingScalingConfigurationMetricTypeInput` can be one of the following: +// +// FleetTargetTrackingScalingConfigurationMetricTypeFleetUtilizationRate +type FleetTargetTrackingScalingConfigurationMetricTypeInput interface { + pulumi.Input + + ToFleetTargetTrackingScalingConfigurationMetricTypeOutput() FleetTargetTrackingScalingConfigurationMetricTypeOutput + ToFleetTargetTrackingScalingConfigurationMetricTypeOutputWithContext(context.Context) FleetTargetTrackingScalingConfigurationMetricTypeOutput +} + +var fleetTargetTrackingScalingConfigurationMetricTypePtrType = reflect.TypeOf((**FleetTargetTrackingScalingConfigurationMetricType)(nil)).Elem() + +type FleetTargetTrackingScalingConfigurationMetricTypePtrInput interface { + pulumi.Input + + ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutput() FleetTargetTrackingScalingConfigurationMetricTypePtrOutput + ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutputWithContext(context.Context) FleetTargetTrackingScalingConfigurationMetricTypePtrOutput +} + +type fleetTargetTrackingScalingConfigurationMetricTypePtr string + +func FleetTargetTrackingScalingConfigurationMetricTypePtr(v string) FleetTargetTrackingScalingConfigurationMetricTypePtrInput { + return (*fleetTargetTrackingScalingConfigurationMetricTypePtr)(&v) +} + +func (*fleetTargetTrackingScalingConfigurationMetricTypePtr) ElementType() reflect.Type { + return fleetTargetTrackingScalingConfigurationMetricTypePtrType +} + +func (in *fleetTargetTrackingScalingConfigurationMetricTypePtr) ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutput() FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return pulumi.ToOutput(in).(FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) +} + +func (in *fleetTargetTrackingScalingConfigurationMetricTypePtr) ToFleetTargetTrackingScalingConfigurationMetricTypePtrOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) +} + func init() { + pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeConfigurationmachineTypeInput)(nil)).Elem(), FleetComputeConfigurationmachineType("GENERAL")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeConfigurationmachineTypePtrInput)(nil)).Elem(), FleetComputeConfigurationmachineType("GENERAL")) pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeTypeInput)(nil)).Elem(), FleetComputeType("BUILD_GENERAL1_SMALL")) pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeTypePtrInput)(nil)).Elem(), FleetComputeType("BUILD_GENERAL1_SMALL")) pulumi.RegisterInputType(reflect.TypeOf((*FleetEnvironmentTypeInput)(nil)).Elem(), FleetEnvironmentType("WINDOWS_SERVER_2019_CONTAINER")) pulumi.RegisterInputType(reflect.TypeOf((*FleetEnvironmentTypePtrInput)(nil)).Elem(), FleetEnvironmentType("WINDOWS_SERVER_2019_CONTAINER")) pulumi.RegisterInputType(reflect.TypeOf((*FleetOverflowBehaviorInput)(nil)).Elem(), FleetOverflowBehavior("QUEUE")) pulumi.RegisterInputType(reflect.TypeOf((*FleetOverflowBehaviorPtrInput)(nil)).Elem(), FleetOverflowBehavior("QUEUE")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyConfigurationDefaultBehaviorInput)(nil)).Elem(), FleetProxyConfigurationDefaultBehavior("ALLOW_ALL")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyConfigurationDefaultBehaviorPtrInput)(nil)).Elem(), FleetProxyConfigurationDefaultBehavior("ALLOW_ALL")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyRuleEffectInput)(nil)).Elem(), FleetProxyRuleEffect("ALLOW")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyRuleEffectPtrInput)(nil)).Elem(), FleetProxyRuleEffect("ALLOW")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyRuleTypeInput)(nil)).Elem(), FleetProxyRuleType("DOMAIN")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyRuleTypePtrInput)(nil)).Elem(), FleetProxyRuleType("DOMAIN")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetScalingConfigurationInputScalingTypeInput)(nil)).Elem(), FleetScalingConfigurationInputScalingType("TARGET_TRACKING_SCALING")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetScalingConfigurationInputScalingTypePtrInput)(nil)).Elem(), FleetScalingConfigurationInputScalingType("TARGET_TRACKING_SCALING")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetTargetTrackingScalingConfigurationMetricTypeInput)(nil)).Elem(), FleetTargetTrackingScalingConfigurationMetricType("FLEET_UTILIZATION_RATE")) + pulumi.RegisterInputType(reflect.TypeOf((*FleetTargetTrackingScalingConfigurationMetricTypePtrInput)(nil)).Elem(), FleetTargetTrackingScalingConfigurationMetricType("FLEET_UTILIZATION_RATE")) + pulumi.RegisterOutputType(FleetComputeConfigurationmachineTypeOutput{}) + pulumi.RegisterOutputType(FleetComputeConfigurationmachineTypePtrOutput{}) pulumi.RegisterOutputType(FleetComputeTypeOutput{}) pulumi.RegisterOutputType(FleetComputeTypePtrOutput{}) pulumi.RegisterOutputType(FleetEnvironmentTypeOutput{}) pulumi.RegisterOutputType(FleetEnvironmentTypePtrOutput{}) pulumi.RegisterOutputType(FleetOverflowBehaviorOutput{}) pulumi.RegisterOutputType(FleetOverflowBehaviorPtrOutput{}) + pulumi.RegisterOutputType(FleetProxyConfigurationDefaultBehaviorOutput{}) + pulumi.RegisterOutputType(FleetProxyConfigurationDefaultBehaviorPtrOutput{}) + pulumi.RegisterOutputType(FleetProxyRuleEffectOutput{}) + pulumi.RegisterOutputType(FleetProxyRuleEffectPtrOutput{}) + pulumi.RegisterOutputType(FleetProxyRuleTypeOutput{}) + pulumi.RegisterOutputType(FleetProxyRuleTypePtrOutput{}) + pulumi.RegisterOutputType(FleetScalingConfigurationInputScalingTypeOutput{}) + pulumi.RegisterOutputType(FleetScalingConfigurationInputScalingTypePtrOutput{}) + pulumi.RegisterOutputType(FleetTargetTrackingScalingConfigurationMetricTypeOutput{}) + pulumi.RegisterOutputType(FleetTargetTrackingScalingConfigurationMetricTypePtrOutput{}) } diff --git a/sdk/go/aws/codebuild/pulumiTypes.go b/sdk/go/aws/codebuild/pulumiTypes.go index 522e44331e..56809ed554 100644 --- a/sdk/go/aws/codebuild/pulumiTypes.go +++ b/sdk/go/aws/codebuild/pulumiTypes.go @@ -13,6 +13,605 @@ import ( var _ = internal.GetEnvOrDefault +type FleetComputeConfiguration struct { + Disk *int `pulumi:"disk"` + MachineType *FleetComputeConfigurationmachineType `pulumi:"machineType"` + Memory *int `pulumi:"memory"` + VCpu *int `pulumi:"vCpu"` +} + +// FleetComputeConfigurationInput is an input type that accepts FleetComputeConfigurationArgs and FleetComputeConfigurationOutput values. +// You can construct a concrete instance of `FleetComputeConfigurationInput` via: +// +// FleetComputeConfigurationArgs{...} +type FleetComputeConfigurationInput interface { + pulumi.Input + + ToFleetComputeConfigurationOutput() FleetComputeConfigurationOutput + ToFleetComputeConfigurationOutputWithContext(context.Context) FleetComputeConfigurationOutput +} + +type FleetComputeConfigurationArgs struct { + Disk pulumi.IntPtrInput `pulumi:"disk"` + MachineType FleetComputeConfigurationmachineTypePtrInput `pulumi:"machineType"` + Memory pulumi.IntPtrInput `pulumi:"memory"` + VCpu pulumi.IntPtrInput `pulumi:"vCpu"` +} + +func (FleetComputeConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*FleetComputeConfiguration)(nil)).Elem() +} + +func (i FleetComputeConfigurationArgs) ToFleetComputeConfigurationOutput() FleetComputeConfigurationOutput { + return i.ToFleetComputeConfigurationOutputWithContext(context.Background()) +} + +func (i FleetComputeConfigurationArgs) ToFleetComputeConfigurationOutputWithContext(ctx context.Context) FleetComputeConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetComputeConfigurationOutput) +} + +func (i FleetComputeConfigurationArgs) ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput { + return i.ToFleetComputeConfigurationPtrOutputWithContext(context.Background()) +} + +func (i FleetComputeConfigurationArgs) ToFleetComputeConfigurationPtrOutputWithContext(ctx context.Context) FleetComputeConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetComputeConfigurationOutput).ToFleetComputeConfigurationPtrOutputWithContext(ctx) +} + +// FleetComputeConfigurationPtrInput is an input type that accepts FleetComputeConfigurationArgs, FleetComputeConfigurationPtr and FleetComputeConfigurationPtrOutput values. +// You can construct a concrete instance of `FleetComputeConfigurationPtrInput` via: +// +// FleetComputeConfigurationArgs{...} +// +// or: +// +// nil +type FleetComputeConfigurationPtrInput interface { + pulumi.Input + + ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput + ToFleetComputeConfigurationPtrOutputWithContext(context.Context) FleetComputeConfigurationPtrOutput +} + +type fleetComputeConfigurationPtrType FleetComputeConfigurationArgs + +func FleetComputeConfigurationPtr(v *FleetComputeConfigurationArgs) FleetComputeConfigurationPtrInput { + return (*fleetComputeConfigurationPtrType)(v) +} + +func (*fleetComputeConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**FleetComputeConfiguration)(nil)).Elem() +} + +func (i *fleetComputeConfigurationPtrType) ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput { + return i.ToFleetComputeConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *fleetComputeConfigurationPtrType) ToFleetComputeConfigurationPtrOutputWithContext(ctx context.Context) FleetComputeConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetComputeConfigurationPtrOutput) +} + +type FleetComputeConfigurationOutput struct{ *pulumi.OutputState } + +func (FleetComputeConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetComputeConfiguration)(nil)).Elem() +} + +func (o FleetComputeConfigurationOutput) ToFleetComputeConfigurationOutput() FleetComputeConfigurationOutput { + return o +} + +func (o FleetComputeConfigurationOutput) ToFleetComputeConfigurationOutputWithContext(ctx context.Context) FleetComputeConfigurationOutput { + return o +} + +func (o FleetComputeConfigurationOutput) ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput { + return o.ToFleetComputeConfigurationPtrOutputWithContext(context.Background()) +} + +func (o FleetComputeConfigurationOutput) ToFleetComputeConfigurationPtrOutputWithContext(ctx context.Context) FleetComputeConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetComputeConfiguration) *FleetComputeConfiguration { + return &v + }).(FleetComputeConfigurationPtrOutput) +} + +func (o FleetComputeConfigurationOutput) Disk() pulumi.IntPtrOutput { + return o.ApplyT(func(v FleetComputeConfiguration) *int { return v.Disk }).(pulumi.IntPtrOutput) +} + +func (o FleetComputeConfigurationOutput) MachineType() FleetComputeConfigurationmachineTypePtrOutput { + return o.ApplyT(func(v FleetComputeConfiguration) *FleetComputeConfigurationmachineType { return v.MachineType }).(FleetComputeConfigurationmachineTypePtrOutput) +} + +func (o FleetComputeConfigurationOutput) Memory() pulumi.IntPtrOutput { + return o.ApplyT(func(v FleetComputeConfiguration) *int { return v.Memory }).(pulumi.IntPtrOutput) +} + +func (o FleetComputeConfigurationOutput) VCpu() pulumi.IntPtrOutput { + return o.ApplyT(func(v FleetComputeConfiguration) *int { return v.VCpu }).(pulumi.IntPtrOutput) +} + +type FleetComputeConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (FleetComputeConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetComputeConfiguration)(nil)).Elem() +} + +func (o FleetComputeConfigurationPtrOutput) ToFleetComputeConfigurationPtrOutput() FleetComputeConfigurationPtrOutput { + return o +} + +func (o FleetComputeConfigurationPtrOutput) ToFleetComputeConfigurationPtrOutputWithContext(ctx context.Context) FleetComputeConfigurationPtrOutput { + return o +} + +func (o FleetComputeConfigurationPtrOutput) Elem() FleetComputeConfigurationOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) FleetComputeConfiguration { + if v != nil { + return *v + } + var ret FleetComputeConfiguration + return ret + }).(FleetComputeConfigurationOutput) +} + +func (o FleetComputeConfigurationPtrOutput) Disk() pulumi.IntPtrOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) *int { + if v == nil { + return nil + } + return v.Disk + }).(pulumi.IntPtrOutput) +} + +func (o FleetComputeConfigurationPtrOutput) MachineType() FleetComputeConfigurationmachineTypePtrOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) *FleetComputeConfigurationmachineType { + if v == nil { + return nil + } + return v.MachineType + }).(FleetComputeConfigurationmachineTypePtrOutput) +} + +func (o FleetComputeConfigurationPtrOutput) Memory() pulumi.IntPtrOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) *int { + if v == nil { + return nil + } + return v.Memory + }).(pulumi.IntPtrOutput) +} + +func (o FleetComputeConfigurationPtrOutput) VCpu() pulumi.IntPtrOutput { + return o.ApplyT(func(v *FleetComputeConfiguration) *int { + if v == nil { + return nil + } + return v.VCpu + }).(pulumi.IntPtrOutput) +} + +type FleetProxyConfiguration struct { + DefaultBehavior *FleetProxyConfigurationDefaultBehavior `pulumi:"defaultBehavior"` + OrderedProxyRules []FleetProxyRule `pulumi:"orderedProxyRules"` +} + +// FleetProxyConfigurationInput is an input type that accepts FleetProxyConfigurationArgs and FleetProxyConfigurationOutput values. +// You can construct a concrete instance of `FleetProxyConfigurationInput` via: +// +// FleetProxyConfigurationArgs{...} +type FleetProxyConfigurationInput interface { + pulumi.Input + + ToFleetProxyConfigurationOutput() FleetProxyConfigurationOutput + ToFleetProxyConfigurationOutputWithContext(context.Context) FleetProxyConfigurationOutput +} + +type FleetProxyConfigurationArgs struct { + DefaultBehavior FleetProxyConfigurationDefaultBehaviorPtrInput `pulumi:"defaultBehavior"` + OrderedProxyRules FleetProxyRuleArrayInput `pulumi:"orderedProxyRules"` +} + +func (FleetProxyConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyConfiguration)(nil)).Elem() +} + +func (i FleetProxyConfigurationArgs) ToFleetProxyConfigurationOutput() FleetProxyConfigurationOutput { + return i.ToFleetProxyConfigurationOutputWithContext(context.Background()) +} + +func (i FleetProxyConfigurationArgs) ToFleetProxyConfigurationOutputWithContext(ctx context.Context) FleetProxyConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetProxyConfigurationOutput) +} + +func (i FleetProxyConfigurationArgs) ToFleetProxyConfigurationPtrOutput() FleetProxyConfigurationPtrOutput { + return i.ToFleetProxyConfigurationPtrOutputWithContext(context.Background()) +} + +func (i FleetProxyConfigurationArgs) ToFleetProxyConfigurationPtrOutputWithContext(ctx context.Context) FleetProxyConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetProxyConfigurationOutput).ToFleetProxyConfigurationPtrOutputWithContext(ctx) +} + +// FleetProxyConfigurationPtrInput is an input type that accepts FleetProxyConfigurationArgs, FleetProxyConfigurationPtr and FleetProxyConfigurationPtrOutput values. +// You can construct a concrete instance of `FleetProxyConfigurationPtrInput` via: +// +// FleetProxyConfigurationArgs{...} +// +// or: +// +// nil +type FleetProxyConfigurationPtrInput interface { + pulumi.Input + + ToFleetProxyConfigurationPtrOutput() FleetProxyConfigurationPtrOutput + ToFleetProxyConfigurationPtrOutputWithContext(context.Context) FleetProxyConfigurationPtrOutput +} + +type fleetProxyConfigurationPtrType FleetProxyConfigurationArgs + +func FleetProxyConfigurationPtr(v *FleetProxyConfigurationArgs) FleetProxyConfigurationPtrInput { + return (*fleetProxyConfigurationPtrType)(v) +} + +func (*fleetProxyConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**FleetProxyConfiguration)(nil)).Elem() +} + +func (i *fleetProxyConfigurationPtrType) ToFleetProxyConfigurationPtrOutput() FleetProxyConfigurationPtrOutput { + return i.ToFleetProxyConfigurationPtrOutputWithContext(context.Background()) +} + +func (i *fleetProxyConfigurationPtrType) ToFleetProxyConfigurationPtrOutputWithContext(ctx context.Context) FleetProxyConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetProxyConfigurationPtrOutput) +} + +type FleetProxyConfigurationOutput struct{ *pulumi.OutputState } + +func (FleetProxyConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyConfiguration)(nil)).Elem() +} + +func (o FleetProxyConfigurationOutput) ToFleetProxyConfigurationOutput() FleetProxyConfigurationOutput { + return o +} + +func (o FleetProxyConfigurationOutput) ToFleetProxyConfigurationOutputWithContext(ctx context.Context) FleetProxyConfigurationOutput { + return o +} + +func (o FleetProxyConfigurationOutput) ToFleetProxyConfigurationPtrOutput() FleetProxyConfigurationPtrOutput { + return o.ToFleetProxyConfigurationPtrOutputWithContext(context.Background()) +} + +func (o FleetProxyConfigurationOutput) ToFleetProxyConfigurationPtrOutputWithContext(ctx context.Context) FleetProxyConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetProxyConfiguration) *FleetProxyConfiguration { + return &v + }).(FleetProxyConfigurationPtrOutput) +} + +func (o FleetProxyConfigurationOutput) DefaultBehavior() FleetProxyConfigurationDefaultBehaviorPtrOutput { + return o.ApplyT(func(v FleetProxyConfiguration) *FleetProxyConfigurationDefaultBehavior { return v.DefaultBehavior }).(FleetProxyConfigurationDefaultBehaviorPtrOutput) +} + +func (o FleetProxyConfigurationOutput) OrderedProxyRules() FleetProxyRuleArrayOutput { + return o.ApplyT(func(v FleetProxyConfiguration) []FleetProxyRule { return v.OrderedProxyRules }).(FleetProxyRuleArrayOutput) +} + +type FleetProxyConfigurationPtrOutput struct{ *pulumi.OutputState } + +func (FleetProxyConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetProxyConfiguration)(nil)).Elem() +} + +func (o FleetProxyConfigurationPtrOutput) ToFleetProxyConfigurationPtrOutput() FleetProxyConfigurationPtrOutput { + return o +} + +func (o FleetProxyConfigurationPtrOutput) ToFleetProxyConfigurationPtrOutputWithContext(ctx context.Context) FleetProxyConfigurationPtrOutput { + return o +} + +func (o FleetProxyConfigurationPtrOutput) Elem() FleetProxyConfigurationOutput { + return o.ApplyT(func(v *FleetProxyConfiguration) FleetProxyConfiguration { + if v != nil { + return *v + } + var ret FleetProxyConfiguration + return ret + }).(FleetProxyConfigurationOutput) +} + +func (o FleetProxyConfigurationPtrOutput) DefaultBehavior() FleetProxyConfigurationDefaultBehaviorPtrOutput { + return o.ApplyT(func(v *FleetProxyConfiguration) *FleetProxyConfigurationDefaultBehavior { + if v == nil { + return nil + } + return v.DefaultBehavior + }).(FleetProxyConfigurationDefaultBehaviorPtrOutput) +} + +func (o FleetProxyConfigurationPtrOutput) OrderedProxyRules() FleetProxyRuleArrayOutput { + return o.ApplyT(func(v *FleetProxyConfiguration) []FleetProxyRule { + if v == nil { + return nil + } + return v.OrderedProxyRules + }).(FleetProxyRuleArrayOutput) +} + +type FleetProxyRule struct { + Effect *FleetProxyRuleEffect `pulumi:"effect"` + Entities []string `pulumi:"entities"` + Type *FleetProxyRuleType `pulumi:"type"` +} + +// FleetProxyRuleInput is an input type that accepts FleetProxyRuleArgs and FleetProxyRuleOutput values. +// You can construct a concrete instance of `FleetProxyRuleInput` via: +// +// FleetProxyRuleArgs{...} +type FleetProxyRuleInput interface { + pulumi.Input + + ToFleetProxyRuleOutput() FleetProxyRuleOutput + ToFleetProxyRuleOutputWithContext(context.Context) FleetProxyRuleOutput +} + +type FleetProxyRuleArgs struct { + Effect FleetProxyRuleEffectPtrInput `pulumi:"effect"` + Entities pulumi.StringArrayInput `pulumi:"entities"` + Type FleetProxyRuleTypePtrInput `pulumi:"type"` +} + +func (FleetProxyRuleArgs) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyRule)(nil)).Elem() +} + +func (i FleetProxyRuleArgs) ToFleetProxyRuleOutput() FleetProxyRuleOutput { + return i.ToFleetProxyRuleOutputWithContext(context.Background()) +} + +func (i FleetProxyRuleArgs) ToFleetProxyRuleOutputWithContext(ctx context.Context) FleetProxyRuleOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetProxyRuleOutput) +} + +// FleetProxyRuleArrayInput is an input type that accepts FleetProxyRuleArray and FleetProxyRuleArrayOutput values. +// You can construct a concrete instance of `FleetProxyRuleArrayInput` via: +// +// FleetProxyRuleArray{ FleetProxyRuleArgs{...} } +type FleetProxyRuleArrayInput interface { + pulumi.Input + + ToFleetProxyRuleArrayOutput() FleetProxyRuleArrayOutput + ToFleetProxyRuleArrayOutputWithContext(context.Context) FleetProxyRuleArrayOutput +} + +type FleetProxyRuleArray []FleetProxyRuleInput + +func (FleetProxyRuleArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]FleetProxyRule)(nil)).Elem() +} + +func (i FleetProxyRuleArray) ToFleetProxyRuleArrayOutput() FleetProxyRuleArrayOutput { + return i.ToFleetProxyRuleArrayOutputWithContext(context.Background()) +} + +func (i FleetProxyRuleArray) ToFleetProxyRuleArrayOutputWithContext(ctx context.Context) FleetProxyRuleArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetProxyRuleArrayOutput) +} + +type FleetProxyRuleOutput struct{ *pulumi.OutputState } + +func (FleetProxyRuleOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetProxyRule)(nil)).Elem() +} + +func (o FleetProxyRuleOutput) ToFleetProxyRuleOutput() FleetProxyRuleOutput { + return o +} + +func (o FleetProxyRuleOutput) ToFleetProxyRuleOutputWithContext(ctx context.Context) FleetProxyRuleOutput { + return o +} + +func (o FleetProxyRuleOutput) Effect() FleetProxyRuleEffectPtrOutput { + return o.ApplyT(func(v FleetProxyRule) *FleetProxyRuleEffect { return v.Effect }).(FleetProxyRuleEffectPtrOutput) +} + +func (o FleetProxyRuleOutput) Entities() pulumi.StringArrayOutput { + return o.ApplyT(func(v FleetProxyRule) []string { return v.Entities }).(pulumi.StringArrayOutput) +} + +func (o FleetProxyRuleOutput) Type() FleetProxyRuleTypePtrOutput { + return o.ApplyT(func(v FleetProxyRule) *FleetProxyRuleType { return v.Type }).(FleetProxyRuleTypePtrOutput) +} + +type FleetProxyRuleArrayOutput struct{ *pulumi.OutputState } + +func (FleetProxyRuleArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]FleetProxyRule)(nil)).Elem() +} + +func (o FleetProxyRuleArrayOutput) ToFleetProxyRuleArrayOutput() FleetProxyRuleArrayOutput { + return o +} + +func (o FleetProxyRuleArrayOutput) ToFleetProxyRuleArrayOutputWithContext(ctx context.Context) FleetProxyRuleArrayOutput { + return o +} + +func (o FleetProxyRuleArrayOutput) Index(i pulumi.IntInput) FleetProxyRuleOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) FleetProxyRule { + return vs[0].([]FleetProxyRule)[vs[1].(int)] + }).(FleetProxyRuleOutput) +} + +type FleetScalingConfigurationInput struct { + MaxCapacity *int `pulumi:"maxCapacity"` + ScalingType *FleetScalingConfigurationInputScalingType `pulumi:"scalingType"` + TargetTrackingScalingConfigs []FleetTargetTrackingScalingConfiguration `pulumi:"targetTrackingScalingConfigs"` +} + +// FleetScalingConfigurationInputInput is an input type that accepts FleetScalingConfigurationInputArgs and FleetScalingConfigurationInputOutput values. +// You can construct a concrete instance of `FleetScalingConfigurationInputInput` via: +// +// FleetScalingConfigurationInputArgs{...} +type FleetScalingConfigurationInputInput interface { + pulumi.Input + + ToFleetScalingConfigurationInputOutput() FleetScalingConfigurationInputOutput + ToFleetScalingConfigurationInputOutputWithContext(context.Context) FleetScalingConfigurationInputOutput +} + +type FleetScalingConfigurationInputArgs struct { + MaxCapacity pulumi.IntPtrInput `pulumi:"maxCapacity"` + ScalingType FleetScalingConfigurationInputScalingTypePtrInput `pulumi:"scalingType"` + TargetTrackingScalingConfigs FleetTargetTrackingScalingConfigurationArrayInput `pulumi:"targetTrackingScalingConfigs"` +} + +func (FleetScalingConfigurationInputArgs) ElementType() reflect.Type { + return reflect.TypeOf((*FleetScalingConfigurationInput)(nil)).Elem() +} + +func (i FleetScalingConfigurationInputArgs) ToFleetScalingConfigurationInputOutput() FleetScalingConfigurationInputOutput { + return i.ToFleetScalingConfigurationInputOutputWithContext(context.Background()) +} + +func (i FleetScalingConfigurationInputArgs) ToFleetScalingConfigurationInputOutputWithContext(ctx context.Context) FleetScalingConfigurationInputOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetScalingConfigurationInputOutput) +} + +func (i FleetScalingConfigurationInputArgs) ToFleetScalingConfigurationInputPtrOutput() FleetScalingConfigurationInputPtrOutput { + return i.ToFleetScalingConfigurationInputPtrOutputWithContext(context.Background()) +} + +func (i FleetScalingConfigurationInputArgs) ToFleetScalingConfigurationInputPtrOutputWithContext(ctx context.Context) FleetScalingConfigurationInputPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetScalingConfigurationInputOutput).ToFleetScalingConfigurationInputPtrOutputWithContext(ctx) +} + +// FleetScalingConfigurationInputPtrInput is an input type that accepts FleetScalingConfigurationInputArgs, FleetScalingConfigurationInputPtr and FleetScalingConfigurationInputPtrOutput values. +// You can construct a concrete instance of `FleetScalingConfigurationInputPtrInput` via: +// +// FleetScalingConfigurationInputArgs{...} +// +// or: +// +// nil +type FleetScalingConfigurationInputPtrInput interface { + pulumi.Input + + ToFleetScalingConfigurationInputPtrOutput() FleetScalingConfigurationInputPtrOutput + ToFleetScalingConfigurationInputPtrOutputWithContext(context.Context) FleetScalingConfigurationInputPtrOutput +} + +type fleetScalingConfigurationInputPtrType FleetScalingConfigurationInputArgs + +func FleetScalingConfigurationInputPtr(v *FleetScalingConfigurationInputArgs) FleetScalingConfigurationInputPtrInput { + return (*fleetScalingConfigurationInputPtrType)(v) +} + +func (*fleetScalingConfigurationInputPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**FleetScalingConfigurationInput)(nil)).Elem() +} + +func (i *fleetScalingConfigurationInputPtrType) ToFleetScalingConfigurationInputPtrOutput() FleetScalingConfigurationInputPtrOutput { + return i.ToFleetScalingConfigurationInputPtrOutputWithContext(context.Background()) +} + +func (i *fleetScalingConfigurationInputPtrType) ToFleetScalingConfigurationInputPtrOutputWithContext(ctx context.Context) FleetScalingConfigurationInputPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetScalingConfigurationInputPtrOutput) +} + +type FleetScalingConfigurationInputOutput struct{ *pulumi.OutputState } + +func (FleetScalingConfigurationInputOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetScalingConfigurationInput)(nil)).Elem() +} + +func (o FleetScalingConfigurationInputOutput) ToFleetScalingConfigurationInputOutput() FleetScalingConfigurationInputOutput { + return o +} + +func (o FleetScalingConfigurationInputOutput) ToFleetScalingConfigurationInputOutputWithContext(ctx context.Context) FleetScalingConfigurationInputOutput { + return o +} + +func (o FleetScalingConfigurationInputOutput) ToFleetScalingConfigurationInputPtrOutput() FleetScalingConfigurationInputPtrOutput { + return o.ToFleetScalingConfigurationInputPtrOutputWithContext(context.Background()) +} + +func (o FleetScalingConfigurationInputOutput) ToFleetScalingConfigurationInputPtrOutputWithContext(ctx context.Context) FleetScalingConfigurationInputPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetScalingConfigurationInput) *FleetScalingConfigurationInput { + return &v + }).(FleetScalingConfigurationInputPtrOutput) +} + +func (o FleetScalingConfigurationInputOutput) MaxCapacity() pulumi.IntPtrOutput { + return o.ApplyT(func(v FleetScalingConfigurationInput) *int { return v.MaxCapacity }).(pulumi.IntPtrOutput) +} + +func (o FleetScalingConfigurationInputOutput) ScalingType() FleetScalingConfigurationInputScalingTypePtrOutput { + return o.ApplyT(func(v FleetScalingConfigurationInput) *FleetScalingConfigurationInputScalingType { + return v.ScalingType + }).(FleetScalingConfigurationInputScalingTypePtrOutput) +} + +func (o FleetScalingConfigurationInputOutput) TargetTrackingScalingConfigs() FleetTargetTrackingScalingConfigurationArrayOutput { + return o.ApplyT(func(v FleetScalingConfigurationInput) []FleetTargetTrackingScalingConfiguration { + return v.TargetTrackingScalingConfigs + }).(FleetTargetTrackingScalingConfigurationArrayOutput) +} + +type FleetScalingConfigurationInputPtrOutput struct{ *pulumi.OutputState } + +func (FleetScalingConfigurationInputPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetScalingConfigurationInput)(nil)).Elem() +} + +func (o FleetScalingConfigurationInputPtrOutput) ToFleetScalingConfigurationInputPtrOutput() FleetScalingConfigurationInputPtrOutput { + return o +} + +func (o FleetScalingConfigurationInputPtrOutput) ToFleetScalingConfigurationInputPtrOutputWithContext(ctx context.Context) FleetScalingConfigurationInputPtrOutput { + return o +} + +func (o FleetScalingConfigurationInputPtrOutput) Elem() FleetScalingConfigurationInputOutput { + return o.ApplyT(func(v *FleetScalingConfigurationInput) FleetScalingConfigurationInput { + if v != nil { + return *v + } + var ret FleetScalingConfigurationInput + return ret + }).(FleetScalingConfigurationInputOutput) +} + +func (o FleetScalingConfigurationInputPtrOutput) MaxCapacity() pulumi.IntPtrOutput { + return o.ApplyT(func(v *FleetScalingConfigurationInput) *int { + if v == nil { + return nil + } + return v.MaxCapacity + }).(pulumi.IntPtrOutput) +} + +func (o FleetScalingConfigurationInputPtrOutput) ScalingType() FleetScalingConfigurationInputScalingTypePtrOutput { + return o.ApplyT(func(v *FleetScalingConfigurationInput) *FleetScalingConfigurationInputScalingType { + if v == nil { + return nil + } + return v.ScalingType + }).(FleetScalingConfigurationInputScalingTypePtrOutput) +} + +func (o FleetScalingConfigurationInputPtrOutput) TargetTrackingScalingConfigs() FleetTargetTrackingScalingConfigurationArrayOutput { + return o.ApplyT(func(v *FleetScalingConfigurationInput) []FleetTargetTrackingScalingConfiguration { + if v == nil { + return nil + } + return v.TargetTrackingScalingConfigs + }).(FleetTargetTrackingScalingConfigurationArrayOutput) +} + type FleetTag 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"` @@ -20,6 +619,108 @@ type FleetTag struct { Value string `pulumi:"value"` } +type FleetTargetTrackingScalingConfiguration struct { + MetricType *FleetTargetTrackingScalingConfigurationMetricType `pulumi:"metricType"` + TargetValue *float64 `pulumi:"targetValue"` +} + +// FleetTargetTrackingScalingConfigurationInput is an input type that accepts FleetTargetTrackingScalingConfigurationArgs and FleetTargetTrackingScalingConfigurationOutput values. +// You can construct a concrete instance of `FleetTargetTrackingScalingConfigurationInput` via: +// +// FleetTargetTrackingScalingConfigurationArgs{...} +type FleetTargetTrackingScalingConfigurationInput interface { + pulumi.Input + + ToFleetTargetTrackingScalingConfigurationOutput() FleetTargetTrackingScalingConfigurationOutput + ToFleetTargetTrackingScalingConfigurationOutputWithContext(context.Context) FleetTargetTrackingScalingConfigurationOutput +} + +type FleetTargetTrackingScalingConfigurationArgs struct { + MetricType FleetTargetTrackingScalingConfigurationMetricTypePtrInput `pulumi:"metricType"` + TargetValue pulumi.Float64PtrInput `pulumi:"targetValue"` +} + +func (FleetTargetTrackingScalingConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*FleetTargetTrackingScalingConfiguration)(nil)).Elem() +} + +func (i FleetTargetTrackingScalingConfigurationArgs) ToFleetTargetTrackingScalingConfigurationOutput() FleetTargetTrackingScalingConfigurationOutput { + return i.ToFleetTargetTrackingScalingConfigurationOutputWithContext(context.Background()) +} + +func (i FleetTargetTrackingScalingConfigurationArgs) ToFleetTargetTrackingScalingConfigurationOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetTargetTrackingScalingConfigurationOutput) +} + +// FleetTargetTrackingScalingConfigurationArrayInput is an input type that accepts FleetTargetTrackingScalingConfigurationArray and FleetTargetTrackingScalingConfigurationArrayOutput values. +// You can construct a concrete instance of `FleetTargetTrackingScalingConfigurationArrayInput` via: +// +// FleetTargetTrackingScalingConfigurationArray{ FleetTargetTrackingScalingConfigurationArgs{...} } +type FleetTargetTrackingScalingConfigurationArrayInput interface { + pulumi.Input + + ToFleetTargetTrackingScalingConfigurationArrayOutput() FleetTargetTrackingScalingConfigurationArrayOutput + ToFleetTargetTrackingScalingConfigurationArrayOutputWithContext(context.Context) FleetTargetTrackingScalingConfigurationArrayOutput +} + +type FleetTargetTrackingScalingConfigurationArray []FleetTargetTrackingScalingConfigurationInput + +func (FleetTargetTrackingScalingConfigurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]FleetTargetTrackingScalingConfiguration)(nil)).Elem() +} + +func (i FleetTargetTrackingScalingConfigurationArray) ToFleetTargetTrackingScalingConfigurationArrayOutput() FleetTargetTrackingScalingConfigurationArrayOutput { + return i.ToFleetTargetTrackingScalingConfigurationArrayOutputWithContext(context.Background()) +} + +func (i FleetTargetTrackingScalingConfigurationArray) ToFleetTargetTrackingScalingConfigurationArrayOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetTargetTrackingScalingConfigurationArrayOutput) +} + +type FleetTargetTrackingScalingConfigurationOutput struct{ *pulumi.OutputState } + +func (FleetTargetTrackingScalingConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetTargetTrackingScalingConfiguration)(nil)).Elem() +} + +func (o FleetTargetTrackingScalingConfigurationOutput) ToFleetTargetTrackingScalingConfigurationOutput() FleetTargetTrackingScalingConfigurationOutput { + return o +} + +func (o FleetTargetTrackingScalingConfigurationOutput) ToFleetTargetTrackingScalingConfigurationOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationOutput { + return o +} + +func (o FleetTargetTrackingScalingConfigurationOutput) MetricType() FleetTargetTrackingScalingConfigurationMetricTypePtrOutput { + return o.ApplyT(func(v FleetTargetTrackingScalingConfiguration) *FleetTargetTrackingScalingConfigurationMetricType { + return v.MetricType + }).(FleetTargetTrackingScalingConfigurationMetricTypePtrOutput) +} + +func (o FleetTargetTrackingScalingConfigurationOutput) TargetValue() pulumi.Float64PtrOutput { + return o.ApplyT(func(v FleetTargetTrackingScalingConfiguration) *float64 { return v.TargetValue }).(pulumi.Float64PtrOutput) +} + +type FleetTargetTrackingScalingConfigurationArrayOutput struct{ *pulumi.OutputState } + +func (FleetTargetTrackingScalingConfigurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]FleetTargetTrackingScalingConfiguration)(nil)).Elem() +} + +func (o FleetTargetTrackingScalingConfigurationArrayOutput) ToFleetTargetTrackingScalingConfigurationArrayOutput() FleetTargetTrackingScalingConfigurationArrayOutput { + return o +} + +func (o FleetTargetTrackingScalingConfigurationArrayOutput) ToFleetTargetTrackingScalingConfigurationArrayOutputWithContext(ctx context.Context) FleetTargetTrackingScalingConfigurationArrayOutput { + return o +} + +func (o FleetTargetTrackingScalingConfigurationArrayOutput) Index(i pulumi.IntInput) FleetTargetTrackingScalingConfigurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) FleetTargetTrackingScalingConfiguration { + return vs[0].([]FleetTargetTrackingScalingConfiguration)[vs[1].(int)] + }).(FleetTargetTrackingScalingConfigurationOutput) +} + type FleetVpcConfig struct { // A list of one or more security groups IDs in your Amazon VPC. SecurityGroupIds []string `pulumi:"securityGroupIds"` @@ -196,8 +897,28 @@ func (o FleetVpcConfigPtrOutput) VpcId() pulumi.StringPtrOutput { } func init() { + pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeConfigurationInput)(nil)).Elem(), FleetComputeConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetComputeConfigurationPtrInput)(nil)).Elem(), FleetComputeConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyConfigurationInput)(nil)).Elem(), FleetProxyConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyConfigurationPtrInput)(nil)).Elem(), FleetProxyConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyRuleInput)(nil)).Elem(), FleetProxyRuleArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetProxyRuleArrayInput)(nil)).Elem(), FleetProxyRuleArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetScalingConfigurationInputInput)(nil)).Elem(), FleetScalingConfigurationInputArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetScalingConfigurationInputPtrInput)(nil)).Elem(), FleetScalingConfigurationInputArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetTargetTrackingScalingConfigurationInput)(nil)).Elem(), FleetTargetTrackingScalingConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*FleetTargetTrackingScalingConfigurationArrayInput)(nil)).Elem(), FleetTargetTrackingScalingConfigurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetVpcConfigInput)(nil)).Elem(), FleetVpcConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetVpcConfigPtrInput)(nil)).Elem(), FleetVpcConfigArgs{}) + pulumi.RegisterOutputType(FleetComputeConfigurationOutput{}) + pulumi.RegisterOutputType(FleetComputeConfigurationPtrOutput{}) + pulumi.RegisterOutputType(FleetProxyConfigurationOutput{}) + pulumi.RegisterOutputType(FleetProxyConfigurationPtrOutput{}) + pulumi.RegisterOutputType(FleetProxyRuleOutput{}) + pulumi.RegisterOutputType(FleetProxyRuleArrayOutput{}) + pulumi.RegisterOutputType(FleetScalingConfigurationInputOutput{}) + pulumi.RegisterOutputType(FleetScalingConfigurationInputPtrOutput{}) + pulumi.RegisterOutputType(FleetTargetTrackingScalingConfigurationOutput{}) + pulumi.RegisterOutputType(FleetTargetTrackingScalingConfigurationArrayOutput{}) pulumi.RegisterOutputType(FleetVpcConfigOutput{}) pulumi.RegisterOutputType(FleetVpcConfigPtrOutput{}) } diff --git a/sdk/go/aws/dynamodb/getGlobalTable.go b/sdk/go/aws/dynamodb/getGlobalTable.go index 76bde4dd54..7c8a2df14c 100644 --- a/sdk/go/aws/dynamodb/getGlobalTable.go +++ b/sdk/go/aws/dynamodb/getGlobalTable.go @@ -65,7 +65,7 @@ type LookupGlobalTableResult struct { TableId *string `pulumi:"tableId"` // Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas. TimeToLiveSpecification *GlobalTableTimeToLiveSpecification `pulumi:"timeToLiveSpecification"` - // Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + // Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . WriteOnDemandThroughputSettings *GlobalTableWriteOnDemandThroughputSettings `pulumi:"writeOnDemandThroughputSettings"` // Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if `BillingMode` is set to `PROVISIONED` . WriteProvisionedThroughputSettings *GlobalTableWriteProvisionedThroughputSettings `pulumi:"writeProvisionedThroughputSettings"` @@ -180,7 +180,7 @@ func (o LookupGlobalTableResultOutput) TimeToLiveSpecification() GlobalTableTime return o.ApplyT(func(v LookupGlobalTableResult) *GlobalTableTimeToLiveSpecification { return v.TimeToLiveSpecification }).(GlobalTableTimeToLiveSpecificationPtrOutput) } -// Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . +// Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . func (o LookupGlobalTableResultOutput) WriteOnDemandThroughputSettings() GlobalTableWriteOnDemandThroughputSettingsPtrOutput { return o.ApplyT(func(v LookupGlobalTableResult) *GlobalTableWriteOnDemandThroughputSettings { return v.WriteOnDemandThroughputSettings diff --git a/sdk/go/aws/dynamodb/globalTable.go b/sdk/go/aws/dynamodb/globalTable.go index ca7895b739..c01f46ee57 100644 --- a/sdk/go/aws/dynamodb/globalTable.go +++ b/sdk/go/aws/dynamodb/globalTable.go @@ -59,7 +59,7 @@ type GlobalTable struct { TableName pulumi.StringPtrOutput `pulumi:"tableName"` // Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas. TimeToLiveSpecification GlobalTableTimeToLiveSpecificationPtrOutput `pulumi:"timeToLiveSpecification"` - // Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + // Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . WriteOnDemandThroughputSettings GlobalTableWriteOnDemandThroughputSettingsPtrOutput `pulumi:"writeOnDemandThroughputSettings"` // Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if `BillingMode` is set to `PROVISIONED` . WriteProvisionedThroughputSettings GlobalTableWriteProvisionedThroughputSettingsPtrOutput `pulumi:"writeProvisionedThroughputSettings"` @@ -155,7 +155,7 @@ type globalTableArgs struct { TableName *string `pulumi:"tableName"` // Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas. TimeToLiveSpecification *GlobalTableTimeToLiveSpecification `pulumi:"timeToLiveSpecification"` - // Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + // Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . WriteOnDemandThroughputSettings *GlobalTableWriteOnDemandThroughputSettings `pulumi:"writeOnDemandThroughputSettings"` // Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if `BillingMode` is set to `PROVISIONED` . WriteProvisionedThroughputSettings *GlobalTableWriteProvisionedThroughputSettings `pulumi:"writeProvisionedThroughputSettings"` @@ -198,7 +198,7 @@ type GlobalTableArgs struct { TableName pulumi.StringPtrInput // Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas. TimeToLiveSpecification GlobalTableTimeToLiveSpecificationPtrInput - // Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + // Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . WriteOnDemandThroughputSettings GlobalTableWriteOnDemandThroughputSettingsPtrInput // Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if `BillingMode` is set to `PROVISIONED` . WriteProvisionedThroughputSettings GlobalTableWriteProvisionedThroughputSettingsPtrInput @@ -323,7 +323,7 @@ func (o GlobalTableOutput) TimeToLiveSpecification() GlobalTableTimeToLiveSpecif return o.ApplyT(func(v *GlobalTable) GlobalTableTimeToLiveSpecificationPtrOutput { return v.TimeToLiveSpecification }).(GlobalTableTimeToLiveSpecificationPtrOutput) } -// Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . +// Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . func (o GlobalTableOutput) WriteOnDemandThroughputSettings() GlobalTableWriteOnDemandThroughputSettingsPtrOutput { return o.ApplyT(func(v *GlobalTable) GlobalTableWriteOnDemandThroughputSettingsPtrOutput { return v.WriteOnDemandThroughputSettings diff --git a/sdk/go/aws/dynamodb/pulumiTypes.go b/sdk/go/aws/dynamodb/pulumiTypes.go index 304dd338b0..2f8054d0b3 100644 --- a/sdk/go/aws/dynamodb/pulumiTypes.go +++ b/sdk/go/aws/dynamodb/pulumiTypes.go @@ -494,7 +494,7 @@ type GlobalTableGlobalSecondaryIndex struct { KeySchema []GlobalTableKeySchema `pulumi:"keySchema"` // Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected. Projection GlobalTableProjection `pulumi:"projection"` - // Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + // Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . WriteOnDemandThroughputSettings *GlobalTableWriteOnDemandThroughputSettings `pulumi:"writeOnDemandThroughputSettings"` // Defines write capacity settings for the global secondary index. You must specify a value for this property if the table's `BillingMode` is `PROVISIONED` . All replicas will have the same write capacity settings for this global secondary index. WriteProvisionedThroughputSettings *GlobalTableWriteProvisionedThroughputSettings `pulumi:"writeProvisionedThroughputSettings"` @@ -525,7 +525,7 @@ type GlobalTableGlobalSecondaryIndexArgs struct { KeySchema GlobalTableKeySchemaArrayInput `pulumi:"keySchema"` // Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected. Projection GlobalTableProjectionInput `pulumi:"projection"` - // Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + // Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . WriteOnDemandThroughputSettings GlobalTableWriteOnDemandThroughputSettingsPtrInput `pulumi:"writeOnDemandThroughputSettings"` // Defines write capacity settings for the global secondary index. You must specify a value for this property if the table's `BillingMode` is `PROVISIONED` . All replicas will have the same write capacity settings for this global secondary index. WriteProvisionedThroughputSettings GlobalTableWriteProvisionedThroughputSettingsPtrInput `pulumi:"writeProvisionedThroughputSettings"` @@ -604,7 +604,7 @@ func (o GlobalTableGlobalSecondaryIndexOutput) Projection() GlobalTableProjectio return o.ApplyT(func(v GlobalTableGlobalSecondaryIndex) GlobalTableProjection { return v.Projection }).(GlobalTableProjectionOutput) } -// Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . +// Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . func (o GlobalTableGlobalSecondaryIndexOutput) WriteOnDemandThroughputSettings() GlobalTableWriteOnDemandThroughputSettingsPtrOutput { return o.ApplyT(func(v GlobalTableGlobalSecondaryIndex) *GlobalTableWriteOnDemandThroughputSettings { return v.WriteOnDemandThroughputSettings @@ -1581,7 +1581,7 @@ type GlobalTableReplicaGlobalSecondaryIndexSpecification struct { ContributorInsightsSpecification *GlobalTableContributorInsightsSpecification `pulumi:"contributorInsightsSpecification"` // The name of the global secondary index. The name must be unique among all other indexes on this table. IndexName string `pulumi:"indexName"` - // Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + // Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . ReadOnDemandThroughputSettings *GlobalTableReadOnDemandThroughputSettings `pulumi:"readOnDemandThroughputSettings"` // Allows you to specify the read capacity settings for a replica global secondary index when the `BillingMode` is set to `PROVISIONED` . ReadProvisionedThroughputSettings *GlobalTableReadProvisionedThroughputSettings `pulumi:"readProvisionedThroughputSettings"` @@ -1603,7 +1603,7 @@ type GlobalTableReplicaGlobalSecondaryIndexSpecificationArgs struct { ContributorInsightsSpecification GlobalTableContributorInsightsSpecificationPtrInput `pulumi:"contributorInsightsSpecification"` // The name of the global secondary index. The name must be unique among all other indexes on this table. IndexName pulumi.StringInput `pulumi:"indexName"` - // Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + // Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . ReadOnDemandThroughputSettings GlobalTableReadOnDemandThroughputSettingsPtrInput `pulumi:"readOnDemandThroughputSettings"` // Allows you to specify the read capacity settings for a replica global secondary index when the `BillingMode` is set to `PROVISIONED` . ReadProvisionedThroughputSettings GlobalTableReadProvisionedThroughputSettingsPtrInput `pulumi:"readProvisionedThroughputSettings"` @@ -1672,7 +1672,7 @@ func (o GlobalTableReplicaGlobalSecondaryIndexSpecificationOutput) IndexName() p return o.ApplyT(func(v GlobalTableReplicaGlobalSecondaryIndexSpecification) string { return v.IndexName }).(pulumi.StringOutput) } -// Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . +// Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . func (o GlobalTableReplicaGlobalSecondaryIndexSpecificationOutput) ReadOnDemandThroughputSettings() GlobalTableReadOnDemandThroughputSettingsPtrOutput { return o.ApplyT(func(v GlobalTableReplicaGlobalSecondaryIndexSpecification) *GlobalTableReadOnDemandThroughputSettings { return v.ReadOnDemandThroughputSettings diff --git a/sdk/go/aws/ec2/capacityReservation.go b/sdk/go/aws/ec2/capacityReservation.go index a1aee9e63e..ff2950b22b 100644 --- a/sdk/go/aws/ec2/capacityReservation.go +++ b/sdk/go/aws/ec2/capacityReservation.go @@ -65,7 +65,9 @@ type CapacityReservation struct { Tenancy pulumi.StringPtrOutput `pulumi:"tenancy"` // Returns the total number of instances for which the Capacity Reservation reserves capacity. For example: `15` . TotalInstanceCount pulumi.IntOutput `pulumi:"totalInstanceCount"` - // The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + // The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + // + // You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . UnusedReservationBillingOwnerId pulumi.StringPtrOutput `pulumi:"unusedReservationBillingOwnerId"` } @@ -176,7 +178,9 @@ type capacityReservationArgs struct { // - `default` - The Capacity Reservation is created on hardware that is shared with other AWS accounts . // - `dedicated` - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single AWS account . Tenancy *string `pulumi:"tenancy"` - // The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + // The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + // + // You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . UnusedReservationBillingOwnerId *string `pulumi:"unusedReservationBillingOwnerId"` } @@ -225,7 +229,9 @@ type CapacityReservationArgs struct { // - `default` - The Capacity Reservation is created on hardware that is shared with other AWS accounts . // - `dedicated` - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single AWS account . Tenancy pulumi.StringPtrInput - // The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + // The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + // + // You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . UnusedReservationBillingOwnerId pulumi.StringPtrInput } @@ -365,7 +371,9 @@ func (o CapacityReservationOutput) TotalInstanceCount() pulumi.IntOutput { return o.ApplyT(func(v *CapacityReservation) pulumi.IntOutput { return v.TotalInstanceCount }).(pulumi.IntOutput) } -// The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. +// The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . +// +// You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . func (o CapacityReservationOutput) UnusedReservationBillingOwnerId() pulumi.StringPtrOutput { return o.ApplyT(func(v *CapacityReservation) pulumi.StringPtrOutput { return v.UnusedReservationBillingOwnerId }).(pulumi.StringPtrOutput) } diff --git a/sdk/go/aws/ecs/getService.go b/sdk/go/aws/ecs/getService.go index 7587539c72..7b456a6f33 100644 --- a/sdk/go/aws/ecs/getService.go +++ b/sdk/go/aws/ecs/getService.go @@ -34,11 +34,12 @@ type LookupServiceArgs struct { } type LookupServiceResult struct { + AvailabilityZoneRebalancing *ServiceAvailabilityZoneRebalancing `pulumi:"availabilityZoneRebalancing"` // The capacity provider strategy to use for the service. // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. // A capacity provider strategy may contain a maximum of 6 capacity providers. CapacityProviderStrategy []ServiceCapacityProviderStrategyItem `pulumi:"capacityProviderStrategy"` - // Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + // Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. DeploymentConfiguration *ServiceDeploymentConfiguration `pulumi:"deploymentConfiguration"` // The number of instantiations of the specified task definition to place and keep running in your service. // For new services, if a desired count is not specified, a default value of ``1`` is used. When using the ``DAEMON`` scheduling strategy, the desired count is not required. @@ -87,7 +88,8 @@ type LookupServiceResult struct { // The ``family`` and ``revision`` (``family:revision``) or full ARN of the task definition to run in your service. If a ``revision`` isn't specified, the latest ``ACTIVE`` revision is used. // A task definition must be specified if the service uses either the ``ECS`` or ``CODE_DEPLOY`` deployment controllers. // For more information about deployment types, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html). - TaskDefinition *string `pulumi:"taskDefinition"` + TaskDefinition *string `pulumi:"taskDefinition"` + VpcLatticeConfigurations []ServiceVpcLatticeConfiguration `pulumi:"vpcLatticeConfigurations"` } func LookupServiceOutput(ctx *pulumi.Context, args LookupServiceOutputArgs, opts ...pulumi.InvokeOption) LookupServiceResultOutput { @@ -134,6 +136,10 @@ func (o LookupServiceResultOutput) ToLookupServiceResultOutputWithContext(ctx co return o } +func (o LookupServiceResultOutput) AvailabilityZoneRebalancing() ServiceAvailabilityZoneRebalancingPtrOutput { + return o.ApplyT(func(v LookupServiceResult) *ServiceAvailabilityZoneRebalancing { return v.AvailabilityZoneRebalancing }).(ServiceAvailabilityZoneRebalancingPtrOutput) +} + // The capacity provider strategy to use for the service. // // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -142,7 +148,7 @@ func (o LookupServiceResultOutput) CapacityProviderStrategy() ServiceCapacityPro return o.ApplyT(func(v LookupServiceResult) []ServiceCapacityProviderStrategyItem { return v.CapacityProviderStrategy }).(ServiceCapacityProviderStrategyItemArrayOutput) } -// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. +// Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. func (o LookupServiceResultOutput) DeploymentConfiguration() ServiceDeploymentConfigurationPtrOutput { return o.ApplyT(func(v LookupServiceResult) *ServiceDeploymentConfiguration { return v.DeploymentConfiguration }).(ServiceDeploymentConfigurationPtrOutput) } @@ -247,6 +253,10 @@ func (o LookupServiceResultOutput) TaskDefinition() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupServiceResult) *string { return v.TaskDefinition }).(pulumi.StringPtrOutput) } +func (o LookupServiceResultOutput) VpcLatticeConfigurations() ServiceVpcLatticeConfigurationArrayOutput { + return o.ApplyT(func(v LookupServiceResult) []ServiceVpcLatticeConfiguration { return v.VpcLatticeConfigurations }).(ServiceVpcLatticeConfigurationArrayOutput) +} + func init() { pulumi.RegisterOutputType(LookupServiceResultOutput{}) } diff --git a/sdk/go/aws/ecs/pulumiEnums.go b/sdk/go/aws/ecs/pulumiEnums.go index 8d00ab6027..05f4d875d4 100644 --- a/sdk/go/aws/ecs/pulumiEnums.go +++ b/sdk/go/aws/ecs/pulumiEnums.go @@ -688,6 +688,171 @@ const ( ClusterCapacityProviderAssociationsCapacityProvider0FargateSpot = ClusterCapacityProviderAssociationsCapacityProvider0("FARGATE_SPOT") ) +type ServiceAvailabilityZoneRebalancing string + +const ( + ServiceAvailabilityZoneRebalancingEnabled = ServiceAvailabilityZoneRebalancing("ENABLED") + ServiceAvailabilityZoneRebalancingDisabled = ServiceAvailabilityZoneRebalancing("DISABLED") +) + +func (ServiceAvailabilityZoneRebalancing) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceAvailabilityZoneRebalancing)(nil)).Elem() +} + +func (e ServiceAvailabilityZoneRebalancing) ToServiceAvailabilityZoneRebalancingOutput() ServiceAvailabilityZoneRebalancingOutput { + return pulumi.ToOutput(e).(ServiceAvailabilityZoneRebalancingOutput) +} + +func (e ServiceAvailabilityZoneRebalancing) ToServiceAvailabilityZoneRebalancingOutputWithContext(ctx context.Context) ServiceAvailabilityZoneRebalancingOutput { + return pulumi.ToOutputWithContext(ctx, e).(ServiceAvailabilityZoneRebalancingOutput) +} + +func (e ServiceAvailabilityZoneRebalancing) ToServiceAvailabilityZoneRebalancingPtrOutput() ServiceAvailabilityZoneRebalancingPtrOutput { + return e.ToServiceAvailabilityZoneRebalancingPtrOutputWithContext(context.Background()) +} + +func (e ServiceAvailabilityZoneRebalancing) ToServiceAvailabilityZoneRebalancingPtrOutputWithContext(ctx context.Context) ServiceAvailabilityZoneRebalancingPtrOutput { + return ServiceAvailabilityZoneRebalancing(e).ToServiceAvailabilityZoneRebalancingOutputWithContext(ctx).ToServiceAvailabilityZoneRebalancingPtrOutputWithContext(ctx) +} + +func (e ServiceAvailabilityZoneRebalancing) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ServiceAvailabilityZoneRebalancing) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e ServiceAvailabilityZoneRebalancing) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e ServiceAvailabilityZoneRebalancing) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type ServiceAvailabilityZoneRebalancingOutput struct{ *pulumi.OutputState } + +func (ServiceAvailabilityZoneRebalancingOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceAvailabilityZoneRebalancing)(nil)).Elem() +} + +func (o ServiceAvailabilityZoneRebalancingOutput) ToServiceAvailabilityZoneRebalancingOutput() ServiceAvailabilityZoneRebalancingOutput { + return o +} + +func (o ServiceAvailabilityZoneRebalancingOutput) ToServiceAvailabilityZoneRebalancingOutputWithContext(ctx context.Context) ServiceAvailabilityZoneRebalancingOutput { + return o +} + +func (o ServiceAvailabilityZoneRebalancingOutput) ToServiceAvailabilityZoneRebalancingPtrOutput() ServiceAvailabilityZoneRebalancingPtrOutput { + return o.ToServiceAvailabilityZoneRebalancingPtrOutputWithContext(context.Background()) +} + +func (o ServiceAvailabilityZoneRebalancingOutput) ToServiceAvailabilityZoneRebalancingPtrOutputWithContext(ctx context.Context) ServiceAvailabilityZoneRebalancingPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v ServiceAvailabilityZoneRebalancing) *ServiceAvailabilityZoneRebalancing { + return &v + }).(ServiceAvailabilityZoneRebalancingPtrOutput) +} + +func (o ServiceAvailabilityZoneRebalancingOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o ServiceAvailabilityZoneRebalancingOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ServiceAvailabilityZoneRebalancing) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o ServiceAvailabilityZoneRebalancingOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ServiceAvailabilityZoneRebalancingOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e ServiceAvailabilityZoneRebalancing) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type ServiceAvailabilityZoneRebalancingPtrOutput struct{ *pulumi.OutputState } + +func (ServiceAvailabilityZoneRebalancingPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**ServiceAvailabilityZoneRebalancing)(nil)).Elem() +} + +func (o ServiceAvailabilityZoneRebalancingPtrOutput) ToServiceAvailabilityZoneRebalancingPtrOutput() ServiceAvailabilityZoneRebalancingPtrOutput { + return o +} + +func (o ServiceAvailabilityZoneRebalancingPtrOutput) ToServiceAvailabilityZoneRebalancingPtrOutputWithContext(ctx context.Context) ServiceAvailabilityZoneRebalancingPtrOutput { + return o +} + +func (o ServiceAvailabilityZoneRebalancingPtrOutput) Elem() ServiceAvailabilityZoneRebalancingOutput { + return o.ApplyT(func(v *ServiceAvailabilityZoneRebalancing) ServiceAvailabilityZoneRebalancing { + if v != nil { + return *v + } + var ret ServiceAvailabilityZoneRebalancing + return ret + }).(ServiceAvailabilityZoneRebalancingOutput) +} + +func (o ServiceAvailabilityZoneRebalancingPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o ServiceAvailabilityZoneRebalancingPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *ServiceAvailabilityZoneRebalancing) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// ServiceAvailabilityZoneRebalancingInput is an input type that accepts values of the ServiceAvailabilityZoneRebalancing enum +// A concrete instance of `ServiceAvailabilityZoneRebalancingInput` can be one of the following: +// +// ServiceAvailabilityZoneRebalancingEnabled +// ServiceAvailabilityZoneRebalancingDisabled +type ServiceAvailabilityZoneRebalancingInput interface { + pulumi.Input + + ToServiceAvailabilityZoneRebalancingOutput() ServiceAvailabilityZoneRebalancingOutput + ToServiceAvailabilityZoneRebalancingOutputWithContext(context.Context) ServiceAvailabilityZoneRebalancingOutput +} + +var serviceAvailabilityZoneRebalancingPtrType = reflect.TypeOf((**ServiceAvailabilityZoneRebalancing)(nil)).Elem() + +type ServiceAvailabilityZoneRebalancingPtrInput interface { + pulumi.Input + + ToServiceAvailabilityZoneRebalancingPtrOutput() ServiceAvailabilityZoneRebalancingPtrOutput + ToServiceAvailabilityZoneRebalancingPtrOutputWithContext(context.Context) ServiceAvailabilityZoneRebalancingPtrOutput +} + +type serviceAvailabilityZoneRebalancingPtr string + +func ServiceAvailabilityZoneRebalancingPtr(v string) ServiceAvailabilityZoneRebalancingPtrInput { + return (*serviceAvailabilityZoneRebalancingPtr)(&v) +} + +func (*serviceAvailabilityZoneRebalancingPtr) ElementType() reflect.Type { + return serviceAvailabilityZoneRebalancingPtrType +} + +func (in *serviceAvailabilityZoneRebalancingPtr) ToServiceAvailabilityZoneRebalancingPtrOutput() ServiceAvailabilityZoneRebalancingPtrOutput { + return pulumi.ToOutput(in).(ServiceAvailabilityZoneRebalancingPtrOutput) +} + +func (in *serviceAvailabilityZoneRebalancingPtr) ToServiceAvailabilityZoneRebalancingPtrOutputWithContext(ctx context.Context) ServiceAvailabilityZoneRebalancingPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(ServiceAvailabilityZoneRebalancingPtrOutput) +} + // Whether the task's elastic network interface receives a public IP address. The default value is “DISABLED“. type ServiceAwsVpcConfigurationAssignPublicIp string @@ -3043,6 +3208,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*CapacityProviderManagedScalingStatusPtrInput)(nil)).Elem(), CapacityProviderManagedScalingStatus("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*ClusterCapacityProviderAssociationsCapacityProviderInput)(nil)).Elem(), ClusterCapacityProviderAssociationsCapacityProvider("FARGATE")) pulumi.RegisterInputType(reflect.TypeOf((*ClusterCapacityProviderAssociationsCapacityProviderPtrInput)(nil)).Elem(), ClusterCapacityProviderAssociationsCapacityProvider("FARGATE")) + pulumi.RegisterInputType(reflect.TypeOf((*ServiceAvailabilityZoneRebalancingInput)(nil)).Elem(), ServiceAvailabilityZoneRebalancing("ENABLED")) + pulumi.RegisterInputType(reflect.TypeOf((*ServiceAvailabilityZoneRebalancingPtrInput)(nil)).Elem(), ServiceAvailabilityZoneRebalancing("ENABLED")) pulumi.RegisterInputType(reflect.TypeOf((*ServiceAwsVpcConfigurationAssignPublicIpInput)(nil)).Elem(), ServiceAwsVpcConfigurationAssignPublicIp("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*ServiceAwsVpcConfigurationAssignPublicIpPtrInput)(nil)).Elem(), ServiceAwsVpcConfigurationAssignPublicIp("DISABLED")) pulumi.RegisterInputType(reflect.TypeOf((*ServiceDeploymentControllerTypeInput)(nil)).Elem(), ServiceDeploymentControllerType("CODE_DEPLOY")) @@ -3079,6 +3246,8 @@ func init() { pulumi.RegisterOutputType(CapacityProviderManagedScalingStatusPtrOutput{}) pulumi.RegisterOutputType(ClusterCapacityProviderAssociationsCapacityProviderOutput{}) pulumi.RegisterOutputType(ClusterCapacityProviderAssociationsCapacityProviderPtrOutput{}) + pulumi.RegisterOutputType(ServiceAvailabilityZoneRebalancingOutput{}) + pulumi.RegisterOutputType(ServiceAvailabilityZoneRebalancingPtrOutput{}) pulumi.RegisterOutputType(ServiceAwsVpcConfigurationAssignPublicIpOutput{}) pulumi.RegisterOutputType(ServiceAwsVpcConfigurationAssignPublicIpPtrOutput{}) pulumi.RegisterOutputType(ServiceDeploymentControllerTypeOutput{}) diff --git a/sdk/go/aws/ecs/pulumiTypes.go b/sdk/go/aws/ecs/pulumiTypes.go index 1b2fab1a14..f8ca8c7772 100644 --- a/sdk/go/aws/ecs/pulumiTypes.go +++ b/sdk/go/aws/ecs/pulumiTypes.go @@ -3286,7 +3286,7 @@ func (o ServiceDeploymentCircuitBreakerPtrOutput) Rollback() pulumi.BoolPtrOutpu }).(pulumi.BoolPtrOutput) } -// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. +// Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. type ServiceDeploymentConfiguration struct { // Information about the CloudWatch alarms. Alarms *ServiceDeploymentAlarms `pulumi:"alarms"` @@ -3327,7 +3327,7 @@ type ServiceDeploymentConfigurationInput interface { ToServiceDeploymentConfigurationOutputWithContext(context.Context) ServiceDeploymentConfigurationOutput } -// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. +// Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. type ServiceDeploymentConfigurationArgs struct { // Information about the CloudWatch alarms. Alarms ServiceDeploymentAlarmsPtrInput `pulumi:"alarms"` @@ -3410,7 +3410,7 @@ func (i *serviceDeploymentConfigurationPtrType) ToServiceDeploymentConfiguration return pulumi.ToOutputWithContext(ctx, i).(ServiceDeploymentConfigurationPtrOutput) } -// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. +// Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. type ServiceDeploymentConfigurationOutput struct{ *pulumi.OutputState } func (ServiceDeploymentConfigurationOutput) ElementType() reflect.Type { @@ -3844,7 +3844,7 @@ type ServiceLoadBalancer struct { ContainerName *string `pulumi:"containerName"` // The port on the container to associate with the load balancer. This port must correspond to a ``containerPort`` in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they're launched on must allow ingress traffic on the ``hostPort`` of the port mapping. ContainerPort *int `pulumi:"containerPort"` - // The name of the load balancer to associate with the service or task set. + // The name of the load balancer to associate with the Amazon ECS service or task set. // If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. LoadBalancerName *string `pulumi:"loadBalancerName"` // The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group or groups associated with a service or task set. @@ -3876,7 +3876,7 @@ type ServiceLoadBalancerArgs struct { ContainerName pulumi.StringPtrInput `pulumi:"containerName"` // The port on the container to associate with the load balancer. This port must correspond to a ``containerPort`` in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they're launched on must allow ingress traffic on the ``hostPort`` of the port mapping. ContainerPort pulumi.IntPtrInput `pulumi:"containerPort"` - // The name of the load balancer to associate with the service or task set. + // The name of the load balancer to associate with the Amazon ECS service or task set. // If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. LoadBalancerName pulumi.StringPtrInput `pulumi:"loadBalancerName"` // The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group or groups associated with a service or task set. @@ -3954,7 +3954,7 @@ func (o ServiceLoadBalancerOutput) ContainerPort() pulumi.IntPtrOutput { return o.ApplyT(func(v ServiceLoadBalancer) *int { return v.ContainerPort }).(pulumi.IntPtrOutput) } -// The name of the load balancer to associate with the service or task set. +// The name of the load balancer to associate with the Amazon ECS service or task set. // // If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. func (o ServiceLoadBalancerOutput) LoadBalancerName() pulumi.StringPtrOutput { @@ -5741,6 +5741,112 @@ func (o ServiceVolumeConfigurationArrayOutput) Index(i pulumi.IntInput) ServiceV }).(ServiceVolumeConfigurationOutput) } +type ServiceVpcLatticeConfiguration struct { + PortName string `pulumi:"portName"` + RoleArn string `pulumi:"roleArn"` + TargetGroupArn string `pulumi:"targetGroupArn"` +} + +// ServiceVpcLatticeConfigurationInput is an input type that accepts ServiceVpcLatticeConfigurationArgs and ServiceVpcLatticeConfigurationOutput values. +// You can construct a concrete instance of `ServiceVpcLatticeConfigurationInput` via: +// +// ServiceVpcLatticeConfigurationArgs{...} +type ServiceVpcLatticeConfigurationInput interface { + pulumi.Input + + ToServiceVpcLatticeConfigurationOutput() ServiceVpcLatticeConfigurationOutput + ToServiceVpcLatticeConfigurationOutputWithContext(context.Context) ServiceVpcLatticeConfigurationOutput +} + +type ServiceVpcLatticeConfigurationArgs struct { + PortName pulumi.StringInput `pulumi:"portName"` + RoleArn pulumi.StringInput `pulumi:"roleArn"` + TargetGroupArn pulumi.StringInput `pulumi:"targetGroupArn"` +} + +func (ServiceVpcLatticeConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceVpcLatticeConfiguration)(nil)).Elem() +} + +func (i ServiceVpcLatticeConfigurationArgs) ToServiceVpcLatticeConfigurationOutput() ServiceVpcLatticeConfigurationOutput { + return i.ToServiceVpcLatticeConfigurationOutputWithContext(context.Background()) +} + +func (i ServiceVpcLatticeConfigurationArgs) ToServiceVpcLatticeConfigurationOutputWithContext(ctx context.Context) ServiceVpcLatticeConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceVpcLatticeConfigurationOutput) +} + +// ServiceVpcLatticeConfigurationArrayInput is an input type that accepts ServiceVpcLatticeConfigurationArray and ServiceVpcLatticeConfigurationArrayOutput values. +// You can construct a concrete instance of `ServiceVpcLatticeConfigurationArrayInput` via: +// +// ServiceVpcLatticeConfigurationArray{ ServiceVpcLatticeConfigurationArgs{...} } +type ServiceVpcLatticeConfigurationArrayInput interface { + pulumi.Input + + ToServiceVpcLatticeConfigurationArrayOutput() ServiceVpcLatticeConfigurationArrayOutput + ToServiceVpcLatticeConfigurationArrayOutputWithContext(context.Context) ServiceVpcLatticeConfigurationArrayOutput +} + +type ServiceVpcLatticeConfigurationArray []ServiceVpcLatticeConfigurationInput + +func (ServiceVpcLatticeConfigurationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]ServiceVpcLatticeConfiguration)(nil)).Elem() +} + +func (i ServiceVpcLatticeConfigurationArray) ToServiceVpcLatticeConfigurationArrayOutput() ServiceVpcLatticeConfigurationArrayOutput { + return i.ToServiceVpcLatticeConfigurationArrayOutputWithContext(context.Background()) +} + +func (i ServiceVpcLatticeConfigurationArray) ToServiceVpcLatticeConfigurationArrayOutputWithContext(ctx context.Context) ServiceVpcLatticeConfigurationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(ServiceVpcLatticeConfigurationArrayOutput) +} + +type ServiceVpcLatticeConfigurationOutput struct{ *pulumi.OutputState } + +func (ServiceVpcLatticeConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*ServiceVpcLatticeConfiguration)(nil)).Elem() +} + +func (o ServiceVpcLatticeConfigurationOutput) ToServiceVpcLatticeConfigurationOutput() ServiceVpcLatticeConfigurationOutput { + return o +} + +func (o ServiceVpcLatticeConfigurationOutput) ToServiceVpcLatticeConfigurationOutputWithContext(ctx context.Context) ServiceVpcLatticeConfigurationOutput { + return o +} + +func (o ServiceVpcLatticeConfigurationOutput) PortName() pulumi.StringOutput { + return o.ApplyT(func(v ServiceVpcLatticeConfiguration) string { return v.PortName }).(pulumi.StringOutput) +} + +func (o ServiceVpcLatticeConfigurationOutput) RoleArn() pulumi.StringOutput { + return o.ApplyT(func(v ServiceVpcLatticeConfiguration) string { return v.RoleArn }).(pulumi.StringOutput) +} + +func (o ServiceVpcLatticeConfigurationOutput) TargetGroupArn() pulumi.StringOutput { + return o.ApplyT(func(v ServiceVpcLatticeConfiguration) string { return v.TargetGroupArn }).(pulumi.StringOutput) +} + +type ServiceVpcLatticeConfigurationArrayOutput struct{ *pulumi.OutputState } + +func (ServiceVpcLatticeConfigurationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]ServiceVpcLatticeConfiguration)(nil)).Elem() +} + +func (o ServiceVpcLatticeConfigurationArrayOutput) ToServiceVpcLatticeConfigurationArrayOutput() ServiceVpcLatticeConfigurationArrayOutput { + return o +} + +func (o ServiceVpcLatticeConfigurationArrayOutput) ToServiceVpcLatticeConfigurationArrayOutputWithContext(ctx context.Context) ServiceVpcLatticeConfigurationArrayOutput { + return o +} + +func (o ServiceVpcLatticeConfigurationArrayOutput) Index(i pulumi.IntInput) ServiceVpcLatticeConfigurationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) ServiceVpcLatticeConfiguration { + return vs[0].([]ServiceVpcLatticeConfiguration)[vs[1].(int)] + }).(ServiceVpcLatticeConfigurationOutput) +} + // The authorization configuration details for the Amazon EFS file system. type TaskDefinitionAuthorizationConfig struct { // The Amazon EFS access point ID to use. If an access point is specified, the root directory value specified in the ``EFSVolumeConfiguration`` must either be omitted or set to ``/`` which will enforce the path set on the EFS access point. If an access point is used, transit encryption must be on in the ``EFSVolumeConfiguration``. For more information, see [Working with Amazon EFS access points](https://docs.aws.amazon.com/efs/latest/ug/efs-access-points.html) in the *Amazon Elastic File System User Guide*. @@ -12662,6 +12768,8 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*ServiceTimeoutConfigurationPtrInput)(nil)).Elem(), ServiceTimeoutConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServiceVolumeConfigurationInput)(nil)).Elem(), ServiceVolumeConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*ServiceVolumeConfigurationArrayInput)(nil)).Elem(), ServiceVolumeConfigurationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*ServiceVpcLatticeConfigurationInput)(nil)).Elem(), ServiceVpcLatticeConfigurationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*ServiceVpcLatticeConfigurationArrayInput)(nil)).Elem(), ServiceVpcLatticeConfigurationArray{}) pulumi.RegisterInputType(reflect.TypeOf((*TaskDefinitionAuthorizationConfigInput)(nil)).Elem(), TaskDefinitionAuthorizationConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TaskDefinitionAuthorizationConfigPtrInput)(nil)).Elem(), TaskDefinitionAuthorizationConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*TaskDefinitionContainerDefinitionInput)(nil)).Elem(), TaskDefinitionContainerDefinitionArgs{}) @@ -12806,6 +12914,8 @@ func init() { pulumi.RegisterOutputType(ServiceTimeoutConfigurationPtrOutput{}) pulumi.RegisterOutputType(ServiceVolumeConfigurationOutput{}) pulumi.RegisterOutputType(ServiceVolumeConfigurationArrayOutput{}) + pulumi.RegisterOutputType(ServiceVpcLatticeConfigurationOutput{}) + pulumi.RegisterOutputType(ServiceVpcLatticeConfigurationArrayOutput{}) pulumi.RegisterOutputType(TaskDefinitionAuthorizationConfigOutput{}) pulumi.RegisterOutputType(TaskDefinitionAuthorizationConfigPtrOutput{}) pulumi.RegisterOutputType(TaskDefinitionContainerDefinitionOutput{}) diff --git a/sdk/go/aws/ecs/service.go b/sdk/go/aws/ecs/service.go index 613de98b71..91b6f260fb 100644 --- a/sdk/go/aws/ecs/service.go +++ b/sdk/go/aws/ecs/service.go @@ -19,13 +19,14 @@ import ( type Service struct { pulumi.CustomResourceState + AvailabilityZoneRebalancing ServiceAvailabilityZoneRebalancingPtrOutput `pulumi:"availabilityZoneRebalancing"` // The capacity provider strategy to use for the service. // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. // A capacity provider strategy may contain a maximum of 6 capacity providers. CapacityProviderStrategy ServiceCapacityProviderStrategyItemArrayOutput `pulumi:"capacityProviderStrategy"` // The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed. Cluster pulumi.StringPtrOutput `pulumi:"cluster"` - // Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + // Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. DeploymentConfiguration ServiceDeploymentConfigurationPtrOutput `pulumi:"deploymentConfiguration"` // The deployment controller to use for the service. If no deployment controller is specified, the default value of ``ECS`` is used. DeploymentController ServiceDeploymentControllerPtrOutput `pulumi:"deploymentController"` @@ -96,7 +97,8 @@ type Service struct { // For more information about deployment types, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html). TaskDefinition pulumi.StringPtrOutput `pulumi:"taskDefinition"` // The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume. - VolumeConfigurations ServiceVolumeConfigurationArrayOutput `pulumi:"volumeConfigurations"` + VolumeConfigurations ServiceVolumeConfigurationArrayOutput `pulumi:"volumeConfigurations"` + VpcLatticeConfigurations ServiceVpcLatticeConfigurationArrayOutput `pulumi:"vpcLatticeConfigurations"` } // NewService registers a new resource with the given unique name, arguments, and options. @@ -148,13 +150,14 @@ func (ServiceState) ElementType() reflect.Type { } type serviceArgs struct { + AvailabilityZoneRebalancing *ServiceAvailabilityZoneRebalancing `pulumi:"availabilityZoneRebalancing"` // The capacity provider strategy to use for the service. // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. // A capacity provider strategy may contain a maximum of 6 capacity providers. CapacityProviderStrategy []ServiceCapacityProviderStrategyItem `pulumi:"capacityProviderStrategy"` // The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed. Cluster *string `pulumi:"cluster"` - // Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + // Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. DeploymentConfiguration *ServiceDeploymentConfiguration `pulumi:"deploymentConfiguration"` // The deployment controller to use for the service. If no deployment controller is specified, the default value of ``ECS`` is used. DeploymentController *ServiceDeploymentController `pulumi:"deploymentController"` @@ -221,18 +224,20 @@ type serviceArgs struct { // For more information about deployment types, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html). TaskDefinition *string `pulumi:"taskDefinition"` // The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume. - VolumeConfigurations []ServiceVolumeConfiguration `pulumi:"volumeConfigurations"` + VolumeConfigurations []ServiceVolumeConfiguration `pulumi:"volumeConfigurations"` + VpcLatticeConfigurations []ServiceVpcLatticeConfiguration `pulumi:"vpcLatticeConfigurations"` } // The set of arguments for constructing a Service resource. type ServiceArgs struct { + AvailabilityZoneRebalancing ServiceAvailabilityZoneRebalancingPtrInput // The capacity provider strategy to use for the service. // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. // A capacity provider strategy may contain a maximum of 6 capacity providers. CapacityProviderStrategy ServiceCapacityProviderStrategyItemArrayInput // The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed. Cluster pulumi.StringPtrInput - // Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + // Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. DeploymentConfiguration ServiceDeploymentConfigurationPtrInput // The deployment controller to use for the service. If no deployment controller is specified, the default value of ``ECS`` is used. DeploymentController ServiceDeploymentControllerPtrInput @@ -299,7 +304,8 @@ type ServiceArgs struct { // For more information about deployment types, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html). TaskDefinition pulumi.StringPtrInput // The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume. - VolumeConfigurations ServiceVolumeConfigurationArrayInput + VolumeConfigurations ServiceVolumeConfigurationArrayInput + VpcLatticeConfigurations ServiceVpcLatticeConfigurationArrayInput } func (ServiceArgs) ElementType() reflect.Type { @@ -339,6 +345,10 @@ func (o ServiceOutput) ToServiceOutputWithContext(ctx context.Context) ServiceOu return o } +func (o ServiceOutput) AvailabilityZoneRebalancing() ServiceAvailabilityZoneRebalancingPtrOutput { + return o.ApplyT(func(v *Service) ServiceAvailabilityZoneRebalancingPtrOutput { return v.AvailabilityZoneRebalancing }).(ServiceAvailabilityZoneRebalancingPtrOutput) +} + // The capacity provider strategy to use for the service. // // If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -352,7 +362,7 @@ func (o ServiceOutput) Cluster() pulumi.StringPtrOutput { return o.ApplyT(func(v *Service) pulumi.StringPtrOutput { return v.Cluster }).(pulumi.StringPtrOutput) } -// Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. +// Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. func (o ServiceOutput) DeploymentConfiguration() ServiceDeploymentConfigurationPtrOutput { return o.ApplyT(func(v *Service) ServiceDeploymentConfigurationPtrOutput { return v.DeploymentConfiguration }).(ServiceDeploymentConfigurationPtrOutput) } @@ -504,6 +514,10 @@ func (o ServiceOutput) VolumeConfigurations() ServiceVolumeConfigurationArrayOut return o.ApplyT(func(v *Service) ServiceVolumeConfigurationArrayOutput { return v.VolumeConfigurations }).(ServiceVolumeConfigurationArrayOutput) } +func (o ServiceOutput) VpcLatticeConfigurations() ServiceVpcLatticeConfigurationArrayOutput { + return o.ApplyT(func(v *Service) ServiceVpcLatticeConfigurationArrayOutput { return v.VpcLatticeConfigurations }).(ServiceVpcLatticeConfigurationArrayOutput) +} + func init() { pulumi.RegisterInputType(reflect.TypeOf((*ServiceInput)(nil)).Elem(), &Service{}) pulumi.RegisterOutputType(ServiceOutput{}) diff --git a/sdk/go/aws/gamelift/containerGroupDefinition.go b/sdk/go/aws/gamelift/containerGroupDefinition.go index c05286f872..4ce44ae097 100644 --- a/sdk/go/aws/gamelift/containerGroupDefinition.go +++ b/sdk/go/aws/gamelift/containerGroupDefinition.go @@ -17,8 +17,6 @@ import ( type ContainerGroupDefinition struct { pulumi.CustomResourceState - // A collection of container definitions that define the containers in this group. - ContainerDefinitions ContainerGroupDefinitionContainerDefinitionArrayOutput `pulumi:"containerDefinitions"` // The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift container group resource and uniquely identifies it across all AWS Regions. ContainerGroupDefinitionArn pulumi.StringOutput `pulumi:"containerGroupDefinitionArn"` // A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example "1469498468.057"). @@ -27,8 +25,6 @@ type ContainerGroupDefinition struct { Name pulumi.StringOutput `pulumi:"name"` // The operating system of the container group OperatingSystem ContainerGroupDefinitionOperatingSystemOutput `pulumi:"operatingSystem"` - // Specifies whether the container group includes replica or daemon containers. - SchedulingStrategy ContainerGroupDefinitionSchedulingStrategyPtrOutput `pulumi:"schedulingStrategy"` // A specific ContainerGroupDefinition version to be updated SourceVersionNumber pulumi.IntPtrOutput `pulumi:"sourceVersionNumber"` // A string indicating ContainerGroupDefinition status. @@ -39,10 +35,6 @@ type ContainerGroupDefinition struct { SupportContainerDefinitions pulumi.ArrayOutput `pulumi:"supportContainerDefinitions"` // An array of key-value pairs to apply to this resource. Tags aws.TagArrayOutput `pulumi:"tags"` - // The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - TotalCpuLimit pulumi.IntOutput `pulumi:"totalCpuLimit"` - // The maximum amount of memory (in MiB) to allocate for this container group. - TotalMemoryLimit pulumi.IntOutput `pulumi:"totalMemoryLimit"` } // NewContainerGroupDefinition registers a new resource with the given unique name, arguments, and options. @@ -52,25 +44,11 @@ func NewContainerGroupDefinition(ctx *pulumi.Context, return nil, errors.New("missing one or more required arguments") } - if args.ContainerDefinitions == nil { - return nil, errors.New("invalid value for required argument 'ContainerDefinitions'") - } if args.OperatingSystem == nil { return nil, errors.New("invalid value for required argument 'OperatingSystem'") } - if args.TotalCpuLimit == nil { - return nil, errors.New("invalid value for required argument 'TotalCpuLimit'") - } - if args.TotalMemoryLimit == nil { - return nil, errors.New("invalid value for required argument 'TotalMemoryLimit'") - } replaceOnChanges := pulumi.ReplaceOnChanges([]string{ - "containerDefinitions[*]", "name", - "operatingSystem", - "schedulingStrategy", - "totalCpuLimit", - "totalMemoryLimit", }) opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) @@ -106,46 +84,30 @@ func (ContainerGroupDefinitionState) ElementType() reflect.Type { } type containerGroupDefinitionArgs struct { - // A collection of container definitions that define the containers in this group. - ContainerDefinitions []ContainerGroupDefinitionContainerDefinition `pulumi:"containerDefinitions"` // A descriptive label for the container group definition. Name *string `pulumi:"name"` // The operating system of the container group OperatingSystem ContainerGroupDefinitionOperatingSystem `pulumi:"operatingSystem"` - // Specifies whether the container group includes replica or daemon containers. - SchedulingStrategy *ContainerGroupDefinitionSchedulingStrategy `pulumi:"schedulingStrategy"` // A specific ContainerGroupDefinition version to be updated SourceVersionNumber *int `pulumi:"sourceVersionNumber"` // A collection of support container definitions that define the containers in this group. SupportContainerDefinitions []interface{} `pulumi:"supportContainerDefinitions"` // An array of key-value pairs to apply to this resource. Tags []aws.Tag `pulumi:"tags"` - // The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - TotalCpuLimit int `pulumi:"totalCpuLimit"` - // The maximum amount of memory (in MiB) to allocate for this container group. - TotalMemoryLimit int `pulumi:"totalMemoryLimit"` } // The set of arguments for constructing a ContainerGroupDefinition resource. type ContainerGroupDefinitionArgs struct { - // A collection of container definitions that define the containers in this group. - ContainerDefinitions ContainerGroupDefinitionContainerDefinitionArrayInput // A descriptive label for the container group definition. Name pulumi.StringPtrInput // The operating system of the container group OperatingSystem ContainerGroupDefinitionOperatingSystemInput - // Specifies whether the container group includes replica or daemon containers. - SchedulingStrategy ContainerGroupDefinitionSchedulingStrategyPtrInput // A specific ContainerGroupDefinition version to be updated SourceVersionNumber pulumi.IntPtrInput // A collection of support container definitions that define the containers in this group. SupportContainerDefinitions pulumi.ArrayInput // An array of key-value pairs to apply to this resource. Tags aws.TagArrayInput - // The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - TotalCpuLimit pulumi.IntInput - // The maximum amount of memory (in MiB) to allocate for this container group. - TotalMemoryLimit pulumi.IntInput } func (ContainerGroupDefinitionArgs) ElementType() reflect.Type { @@ -185,13 +147,6 @@ func (o ContainerGroupDefinitionOutput) ToContainerGroupDefinitionOutputWithCont return o } -// A collection of container definitions that define the containers in this group. -func (o ContainerGroupDefinitionOutput) ContainerDefinitions() ContainerGroupDefinitionContainerDefinitionArrayOutput { - return o.ApplyT(func(v *ContainerGroupDefinition) ContainerGroupDefinitionContainerDefinitionArrayOutput { - return v.ContainerDefinitions - }).(ContainerGroupDefinitionContainerDefinitionArrayOutput) -} - // The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift container group resource and uniquely identifies it across all AWS Regions. func (o ContainerGroupDefinitionOutput) ContainerGroupDefinitionArn() pulumi.StringOutput { return o.ApplyT(func(v *ContainerGroupDefinition) pulumi.StringOutput { return v.ContainerGroupDefinitionArn }).(pulumi.StringOutput) @@ -214,13 +169,6 @@ func (o ContainerGroupDefinitionOutput) OperatingSystem() ContainerGroupDefiniti }).(ContainerGroupDefinitionOperatingSystemOutput) } -// Specifies whether the container group includes replica or daemon containers. -func (o ContainerGroupDefinitionOutput) SchedulingStrategy() ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return o.ApplyT(func(v *ContainerGroupDefinition) ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return v.SchedulingStrategy - }).(ContainerGroupDefinitionSchedulingStrategyPtrOutput) -} - // A specific ContainerGroupDefinition version to be updated func (o ContainerGroupDefinitionOutput) SourceVersionNumber() pulumi.IntPtrOutput { return o.ApplyT(func(v *ContainerGroupDefinition) pulumi.IntPtrOutput { return v.SourceVersionNumber }).(pulumi.IntPtrOutput) @@ -246,16 +194,6 @@ func (o ContainerGroupDefinitionOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *ContainerGroupDefinition) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } -// The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) -func (o ContainerGroupDefinitionOutput) TotalCpuLimit() pulumi.IntOutput { - return o.ApplyT(func(v *ContainerGroupDefinition) pulumi.IntOutput { return v.TotalCpuLimit }).(pulumi.IntOutput) -} - -// The maximum amount of memory (in MiB) to allocate for this container group. -func (o ContainerGroupDefinitionOutput) TotalMemoryLimit() pulumi.IntOutput { - return o.ApplyT(func(v *ContainerGroupDefinition) pulumi.IntOutput { return v.TotalMemoryLimit }).(pulumi.IntOutput) -} - func init() { pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionInput)(nil)).Elem(), &ContainerGroupDefinition{}) pulumi.RegisterOutputType(ContainerGroupDefinitionOutput{}) diff --git a/sdk/go/aws/gamelift/fleet.go b/sdk/go/aws/gamelift/fleet.go index 0eeb7dba08..1615ca4d1d 100644 --- a/sdk/go/aws/gamelift/fleet.go +++ b/sdk/go/aws/gamelift/fleet.go @@ -25,12 +25,6 @@ type Fleet struct { CertificateConfiguration FleetCertificateConfigurationPtrOutput `pulumi:"certificateConfiguration"` // ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. ComputeType FleetComputeTypePtrOutput `pulumi:"computeType"` - // *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - // - // Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - // - // *Used with:* `CreateFleet` - ContainerGroupsConfiguration FleetContainerGroupsConfigurationPtrOutput `pulumi:"containerGroupsConfiguration"` // A human-readable description of a fleet. Description pulumi.StringPtrOutput `pulumi:"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. @@ -95,7 +89,6 @@ func NewFleet(ctx *pulumi.Context, "buildId", "certificateConfiguration", "computeType", - "containerGroupsConfiguration", "ec2InstanceType", "fleetType", "instanceRoleArn", @@ -151,12 +144,6 @@ type fleetArgs struct { CertificateConfiguration *FleetCertificateConfiguration `pulumi:"certificateConfiguration"` // ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. ComputeType *FleetComputeType `pulumi:"computeType"` - // *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - // - // Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - // - // *Used with:* `CreateFleet` - ContainerGroupsConfiguration *FleetContainerGroupsConfiguration `pulumi:"containerGroupsConfiguration"` // A human-readable description of a fleet. Description *string `pulumi:"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. @@ -219,12 +206,6 @@ type FleetArgs struct { CertificateConfiguration FleetCertificateConfigurationPtrInput // ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. ComputeType FleetComputeTypePtrInput - // *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - // - // Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - // - // *Used with:* `CreateFleet` - ContainerGroupsConfiguration FleetContainerGroupsConfigurationPtrInput // A human-readable description of a fleet. Description pulumi.StringPtrInput // [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. @@ -337,15 +318,6 @@ func (o FleetOutput) ComputeType() FleetComputeTypePtrOutput { return o.ApplyT(func(v *Fleet) FleetComputeTypePtrOutput { return v.ComputeType }).(FleetComputeTypePtrOutput) } -// *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* -// -// Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . -// -// *Used with:* `CreateFleet` -func (o FleetOutput) ContainerGroupsConfiguration() FleetContainerGroupsConfigurationPtrOutput { - return o.ApplyT(func(v *Fleet) FleetContainerGroupsConfigurationPtrOutput { return v.ContainerGroupsConfiguration }).(FleetContainerGroupsConfigurationPtrOutput) -} - // A human-readable description of a fleet. func (o FleetOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v *Fleet) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput) diff --git a/sdk/go/aws/gamelift/getContainerGroupDefinition.go b/sdk/go/aws/gamelift/getContainerGroupDefinition.go index 8b416710c4..d1cead94cd 100644 --- a/sdk/go/aws/gamelift/getContainerGroupDefinition.go +++ b/sdk/go/aws/gamelift/getContainerGroupDefinition.go @@ -33,6 +33,8 @@ type LookupContainerGroupDefinitionResult struct { ContainerGroupDefinitionArn *string `pulumi:"containerGroupDefinitionArn"` // A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example "1469498468.057"). CreationTime *string `pulumi:"creationTime"` + // The operating system of the container group + OperatingSystem *ContainerGroupDefinitionOperatingSystem `pulumi:"operatingSystem"` // A specific ContainerGroupDefinition version to be updated SourceVersionNumber *int `pulumi:"sourceVersionNumber"` // A string indicating ContainerGroupDefinition status. @@ -97,6 +99,13 @@ func (o LookupContainerGroupDefinitionResultOutput) CreationTime() pulumi.String return o.ApplyT(func(v LookupContainerGroupDefinitionResult) *string { return v.CreationTime }).(pulumi.StringPtrOutput) } +// The operating system of the container group +func (o LookupContainerGroupDefinitionResultOutput) OperatingSystem() ContainerGroupDefinitionOperatingSystemPtrOutput { + return o.ApplyT(func(v LookupContainerGroupDefinitionResult) *ContainerGroupDefinitionOperatingSystem { + return v.OperatingSystem + }).(ContainerGroupDefinitionOperatingSystemPtrOutput) +} + // A specific ContainerGroupDefinition version to be updated func (o LookupContainerGroupDefinitionResultOutput) SourceVersionNumber() pulumi.IntPtrOutput { return o.ApplyT(func(v LookupContainerGroupDefinitionResult) *int { return v.SourceVersionNumber }).(pulumi.IntPtrOutput) diff --git a/sdk/go/aws/gamelift/pulumiEnums.go b/sdk/go/aws/gamelift/pulumiEnums.go index 25a6d43baa..be960f6970 100644 --- a/sdk/go/aws/gamelift/pulumiEnums.go +++ b/sdk/go/aws/gamelift/pulumiEnums.go @@ -348,342 +348,6 @@ func (in *buildOperatingSystemPtr) ToBuildOperatingSystemPtrOutputWithContext(ct return pulumi.ToOutputWithContext(ctx, in).(BuildOperatingSystemPtrOutput) } -// The type of dependency. -type ContainerGroupDefinitionContainerDependencyCondition string - -const ( - ContainerGroupDefinitionContainerDependencyConditionStart = ContainerGroupDefinitionContainerDependencyCondition("START") - ContainerGroupDefinitionContainerDependencyConditionComplete = ContainerGroupDefinitionContainerDependencyCondition("COMPLETE") - ContainerGroupDefinitionContainerDependencyConditionSuccess = ContainerGroupDefinitionContainerDependencyCondition("SUCCESS") - ContainerGroupDefinitionContainerDependencyConditionHealthy = ContainerGroupDefinitionContainerDependencyCondition("HEALTHY") -) - -func (ContainerGroupDefinitionContainerDependencyCondition) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerDependencyCondition)(nil)).Elem() -} - -func (e ContainerGroupDefinitionContainerDependencyCondition) ToContainerGroupDefinitionContainerDependencyConditionOutput() ContainerGroupDefinitionContainerDependencyConditionOutput { - return pulumi.ToOutput(e).(ContainerGroupDefinitionContainerDependencyConditionOutput) -} - -func (e ContainerGroupDefinitionContainerDependencyCondition) ToContainerGroupDefinitionContainerDependencyConditionOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyConditionOutput { - return pulumi.ToOutputWithContext(ctx, e).(ContainerGroupDefinitionContainerDependencyConditionOutput) -} - -func (e ContainerGroupDefinitionContainerDependencyCondition) ToContainerGroupDefinitionContainerDependencyConditionPtrOutput() ContainerGroupDefinitionContainerDependencyConditionPtrOutput { - return e.ToContainerGroupDefinitionContainerDependencyConditionPtrOutputWithContext(context.Background()) -} - -func (e ContainerGroupDefinitionContainerDependencyCondition) ToContainerGroupDefinitionContainerDependencyConditionPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyConditionPtrOutput { - return ContainerGroupDefinitionContainerDependencyCondition(e).ToContainerGroupDefinitionContainerDependencyConditionOutputWithContext(ctx).ToContainerGroupDefinitionContainerDependencyConditionPtrOutputWithContext(ctx) -} - -func (e ContainerGroupDefinitionContainerDependencyCondition) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e ContainerGroupDefinitionContainerDependencyCondition) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e ContainerGroupDefinitionContainerDependencyCondition) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e ContainerGroupDefinitionContainerDependencyCondition) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type ContainerGroupDefinitionContainerDependencyConditionOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerDependencyConditionOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerDependencyCondition)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerDependencyConditionOutput) ToContainerGroupDefinitionContainerDependencyConditionOutput() ContainerGroupDefinitionContainerDependencyConditionOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDependencyConditionOutput) ToContainerGroupDefinitionContainerDependencyConditionOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyConditionOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDependencyConditionOutput) ToContainerGroupDefinitionContainerDependencyConditionPtrOutput() ContainerGroupDefinitionContainerDependencyConditionPtrOutput { - return o.ToContainerGroupDefinitionContainerDependencyConditionPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerDependencyConditionOutput) ToContainerGroupDefinitionContainerDependencyConditionPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyConditionPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerGroupDefinitionContainerDependencyCondition) *ContainerGroupDefinitionContainerDependencyCondition { - return &v - }).(ContainerGroupDefinitionContainerDependencyConditionPtrOutput) -} - -func (o ContainerGroupDefinitionContainerDependencyConditionOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerDependencyConditionOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContainerGroupDefinitionContainerDependencyCondition) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o ContainerGroupDefinitionContainerDependencyConditionOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerDependencyConditionOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContainerGroupDefinitionContainerDependencyCondition) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type ContainerGroupDefinitionContainerDependencyConditionPtrOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerDependencyConditionPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionContainerDependencyCondition)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerDependencyConditionPtrOutput) ToContainerGroupDefinitionContainerDependencyConditionPtrOutput() ContainerGroupDefinitionContainerDependencyConditionPtrOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDependencyConditionPtrOutput) ToContainerGroupDefinitionContainerDependencyConditionPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyConditionPtrOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDependencyConditionPtrOutput) Elem() ContainerGroupDefinitionContainerDependencyConditionOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionContainerDependencyCondition) ContainerGroupDefinitionContainerDependencyCondition { - if v != nil { - return *v - } - var ret ContainerGroupDefinitionContainerDependencyCondition - return ret - }).(ContainerGroupDefinitionContainerDependencyConditionOutput) -} - -func (o ContainerGroupDefinitionContainerDependencyConditionPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerDependencyConditionPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *ContainerGroupDefinitionContainerDependencyCondition) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// ContainerGroupDefinitionContainerDependencyConditionInput is an input type that accepts values of the ContainerGroupDefinitionContainerDependencyCondition enum -// A concrete instance of `ContainerGroupDefinitionContainerDependencyConditionInput` can be one of the following: -// -// ContainerGroupDefinitionContainerDependencyConditionStart -// ContainerGroupDefinitionContainerDependencyConditionComplete -// ContainerGroupDefinitionContainerDependencyConditionSuccess -// ContainerGroupDefinitionContainerDependencyConditionHealthy -type ContainerGroupDefinitionContainerDependencyConditionInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerDependencyConditionOutput() ContainerGroupDefinitionContainerDependencyConditionOutput - ToContainerGroupDefinitionContainerDependencyConditionOutputWithContext(context.Context) ContainerGroupDefinitionContainerDependencyConditionOutput -} - -var containerGroupDefinitionContainerDependencyConditionPtrType = reflect.TypeOf((**ContainerGroupDefinitionContainerDependencyCondition)(nil)).Elem() - -type ContainerGroupDefinitionContainerDependencyConditionPtrInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerDependencyConditionPtrOutput() ContainerGroupDefinitionContainerDependencyConditionPtrOutput - ToContainerGroupDefinitionContainerDependencyConditionPtrOutputWithContext(context.Context) ContainerGroupDefinitionContainerDependencyConditionPtrOutput -} - -type containerGroupDefinitionContainerDependencyConditionPtr string - -func ContainerGroupDefinitionContainerDependencyConditionPtr(v string) ContainerGroupDefinitionContainerDependencyConditionPtrInput { - return (*containerGroupDefinitionContainerDependencyConditionPtr)(&v) -} - -func (*containerGroupDefinitionContainerDependencyConditionPtr) ElementType() reflect.Type { - return containerGroupDefinitionContainerDependencyConditionPtrType -} - -func (in *containerGroupDefinitionContainerDependencyConditionPtr) ToContainerGroupDefinitionContainerDependencyConditionPtrOutput() ContainerGroupDefinitionContainerDependencyConditionPtrOutput { - return pulumi.ToOutput(in).(ContainerGroupDefinitionContainerDependencyConditionPtrOutput) -} - -func (in *containerGroupDefinitionContainerDependencyConditionPtr) ToContainerGroupDefinitionContainerDependencyConditionPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyConditionPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(ContainerGroupDefinitionContainerDependencyConditionPtrOutput) -} - -// Defines the protocol of these ports. -type ContainerGroupDefinitionContainerPortRangeProtocol string - -const ( - ContainerGroupDefinitionContainerPortRangeProtocolTcp = ContainerGroupDefinitionContainerPortRangeProtocol("TCP") - ContainerGroupDefinitionContainerPortRangeProtocolUdp = ContainerGroupDefinitionContainerPortRangeProtocol("UDP") -) - -func (ContainerGroupDefinitionContainerPortRangeProtocol) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerPortRangeProtocol)(nil)).Elem() -} - -func (e ContainerGroupDefinitionContainerPortRangeProtocol) ToContainerGroupDefinitionContainerPortRangeProtocolOutput() ContainerGroupDefinitionContainerPortRangeProtocolOutput { - return pulumi.ToOutput(e).(ContainerGroupDefinitionContainerPortRangeProtocolOutput) -} - -func (e ContainerGroupDefinitionContainerPortRangeProtocol) ToContainerGroupDefinitionContainerPortRangeProtocolOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeProtocolOutput { - return pulumi.ToOutputWithContext(ctx, e).(ContainerGroupDefinitionContainerPortRangeProtocolOutput) -} - -func (e ContainerGroupDefinitionContainerPortRangeProtocol) ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutput() ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput { - return e.ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutputWithContext(context.Background()) -} - -func (e ContainerGroupDefinitionContainerPortRangeProtocol) ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput { - return ContainerGroupDefinitionContainerPortRangeProtocol(e).ToContainerGroupDefinitionContainerPortRangeProtocolOutputWithContext(ctx).ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutputWithContext(ctx) -} - -func (e ContainerGroupDefinitionContainerPortRangeProtocol) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e ContainerGroupDefinitionContainerPortRangeProtocol) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e ContainerGroupDefinitionContainerPortRangeProtocol) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e ContainerGroupDefinitionContainerPortRangeProtocol) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type ContainerGroupDefinitionContainerPortRangeProtocolOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerPortRangeProtocolOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerPortRangeProtocol)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolOutput) ToContainerGroupDefinitionContainerPortRangeProtocolOutput() ContainerGroupDefinitionContainerPortRangeProtocolOutput { - return o -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolOutput) ToContainerGroupDefinitionContainerPortRangeProtocolOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeProtocolOutput { - return o -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolOutput) ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutput() ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput { - return o.ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolOutput) ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerGroupDefinitionContainerPortRangeProtocol) *ContainerGroupDefinitionContainerPortRangeProtocol { - return &v - }).(ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContainerGroupDefinitionContainerPortRangeProtocol) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContainerGroupDefinitionContainerPortRangeProtocol) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionContainerPortRangeProtocol)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutput() ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput { - return o -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput { - return o -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) Elem() ContainerGroupDefinitionContainerPortRangeProtocolOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionContainerPortRangeProtocol) ContainerGroupDefinitionContainerPortRangeProtocol { - if v != nil { - return *v - } - var ret ContainerGroupDefinitionContainerPortRangeProtocol - return ret - }).(ContainerGroupDefinitionContainerPortRangeProtocolOutput) -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *ContainerGroupDefinitionContainerPortRangeProtocol) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// ContainerGroupDefinitionContainerPortRangeProtocolInput is an input type that accepts values of the ContainerGroupDefinitionContainerPortRangeProtocol enum -// A concrete instance of `ContainerGroupDefinitionContainerPortRangeProtocolInput` can be one of the following: -// -// ContainerGroupDefinitionContainerPortRangeProtocolTcp -// ContainerGroupDefinitionContainerPortRangeProtocolUdp -type ContainerGroupDefinitionContainerPortRangeProtocolInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerPortRangeProtocolOutput() ContainerGroupDefinitionContainerPortRangeProtocolOutput - ToContainerGroupDefinitionContainerPortRangeProtocolOutputWithContext(context.Context) ContainerGroupDefinitionContainerPortRangeProtocolOutput -} - -var containerGroupDefinitionContainerPortRangeProtocolPtrType = reflect.TypeOf((**ContainerGroupDefinitionContainerPortRangeProtocol)(nil)).Elem() - -type ContainerGroupDefinitionContainerPortRangeProtocolPtrInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutput() ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput - ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutputWithContext(context.Context) ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput -} - -type containerGroupDefinitionContainerPortRangeProtocolPtr string - -func ContainerGroupDefinitionContainerPortRangeProtocolPtr(v string) ContainerGroupDefinitionContainerPortRangeProtocolPtrInput { - return (*containerGroupDefinitionContainerPortRangeProtocolPtr)(&v) -} - -func (*containerGroupDefinitionContainerPortRangeProtocolPtr) ElementType() reflect.Type { - return containerGroupDefinitionContainerPortRangeProtocolPtrType -} - -func (in *containerGroupDefinitionContainerPortRangeProtocolPtr) ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutput() ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput { - return pulumi.ToOutput(in).(ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) -} - -func (in *containerGroupDefinitionContainerPortRangeProtocolPtr) ToContainerGroupDefinitionContainerPortRangeProtocolPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput) -} - // The operating system of the container group type ContainerGroupDefinitionOperatingSystem string @@ -848,172 +512,6 @@ func (in *containerGroupDefinitionOperatingSystemPtr) ToContainerGroupDefinition return pulumi.ToOutputWithContext(ctx, in).(ContainerGroupDefinitionOperatingSystemPtrOutput) } -// Specifies whether the container group includes replica or daemon containers. -type ContainerGroupDefinitionSchedulingStrategy string - -const ( - ContainerGroupDefinitionSchedulingStrategyReplica = ContainerGroupDefinitionSchedulingStrategy("REPLICA") - ContainerGroupDefinitionSchedulingStrategyDaemon = ContainerGroupDefinitionSchedulingStrategy("DAEMON") -) - -func (ContainerGroupDefinitionSchedulingStrategy) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionSchedulingStrategy)(nil)).Elem() -} - -func (e ContainerGroupDefinitionSchedulingStrategy) ToContainerGroupDefinitionSchedulingStrategyOutput() ContainerGroupDefinitionSchedulingStrategyOutput { - return pulumi.ToOutput(e).(ContainerGroupDefinitionSchedulingStrategyOutput) -} - -func (e ContainerGroupDefinitionSchedulingStrategy) ToContainerGroupDefinitionSchedulingStrategyOutputWithContext(ctx context.Context) ContainerGroupDefinitionSchedulingStrategyOutput { - return pulumi.ToOutputWithContext(ctx, e).(ContainerGroupDefinitionSchedulingStrategyOutput) -} - -func (e ContainerGroupDefinitionSchedulingStrategy) ToContainerGroupDefinitionSchedulingStrategyPtrOutput() ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return e.ToContainerGroupDefinitionSchedulingStrategyPtrOutputWithContext(context.Background()) -} - -func (e ContainerGroupDefinitionSchedulingStrategy) ToContainerGroupDefinitionSchedulingStrategyPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return ContainerGroupDefinitionSchedulingStrategy(e).ToContainerGroupDefinitionSchedulingStrategyOutputWithContext(ctx).ToContainerGroupDefinitionSchedulingStrategyPtrOutputWithContext(ctx) -} - -func (e ContainerGroupDefinitionSchedulingStrategy) ToStringOutput() pulumi.StringOutput { - return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) -} - -func (e ContainerGroupDefinitionSchedulingStrategy) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) -} - -func (e ContainerGroupDefinitionSchedulingStrategy) ToStringPtrOutput() pulumi.StringPtrOutput { - return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) -} - -func (e ContainerGroupDefinitionSchedulingStrategy) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) -} - -type ContainerGroupDefinitionSchedulingStrategyOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionSchedulingStrategyOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionSchedulingStrategy)(nil)).Elem() -} - -func (o ContainerGroupDefinitionSchedulingStrategyOutput) ToContainerGroupDefinitionSchedulingStrategyOutput() ContainerGroupDefinitionSchedulingStrategyOutput { - return o -} - -func (o ContainerGroupDefinitionSchedulingStrategyOutput) ToContainerGroupDefinitionSchedulingStrategyOutputWithContext(ctx context.Context) ContainerGroupDefinitionSchedulingStrategyOutput { - return o -} - -func (o ContainerGroupDefinitionSchedulingStrategyOutput) ToContainerGroupDefinitionSchedulingStrategyPtrOutput() ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return o.ToContainerGroupDefinitionSchedulingStrategyPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionSchedulingStrategyOutput) ToContainerGroupDefinitionSchedulingStrategyPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerGroupDefinitionSchedulingStrategy) *ContainerGroupDefinitionSchedulingStrategy { - return &v - }).(ContainerGroupDefinitionSchedulingStrategyPtrOutput) -} - -func (o ContainerGroupDefinitionSchedulingStrategyOutput) ToStringOutput() pulumi.StringOutput { - return o.ToStringOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionSchedulingStrategyOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContainerGroupDefinitionSchedulingStrategy) string { - return string(e) - }).(pulumi.StringOutput) -} - -func (o ContainerGroupDefinitionSchedulingStrategyOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionSchedulingStrategyOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e ContainerGroupDefinitionSchedulingStrategy) *string { - v := string(e) - return &v - }).(pulumi.StringPtrOutput) -} - -type ContainerGroupDefinitionSchedulingStrategyPtrOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionSchedulingStrategyPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionSchedulingStrategy)(nil)).Elem() -} - -func (o ContainerGroupDefinitionSchedulingStrategyPtrOutput) ToContainerGroupDefinitionSchedulingStrategyPtrOutput() ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return o -} - -func (o ContainerGroupDefinitionSchedulingStrategyPtrOutput) ToContainerGroupDefinitionSchedulingStrategyPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return o -} - -func (o ContainerGroupDefinitionSchedulingStrategyPtrOutput) Elem() ContainerGroupDefinitionSchedulingStrategyOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionSchedulingStrategy) ContainerGroupDefinitionSchedulingStrategy { - if v != nil { - return *v - } - var ret ContainerGroupDefinitionSchedulingStrategy - return ret - }).(ContainerGroupDefinitionSchedulingStrategyOutput) -} - -func (o ContainerGroupDefinitionSchedulingStrategyPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { - return o.ToStringPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionSchedulingStrategyPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, e *ContainerGroupDefinitionSchedulingStrategy) *string { - if e == nil { - return nil - } - v := string(*e) - return &v - }).(pulumi.StringPtrOutput) -} - -// ContainerGroupDefinitionSchedulingStrategyInput is an input type that accepts values of the ContainerGroupDefinitionSchedulingStrategy enum -// A concrete instance of `ContainerGroupDefinitionSchedulingStrategyInput` can be one of the following: -// -// ContainerGroupDefinitionSchedulingStrategyReplica -// ContainerGroupDefinitionSchedulingStrategyDaemon -type ContainerGroupDefinitionSchedulingStrategyInput interface { - pulumi.Input - - ToContainerGroupDefinitionSchedulingStrategyOutput() ContainerGroupDefinitionSchedulingStrategyOutput - ToContainerGroupDefinitionSchedulingStrategyOutputWithContext(context.Context) ContainerGroupDefinitionSchedulingStrategyOutput -} - -var containerGroupDefinitionSchedulingStrategyPtrType = reflect.TypeOf((**ContainerGroupDefinitionSchedulingStrategy)(nil)).Elem() - -type ContainerGroupDefinitionSchedulingStrategyPtrInput interface { - pulumi.Input - - ToContainerGroupDefinitionSchedulingStrategyPtrOutput() ContainerGroupDefinitionSchedulingStrategyPtrOutput - ToContainerGroupDefinitionSchedulingStrategyPtrOutputWithContext(context.Context) ContainerGroupDefinitionSchedulingStrategyPtrOutput -} - -type containerGroupDefinitionSchedulingStrategyPtr string - -func ContainerGroupDefinitionSchedulingStrategyPtr(v string) ContainerGroupDefinitionSchedulingStrategyPtrInput { - return (*containerGroupDefinitionSchedulingStrategyPtr)(&v) -} - -func (*containerGroupDefinitionSchedulingStrategyPtr) ElementType() reflect.Type { - return containerGroupDefinitionSchedulingStrategyPtrType -} - -func (in *containerGroupDefinitionSchedulingStrategyPtr) ToContainerGroupDefinitionSchedulingStrategyPtrOutput() ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return pulumi.ToOutput(in).(ContainerGroupDefinitionSchedulingStrategyPtrOutput) -} - -func (in *containerGroupDefinitionSchedulingStrategyPtr) ToContainerGroupDefinitionSchedulingStrategyPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionSchedulingStrategyPtrOutput { - return pulumi.ToOutputWithContext(ctx, in).(ContainerGroupDefinitionSchedulingStrategyPtrOutput) -} - // A string indicating ContainerGroupDefinition status. type ContainerGroupDefinitionStatus string @@ -1447,9 +945,8 @@ func (in *fleetCertificateConfigurationCertificateTypePtr) ToFleetCertificateCon type FleetComputeType string const ( - FleetComputeTypeEc2 = FleetComputeType("EC2") - FleetComputeTypeAnywhere = FleetComputeType("ANYWHERE") - FleetComputeTypeContainer = FleetComputeType("CONTAINER") + FleetComputeTypeEc2 = FleetComputeType("EC2") + FleetComputeTypeAnywhere = FleetComputeType("ANYWHERE") ) func (FleetComputeType) ElementType() reflect.Type { @@ -1576,7 +1073,6 @@ func (o FleetComputeTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Cont // // FleetComputeTypeEc2 // FleetComputeTypeAnywhere -// FleetComputeTypeContainer type FleetComputeTypeInput interface { pulumi.Input @@ -4356,14 +3852,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((*ContainerGroupDefinitionContainerDependencyConditionInput)(nil)).Elem(), ContainerGroupDefinitionContainerDependencyCondition("START")) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerDependencyConditionPtrInput)(nil)).Elem(), ContainerGroupDefinitionContainerDependencyCondition("START")) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerPortRangeProtocolInput)(nil)).Elem(), ContainerGroupDefinitionContainerPortRangeProtocol("TCP")) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerPortRangeProtocolPtrInput)(nil)).Elem(), ContainerGroupDefinitionContainerPortRangeProtocol("TCP")) pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionOperatingSystemInput)(nil)).Elem(), ContainerGroupDefinitionOperatingSystem("AMAZON_LINUX_2023")) pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionOperatingSystemPtrInput)(nil)).Elem(), ContainerGroupDefinitionOperatingSystem("AMAZON_LINUX_2023")) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionSchedulingStrategyInput)(nil)).Elem(), ContainerGroupDefinitionSchedulingStrategy("REPLICA")) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionSchedulingStrategyPtrInput)(nil)).Elem(), ContainerGroupDefinitionSchedulingStrategy("REPLICA")) 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")) @@ -4407,14 +3897,8 @@ func init() { pulumi.RegisterOutputType(AliasRoutingStrategyTypePtrOutput{}) pulumi.RegisterOutputType(BuildOperatingSystemOutput{}) pulumi.RegisterOutputType(BuildOperatingSystemPtrOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerDependencyConditionOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerDependencyConditionPtrOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerPortRangeProtocolOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerPortRangeProtocolPtrOutput{}) pulumi.RegisterOutputType(ContainerGroupDefinitionOperatingSystemOutput{}) pulumi.RegisterOutputType(ContainerGroupDefinitionOperatingSystemPtrOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionSchedulingStrategyOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionSchedulingStrategyPtrOutput{}) pulumi.RegisterOutputType(ContainerGroupDefinitionStatusOutput{}) pulumi.RegisterOutputType(ContainerGroupDefinitionStatusPtrOutput{}) pulumi.RegisterOutputType(FleetApplyCapacityOutput{}) diff --git a/sdk/go/aws/gamelift/pulumiTypes.go b/sdk/go/aws/gamelift/pulumiTypes.go index e3ce84955f..c4928969a9 100644 --- a/sdk/go/aws/gamelift/pulumiTypes.go +++ b/sdk/go/aws/gamelift/pulumiTypes.go @@ -331,1915 +331,314 @@ func (o BuildStorageLocationPtrOutput) RoleArn() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// Details about a container that is used in a container fleet -type ContainerGroupDefinitionContainerDefinition struct { - // The command that's passed to the container. - Command []string `pulumi:"command"` - // A descriptive label for the container definition. Container definition names must be unique with a container group definition. - ContainerName string `pulumi:"containerName"` - // The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - Cpu *int `pulumi:"cpu"` - // A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - DependsOn []ContainerGroupDefinitionContainerDependency `pulumi:"dependsOn"` - // The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - EntryPoint []string `pulumi:"entryPoint"` - // The environment variables to pass to a container. - Environment []ContainerGroupDefinitionContainerEnvironment `pulumi:"environment"` - // Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - Essential *bool `pulumi:"essential"` - // Specifies how the health of the containers will be checked. - HealthCheck *ContainerGroupDefinitionContainerHealthCheck `pulumi:"healthCheck"` - // Specifies the image URI of this container. - ImageUri string `pulumi:"imageUri"` - // Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - MemoryLimits *ContainerGroupDefinitionMemoryLimits `pulumi:"memoryLimits"` - // Defines the ports on the container. - PortConfiguration *ContainerGroupDefinitionPortConfiguration `pulumi:"portConfiguration"` - // The digest of the container image. - ResolvedImageDigest *string `pulumi:"resolvedImageDigest"` - // The working directory to run commands inside the container in. - WorkingDirectory *string `pulumi:"workingDirectory"` -} - -// ContainerGroupDefinitionContainerDefinitionInput is an input type that accepts ContainerGroupDefinitionContainerDefinitionArgs and ContainerGroupDefinitionContainerDefinitionOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerDefinitionInput` via: -// -// ContainerGroupDefinitionContainerDefinitionArgs{...} -type ContainerGroupDefinitionContainerDefinitionInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerDefinitionOutput() ContainerGroupDefinitionContainerDefinitionOutput - ToContainerGroupDefinitionContainerDefinitionOutputWithContext(context.Context) ContainerGroupDefinitionContainerDefinitionOutput -} - -// Details about a container that is used in a container fleet -type ContainerGroupDefinitionContainerDefinitionArgs struct { - // The command that's passed to the container. - Command pulumi.StringArrayInput `pulumi:"command"` - // A descriptive label for the container definition. Container definition names must be unique with a container group definition. - ContainerName pulumi.StringInput `pulumi:"containerName"` - // The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - Cpu pulumi.IntPtrInput `pulumi:"cpu"` - // A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - DependsOn ContainerGroupDefinitionContainerDependencyArrayInput `pulumi:"dependsOn"` - // The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - EntryPoint pulumi.StringArrayInput `pulumi:"entryPoint"` - // The environment variables to pass to a container. - Environment ContainerGroupDefinitionContainerEnvironmentArrayInput `pulumi:"environment"` - // Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - Essential pulumi.BoolPtrInput `pulumi:"essential"` - // Specifies how the health of the containers will be checked. - HealthCheck ContainerGroupDefinitionContainerHealthCheckPtrInput `pulumi:"healthCheck"` - // Specifies the image URI of this container. - ImageUri pulumi.StringInput `pulumi:"imageUri"` - // Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - MemoryLimits ContainerGroupDefinitionMemoryLimitsPtrInput `pulumi:"memoryLimits"` - // Defines the ports on the container. - PortConfiguration ContainerGroupDefinitionPortConfigurationPtrInput `pulumi:"portConfiguration"` - // The digest of the container image. - ResolvedImageDigest pulumi.StringPtrInput `pulumi:"resolvedImageDigest"` - // The working directory to run commands inside the container in. - WorkingDirectory pulumi.StringPtrInput `pulumi:"workingDirectory"` -} - -func (ContainerGroupDefinitionContainerDefinitionArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerDefinition)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerDefinitionArgs) ToContainerGroupDefinitionContainerDefinitionOutput() ContainerGroupDefinitionContainerDefinitionOutput { - return i.ToContainerGroupDefinitionContainerDefinitionOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerDefinitionArgs) ToContainerGroupDefinitionContainerDefinitionOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDefinitionOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerDefinitionOutput) -} - -// ContainerGroupDefinitionContainerDefinitionArrayInput is an input type that accepts ContainerGroupDefinitionContainerDefinitionArray and ContainerGroupDefinitionContainerDefinitionArrayOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerDefinitionArrayInput` via: -// -// ContainerGroupDefinitionContainerDefinitionArray{ ContainerGroupDefinitionContainerDefinitionArgs{...} } -type ContainerGroupDefinitionContainerDefinitionArrayInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerDefinitionArrayOutput() ContainerGroupDefinitionContainerDefinitionArrayOutput - ToContainerGroupDefinitionContainerDefinitionArrayOutputWithContext(context.Context) ContainerGroupDefinitionContainerDefinitionArrayOutput -} - -type ContainerGroupDefinitionContainerDefinitionArray []ContainerGroupDefinitionContainerDefinitionInput - -func (ContainerGroupDefinitionContainerDefinitionArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerGroupDefinitionContainerDefinition)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerDefinitionArray) ToContainerGroupDefinitionContainerDefinitionArrayOutput() ContainerGroupDefinitionContainerDefinitionArrayOutput { - return i.ToContainerGroupDefinitionContainerDefinitionArrayOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerDefinitionArray) ToContainerGroupDefinitionContainerDefinitionArrayOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDefinitionArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerDefinitionArrayOutput) -} - -// Details about a container that is used in a container fleet -type ContainerGroupDefinitionContainerDefinitionOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerDefinitionOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerDefinition)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerDefinitionOutput) ToContainerGroupDefinitionContainerDefinitionOutput() ContainerGroupDefinitionContainerDefinitionOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDefinitionOutput) ToContainerGroupDefinitionContainerDefinitionOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDefinitionOutput { - return o -} - -// The command that's passed to the container. -func (o ContainerGroupDefinitionContainerDefinitionOutput) Command() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) []string { return v.Command }).(pulumi.StringArrayOutput) -} - -// A descriptive label for the container definition. Container definition names must be unique with a container group definition. -func (o ContainerGroupDefinitionContainerDefinitionOutput) ContainerName() pulumi.StringOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) string { return v.ContainerName }).(pulumi.StringOutput) -} - -// The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units -func (o ContainerGroupDefinitionContainerDefinitionOutput) Cpu() pulumi.IntPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) *int { return v.Cpu }).(pulumi.IntPtrOutput) -} - -// A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. -func (o ContainerGroupDefinitionContainerDefinitionOutput) DependsOn() ContainerGroupDefinitionContainerDependencyArrayOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) []ContainerGroupDefinitionContainerDependency { - return v.DependsOn - }).(ContainerGroupDefinitionContainerDependencyArrayOutput) -} - -// The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. -func (o ContainerGroupDefinitionContainerDefinitionOutput) EntryPoint() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) []string { return v.EntryPoint }).(pulumi.StringArrayOutput) -} - -// The environment variables to pass to a container. -func (o ContainerGroupDefinitionContainerDefinitionOutput) Environment() ContainerGroupDefinitionContainerEnvironmentArrayOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) []ContainerGroupDefinitionContainerEnvironment { - return v.Environment - }).(ContainerGroupDefinitionContainerEnvironmentArrayOutput) -} - -// Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. -func (o ContainerGroupDefinitionContainerDefinitionOutput) Essential() pulumi.BoolPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) *bool { return v.Essential }).(pulumi.BoolPtrOutput) -} - -// Specifies how the health of the containers will be checked. -func (o ContainerGroupDefinitionContainerDefinitionOutput) HealthCheck() ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) *ContainerGroupDefinitionContainerHealthCheck { - return v.HealthCheck - }).(ContainerGroupDefinitionContainerHealthCheckPtrOutput) -} - -// Specifies the image URI of this container. -func (o ContainerGroupDefinitionContainerDefinitionOutput) ImageUri() pulumi.StringOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) string { return v.ImageUri }).(pulumi.StringOutput) -} - -// Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. -func (o ContainerGroupDefinitionContainerDefinitionOutput) MemoryLimits() ContainerGroupDefinitionMemoryLimitsPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) *ContainerGroupDefinitionMemoryLimits { - return v.MemoryLimits - }).(ContainerGroupDefinitionMemoryLimitsPtrOutput) -} - -// Defines the ports on the container. -func (o ContainerGroupDefinitionContainerDefinitionOutput) PortConfiguration() ContainerGroupDefinitionPortConfigurationPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) *ContainerGroupDefinitionPortConfiguration { - return v.PortConfiguration - }).(ContainerGroupDefinitionPortConfigurationPtrOutput) -} - -// The digest of the container image. -func (o ContainerGroupDefinitionContainerDefinitionOutput) ResolvedImageDigest() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) *string { return v.ResolvedImageDigest }).(pulumi.StringPtrOutput) -} - -// The working directory to run commands inside the container in. -func (o ContainerGroupDefinitionContainerDefinitionOutput) WorkingDirectory() pulumi.StringPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDefinition) *string { return v.WorkingDirectory }).(pulumi.StringPtrOutput) -} - -type ContainerGroupDefinitionContainerDefinitionArrayOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerDefinitionArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerGroupDefinitionContainerDefinition)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerDefinitionArrayOutput) ToContainerGroupDefinitionContainerDefinitionArrayOutput() ContainerGroupDefinitionContainerDefinitionArrayOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDefinitionArrayOutput) ToContainerGroupDefinitionContainerDefinitionArrayOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDefinitionArrayOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDefinitionArrayOutput) Index(i pulumi.IntInput) ContainerGroupDefinitionContainerDefinitionOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ContainerGroupDefinitionContainerDefinition { - return vs[0].([]ContainerGroupDefinitionContainerDefinition)[vs[1].(int)] - }).(ContainerGroupDefinitionContainerDefinitionOutput) -} - -// A dependency that impacts a container's startup and shutdown. -type ContainerGroupDefinitionContainerDependency struct { - // The type of dependency. - Condition ContainerGroupDefinitionContainerDependencyCondition `pulumi:"condition"` - // A descriptive label for the container definition. The container being defined depends on this container's condition. - ContainerName string `pulumi:"containerName"` -} - -// ContainerGroupDefinitionContainerDependencyInput is an input type that accepts ContainerGroupDefinitionContainerDependencyArgs and ContainerGroupDefinitionContainerDependencyOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerDependencyInput` via: -// -// ContainerGroupDefinitionContainerDependencyArgs{...} -type ContainerGroupDefinitionContainerDependencyInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerDependencyOutput() ContainerGroupDefinitionContainerDependencyOutput - ToContainerGroupDefinitionContainerDependencyOutputWithContext(context.Context) ContainerGroupDefinitionContainerDependencyOutput -} - -// A dependency that impacts a container's startup and shutdown. -type ContainerGroupDefinitionContainerDependencyArgs struct { - // The type of dependency. - Condition ContainerGroupDefinitionContainerDependencyConditionInput `pulumi:"condition"` - // A descriptive label for the container definition. The container being defined depends on this container's condition. - ContainerName pulumi.StringInput `pulumi:"containerName"` -} - -func (ContainerGroupDefinitionContainerDependencyArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerDependency)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerDependencyArgs) ToContainerGroupDefinitionContainerDependencyOutput() ContainerGroupDefinitionContainerDependencyOutput { - return i.ToContainerGroupDefinitionContainerDependencyOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerDependencyArgs) ToContainerGroupDefinitionContainerDependencyOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerDependencyOutput) -} - -// ContainerGroupDefinitionContainerDependencyArrayInput is an input type that accepts ContainerGroupDefinitionContainerDependencyArray and ContainerGroupDefinitionContainerDependencyArrayOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerDependencyArrayInput` via: -// -// ContainerGroupDefinitionContainerDependencyArray{ ContainerGroupDefinitionContainerDependencyArgs{...} } -type ContainerGroupDefinitionContainerDependencyArrayInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerDependencyArrayOutput() ContainerGroupDefinitionContainerDependencyArrayOutput - ToContainerGroupDefinitionContainerDependencyArrayOutputWithContext(context.Context) ContainerGroupDefinitionContainerDependencyArrayOutput -} - -type ContainerGroupDefinitionContainerDependencyArray []ContainerGroupDefinitionContainerDependencyInput - -func (ContainerGroupDefinitionContainerDependencyArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerGroupDefinitionContainerDependency)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerDependencyArray) ToContainerGroupDefinitionContainerDependencyArrayOutput() ContainerGroupDefinitionContainerDependencyArrayOutput { - return i.ToContainerGroupDefinitionContainerDependencyArrayOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerDependencyArray) ToContainerGroupDefinitionContainerDependencyArrayOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerDependencyArrayOutput) -} - -// A dependency that impacts a container's startup and shutdown. -type ContainerGroupDefinitionContainerDependencyOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerDependencyOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerDependency)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerDependencyOutput) ToContainerGroupDefinitionContainerDependencyOutput() ContainerGroupDefinitionContainerDependencyOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDependencyOutput) ToContainerGroupDefinitionContainerDependencyOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyOutput { - return o -} - -// The type of dependency. -func (o ContainerGroupDefinitionContainerDependencyOutput) Condition() ContainerGroupDefinitionContainerDependencyConditionOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDependency) ContainerGroupDefinitionContainerDependencyCondition { - return v.Condition - }).(ContainerGroupDefinitionContainerDependencyConditionOutput) -} - -// A descriptive label for the container definition. The container being defined depends on this container's condition. -func (o ContainerGroupDefinitionContainerDependencyOutput) ContainerName() pulumi.StringOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerDependency) string { return v.ContainerName }).(pulumi.StringOutput) -} - -type ContainerGroupDefinitionContainerDependencyArrayOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerDependencyArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerGroupDefinitionContainerDependency)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerDependencyArrayOutput) ToContainerGroupDefinitionContainerDependencyArrayOutput() ContainerGroupDefinitionContainerDependencyArrayOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDependencyArrayOutput) ToContainerGroupDefinitionContainerDependencyArrayOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerDependencyArrayOutput { - return o -} - -func (o ContainerGroupDefinitionContainerDependencyArrayOutput) Index(i pulumi.IntInput) ContainerGroupDefinitionContainerDependencyOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ContainerGroupDefinitionContainerDependency { - return vs[0].([]ContainerGroupDefinitionContainerDependency)[vs[1].(int)] - }).(ContainerGroupDefinitionContainerDependencyOutput) -} - -// An environment variable to set inside a container, in the form of a key-value pair. -type ContainerGroupDefinitionContainerEnvironment struct { - // The environment variable name. - Name string `pulumi:"name"` - // The environment variable value. - Value string `pulumi:"value"` -} - -// ContainerGroupDefinitionContainerEnvironmentInput is an input type that accepts ContainerGroupDefinitionContainerEnvironmentArgs and ContainerGroupDefinitionContainerEnvironmentOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerEnvironmentInput` via: -// -// ContainerGroupDefinitionContainerEnvironmentArgs{...} -type ContainerGroupDefinitionContainerEnvironmentInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerEnvironmentOutput() ContainerGroupDefinitionContainerEnvironmentOutput - ToContainerGroupDefinitionContainerEnvironmentOutputWithContext(context.Context) ContainerGroupDefinitionContainerEnvironmentOutput -} - -// An environment variable to set inside a container, in the form of a key-value pair. -type ContainerGroupDefinitionContainerEnvironmentArgs struct { - // The environment variable name. - Name pulumi.StringInput `pulumi:"name"` - // The environment variable value. - Value pulumi.StringInput `pulumi:"value"` -} - -func (ContainerGroupDefinitionContainerEnvironmentArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerEnvironment)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerEnvironmentArgs) ToContainerGroupDefinitionContainerEnvironmentOutput() ContainerGroupDefinitionContainerEnvironmentOutput { - return i.ToContainerGroupDefinitionContainerEnvironmentOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerEnvironmentArgs) ToContainerGroupDefinitionContainerEnvironmentOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerEnvironmentOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerEnvironmentOutput) -} - -// ContainerGroupDefinitionContainerEnvironmentArrayInput is an input type that accepts ContainerGroupDefinitionContainerEnvironmentArray and ContainerGroupDefinitionContainerEnvironmentArrayOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerEnvironmentArrayInput` via: -// -// ContainerGroupDefinitionContainerEnvironmentArray{ ContainerGroupDefinitionContainerEnvironmentArgs{...} } -type ContainerGroupDefinitionContainerEnvironmentArrayInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerEnvironmentArrayOutput() ContainerGroupDefinitionContainerEnvironmentArrayOutput - ToContainerGroupDefinitionContainerEnvironmentArrayOutputWithContext(context.Context) ContainerGroupDefinitionContainerEnvironmentArrayOutput -} - -type ContainerGroupDefinitionContainerEnvironmentArray []ContainerGroupDefinitionContainerEnvironmentInput - -func (ContainerGroupDefinitionContainerEnvironmentArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerGroupDefinitionContainerEnvironment)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerEnvironmentArray) ToContainerGroupDefinitionContainerEnvironmentArrayOutput() ContainerGroupDefinitionContainerEnvironmentArrayOutput { - return i.ToContainerGroupDefinitionContainerEnvironmentArrayOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerEnvironmentArray) ToContainerGroupDefinitionContainerEnvironmentArrayOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerEnvironmentArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerEnvironmentArrayOutput) -} - -// An environment variable to set inside a container, in the form of a key-value pair. -type ContainerGroupDefinitionContainerEnvironmentOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerEnvironmentOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerEnvironment)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerEnvironmentOutput) ToContainerGroupDefinitionContainerEnvironmentOutput() ContainerGroupDefinitionContainerEnvironmentOutput { - return o -} - -func (o ContainerGroupDefinitionContainerEnvironmentOutput) ToContainerGroupDefinitionContainerEnvironmentOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerEnvironmentOutput { - return o -} - -// The environment variable name. -func (o ContainerGroupDefinitionContainerEnvironmentOutput) Name() pulumi.StringOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerEnvironment) string { return v.Name }).(pulumi.StringOutput) -} - -// The environment variable value. -func (o ContainerGroupDefinitionContainerEnvironmentOutput) Value() pulumi.StringOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerEnvironment) string { return v.Value }).(pulumi.StringOutput) -} - -type ContainerGroupDefinitionContainerEnvironmentArrayOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerEnvironmentArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerGroupDefinitionContainerEnvironment)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerEnvironmentArrayOutput) ToContainerGroupDefinitionContainerEnvironmentArrayOutput() ContainerGroupDefinitionContainerEnvironmentArrayOutput { - return o -} - -func (o ContainerGroupDefinitionContainerEnvironmentArrayOutput) ToContainerGroupDefinitionContainerEnvironmentArrayOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerEnvironmentArrayOutput { - return o -} - -func (o ContainerGroupDefinitionContainerEnvironmentArrayOutput) Index(i pulumi.IntInput) ContainerGroupDefinitionContainerEnvironmentOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ContainerGroupDefinitionContainerEnvironment { - return vs[0].([]ContainerGroupDefinitionContainerEnvironment)[vs[1].(int)] - }).(ContainerGroupDefinitionContainerEnvironmentOutput) -} - -// Specifies how the process manager checks the health of containers. -type ContainerGroupDefinitionContainerHealthCheck struct { - // A string array representing the command that the container runs to determine if it is healthy. - Command []string `pulumi:"command"` - // How often (in seconds) the health is checked. - Interval *int `pulumi:"interval"` - // How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - Retries *int `pulumi:"retries"` - // The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - StartPeriod *int `pulumi:"startPeriod"` - // How many seconds the process manager allows the command to run before canceling it. - Timeout *int `pulumi:"timeout"` -} - -// ContainerGroupDefinitionContainerHealthCheckInput is an input type that accepts ContainerGroupDefinitionContainerHealthCheckArgs and ContainerGroupDefinitionContainerHealthCheckOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerHealthCheckInput` via: -// -// ContainerGroupDefinitionContainerHealthCheckArgs{...} -type ContainerGroupDefinitionContainerHealthCheckInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerHealthCheckOutput() ContainerGroupDefinitionContainerHealthCheckOutput - ToContainerGroupDefinitionContainerHealthCheckOutputWithContext(context.Context) ContainerGroupDefinitionContainerHealthCheckOutput -} - -// Specifies how the process manager checks the health of containers. -type ContainerGroupDefinitionContainerHealthCheckArgs struct { - // A string array representing the command that the container runs to determine if it is healthy. - Command pulumi.StringArrayInput `pulumi:"command"` - // How often (in seconds) the health is checked. - Interval pulumi.IntPtrInput `pulumi:"interval"` - // How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - Retries pulumi.IntPtrInput `pulumi:"retries"` - // The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - StartPeriod pulumi.IntPtrInput `pulumi:"startPeriod"` - // How many seconds the process manager allows the command to run before canceling it. - Timeout pulumi.IntPtrInput `pulumi:"timeout"` -} - -func (ContainerGroupDefinitionContainerHealthCheckArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerHealthCheck)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerHealthCheckArgs) ToContainerGroupDefinitionContainerHealthCheckOutput() ContainerGroupDefinitionContainerHealthCheckOutput { - return i.ToContainerGroupDefinitionContainerHealthCheckOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerHealthCheckArgs) ToContainerGroupDefinitionContainerHealthCheckOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerHealthCheckOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerHealthCheckOutput) -} - -func (i ContainerGroupDefinitionContainerHealthCheckArgs) ToContainerGroupDefinitionContainerHealthCheckPtrOutput() ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return i.ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerHealthCheckArgs) ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerHealthCheckOutput).ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(ctx) -} - -// ContainerGroupDefinitionContainerHealthCheckPtrInput is an input type that accepts ContainerGroupDefinitionContainerHealthCheckArgs, ContainerGroupDefinitionContainerHealthCheckPtr and ContainerGroupDefinitionContainerHealthCheckPtrOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerHealthCheckPtrInput` via: -// -// ContainerGroupDefinitionContainerHealthCheckArgs{...} -// -// or: -// -// nil -type ContainerGroupDefinitionContainerHealthCheckPtrInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerHealthCheckPtrOutput() ContainerGroupDefinitionContainerHealthCheckPtrOutput - ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(context.Context) ContainerGroupDefinitionContainerHealthCheckPtrOutput -} - -type containerGroupDefinitionContainerHealthCheckPtrType ContainerGroupDefinitionContainerHealthCheckArgs - -func ContainerGroupDefinitionContainerHealthCheckPtr(v *ContainerGroupDefinitionContainerHealthCheckArgs) ContainerGroupDefinitionContainerHealthCheckPtrInput { - return (*containerGroupDefinitionContainerHealthCheckPtrType)(v) -} - -func (*containerGroupDefinitionContainerHealthCheckPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionContainerHealthCheck)(nil)).Elem() -} - -func (i *containerGroupDefinitionContainerHealthCheckPtrType) ToContainerGroupDefinitionContainerHealthCheckPtrOutput() ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return i.ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(context.Background()) -} - -func (i *containerGroupDefinitionContainerHealthCheckPtrType) ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerHealthCheckPtrOutput) -} - -// Specifies how the process manager checks the health of containers. -type ContainerGroupDefinitionContainerHealthCheckOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerHealthCheckOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerHealthCheck)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerHealthCheckOutput) ToContainerGroupDefinitionContainerHealthCheckOutput() ContainerGroupDefinitionContainerHealthCheckOutput { - return o -} - -func (o ContainerGroupDefinitionContainerHealthCheckOutput) ToContainerGroupDefinitionContainerHealthCheckOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerHealthCheckOutput { - return o -} - -func (o ContainerGroupDefinitionContainerHealthCheckOutput) ToContainerGroupDefinitionContainerHealthCheckPtrOutput() ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return o.ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionContainerHealthCheckOutput) ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerGroupDefinitionContainerHealthCheck) *ContainerGroupDefinitionContainerHealthCheck { - return &v - }).(ContainerGroupDefinitionContainerHealthCheckPtrOutput) -} - -// A string array representing the command that the container runs to determine if it is healthy. -func (o ContainerGroupDefinitionContainerHealthCheckOutput) Command() pulumi.StringArrayOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerHealthCheck) []string { return v.Command }).(pulumi.StringArrayOutput) -} - -// How often (in seconds) the health is checked. -func (o ContainerGroupDefinitionContainerHealthCheckOutput) Interval() pulumi.IntPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerHealthCheck) *int { return v.Interval }).(pulumi.IntPtrOutput) -} - -// How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) -func (o ContainerGroupDefinitionContainerHealthCheckOutput) Retries() pulumi.IntPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerHealthCheck) *int { return v.Retries }).(pulumi.IntPtrOutput) -} - -// The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. -func (o ContainerGroupDefinitionContainerHealthCheckOutput) StartPeriod() pulumi.IntPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerHealthCheck) *int { return v.StartPeriod }).(pulumi.IntPtrOutput) -} - -// How many seconds the process manager allows the command to run before canceling it. -func (o ContainerGroupDefinitionContainerHealthCheckOutput) Timeout() pulumi.IntPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerHealthCheck) *int { return v.Timeout }).(pulumi.IntPtrOutput) -} - -type ContainerGroupDefinitionContainerHealthCheckPtrOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerHealthCheckPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionContainerHealthCheck)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerHealthCheckPtrOutput) ToContainerGroupDefinitionContainerHealthCheckPtrOutput() ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return o -} - -func (o ContainerGroupDefinitionContainerHealthCheckPtrOutput) ToContainerGroupDefinitionContainerHealthCheckPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerHealthCheckPtrOutput { - return o -} - -func (o ContainerGroupDefinitionContainerHealthCheckPtrOutput) Elem() ContainerGroupDefinitionContainerHealthCheckOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionContainerHealthCheck) ContainerGroupDefinitionContainerHealthCheck { - if v != nil { - return *v - } - var ret ContainerGroupDefinitionContainerHealthCheck - return ret - }).(ContainerGroupDefinitionContainerHealthCheckOutput) -} - -// A string array representing the command that the container runs to determine if it is healthy. -func (o ContainerGroupDefinitionContainerHealthCheckPtrOutput) Command() pulumi.StringArrayOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionContainerHealthCheck) []string { - if v == nil { - return nil - } - return v.Command - }).(pulumi.StringArrayOutput) -} - -// How often (in seconds) the health is checked. -func (o ContainerGroupDefinitionContainerHealthCheckPtrOutput) Interval() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionContainerHealthCheck) *int { - if v == nil { - return nil - } - return v.Interval - }).(pulumi.IntPtrOutput) -} - -// How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) -func (o ContainerGroupDefinitionContainerHealthCheckPtrOutput) Retries() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionContainerHealthCheck) *int { - if v == nil { - return nil - } - return v.Retries - }).(pulumi.IntPtrOutput) -} - -// The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. -func (o ContainerGroupDefinitionContainerHealthCheckPtrOutput) StartPeriod() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionContainerHealthCheck) *int { - if v == nil { - return nil - } - return v.StartPeriod - }).(pulumi.IntPtrOutput) -} - -// How many seconds the process manager allows the command to run before canceling it. -func (o ContainerGroupDefinitionContainerHealthCheckPtrOutput) Timeout() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionContainerHealthCheck) *int { - if v == nil { - return nil - } - return v.Timeout - }).(pulumi.IntPtrOutput) -} - -// A set of one or more port numbers that can be opened on the container. -type ContainerGroupDefinitionContainerPortRange struct { - // A starting value for the range of allowed port numbers. - FromPort int `pulumi:"fromPort"` - // Defines the protocol of these ports. - Protocol ContainerGroupDefinitionContainerPortRangeProtocol `pulumi:"protocol"` - // An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - ToPort int `pulumi:"toPort"` -} - -// ContainerGroupDefinitionContainerPortRangeInput is an input type that accepts ContainerGroupDefinitionContainerPortRangeArgs and ContainerGroupDefinitionContainerPortRangeOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerPortRangeInput` via: -// -// ContainerGroupDefinitionContainerPortRangeArgs{...} -type ContainerGroupDefinitionContainerPortRangeInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerPortRangeOutput() ContainerGroupDefinitionContainerPortRangeOutput - ToContainerGroupDefinitionContainerPortRangeOutputWithContext(context.Context) ContainerGroupDefinitionContainerPortRangeOutput -} - -// A set of one or more port numbers that can be opened on the container. -type ContainerGroupDefinitionContainerPortRangeArgs struct { - // A starting value for the range of allowed port numbers. - FromPort pulumi.IntInput `pulumi:"fromPort"` - // Defines the protocol of these ports. - Protocol ContainerGroupDefinitionContainerPortRangeProtocolInput `pulumi:"protocol"` - // An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - ToPort pulumi.IntInput `pulumi:"toPort"` -} - -func (ContainerGroupDefinitionContainerPortRangeArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerPortRange)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerPortRangeArgs) ToContainerGroupDefinitionContainerPortRangeOutput() ContainerGroupDefinitionContainerPortRangeOutput { - return i.ToContainerGroupDefinitionContainerPortRangeOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerPortRangeArgs) ToContainerGroupDefinitionContainerPortRangeOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerPortRangeOutput) -} - -// ContainerGroupDefinitionContainerPortRangeArrayInput is an input type that accepts ContainerGroupDefinitionContainerPortRangeArray and ContainerGroupDefinitionContainerPortRangeArrayOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionContainerPortRangeArrayInput` via: -// -// ContainerGroupDefinitionContainerPortRangeArray{ ContainerGroupDefinitionContainerPortRangeArgs{...} } -type ContainerGroupDefinitionContainerPortRangeArrayInput interface { - pulumi.Input - - ToContainerGroupDefinitionContainerPortRangeArrayOutput() ContainerGroupDefinitionContainerPortRangeArrayOutput - ToContainerGroupDefinitionContainerPortRangeArrayOutputWithContext(context.Context) ContainerGroupDefinitionContainerPortRangeArrayOutput -} - -type ContainerGroupDefinitionContainerPortRangeArray []ContainerGroupDefinitionContainerPortRangeInput - -func (ContainerGroupDefinitionContainerPortRangeArray) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerGroupDefinitionContainerPortRange)(nil)).Elem() -} - -func (i ContainerGroupDefinitionContainerPortRangeArray) ToContainerGroupDefinitionContainerPortRangeArrayOutput() ContainerGroupDefinitionContainerPortRangeArrayOutput { - return i.ToContainerGroupDefinitionContainerPortRangeArrayOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionContainerPortRangeArray) ToContainerGroupDefinitionContainerPortRangeArrayOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeArrayOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionContainerPortRangeArrayOutput) -} - -// A set of one or more port numbers that can be opened on the container. -type ContainerGroupDefinitionContainerPortRangeOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerPortRangeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionContainerPortRange)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerPortRangeOutput) ToContainerGroupDefinitionContainerPortRangeOutput() ContainerGroupDefinitionContainerPortRangeOutput { - return o -} - -func (o ContainerGroupDefinitionContainerPortRangeOutput) ToContainerGroupDefinitionContainerPortRangeOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeOutput { - return o -} - -// A starting value for the range of allowed port numbers. -func (o ContainerGroupDefinitionContainerPortRangeOutput) FromPort() pulumi.IntOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerPortRange) int { return v.FromPort }).(pulumi.IntOutput) -} - -// Defines the protocol of these ports. -func (o ContainerGroupDefinitionContainerPortRangeOutput) Protocol() ContainerGroupDefinitionContainerPortRangeProtocolOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerPortRange) ContainerGroupDefinitionContainerPortRangeProtocol { - return v.Protocol - }).(ContainerGroupDefinitionContainerPortRangeProtocolOutput) -} - -// An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. -func (o ContainerGroupDefinitionContainerPortRangeOutput) ToPort() pulumi.IntOutput { - return o.ApplyT(func(v ContainerGroupDefinitionContainerPortRange) int { return v.ToPort }).(pulumi.IntOutput) -} - -type ContainerGroupDefinitionContainerPortRangeArrayOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionContainerPortRangeArrayOutput) ElementType() reflect.Type { - return reflect.TypeOf((*[]ContainerGroupDefinitionContainerPortRange)(nil)).Elem() -} - -func (o ContainerGroupDefinitionContainerPortRangeArrayOutput) ToContainerGroupDefinitionContainerPortRangeArrayOutput() ContainerGroupDefinitionContainerPortRangeArrayOutput { - return o -} - -func (o ContainerGroupDefinitionContainerPortRangeArrayOutput) ToContainerGroupDefinitionContainerPortRangeArrayOutputWithContext(ctx context.Context) ContainerGroupDefinitionContainerPortRangeArrayOutput { - return o -} - -func (o ContainerGroupDefinitionContainerPortRangeArrayOutput) Index(i pulumi.IntInput) ContainerGroupDefinitionContainerPortRangeOutput { - return pulumi.All(o, i).ApplyT(func(vs []interface{}) ContainerGroupDefinitionContainerPortRange { - return vs[0].([]ContainerGroupDefinitionContainerPortRange)[vs[1].(int)] - }).(ContainerGroupDefinitionContainerPortRangeOutput) -} - -// Specifies how much memory is available to the container. -type ContainerGroupDefinitionMemoryLimits struct { - // The hard limit of memory to reserve for the container. - HardLimit *int `pulumi:"hardLimit"` - // The amount of memory that is reserved for the container. - SoftLimit *int `pulumi:"softLimit"` -} - -// ContainerGroupDefinitionMemoryLimitsInput is an input type that accepts ContainerGroupDefinitionMemoryLimitsArgs and ContainerGroupDefinitionMemoryLimitsOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionMemoryLimitsInput` via: -// -// ContainerGroupDefinitionMemoryLimitsArgs{...} -type ContainerGroupDefinitionMemoryLimitsInput interface { - pulumi.Input - - ToContainerGroupDefinitionMemoryLimitsOutput() ContainerGroupDefinitionMemoryLimitsOutput - ToContainerGroupDefinitionMemoryLimitsOutputWithContext(context.Context) ContainerGroupDefinitionMemoryLimitsOutput -} - -// Specifies how much memory is available to the container. -type ContainerGroupDefinitionMemoryLimitsArgs struct { - // The hard limit of memory to reserve for the container. - HardLimit pulumi.IntPtrInput `pulumi:"hardLimit"` - // The amount of memory that is reserved for the container. - SoftLimit pulumi.IntPtrInput `pulumi:"softLimit"` -} - -func (ContainerGroupDefinitionMemoryLimitsArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionMemoryLimits)(nil)).Elem() -} - -func (i ContainerGroupDefinitionMemoryLimitsArgs) ToContainerGroupDefinitionMemoryLimitsOutput() ContainerGroupDefinitionMemoryLimitsOutput { - return i.ToContainerGroupDefinitionMemoryLimitsOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionMemoryLimitsArgs) ToContainerGroupDefinitionMemoryLimitsOutputWithContext(ctx context.Context) ContainerGroupDefinitionMemoryLimitsOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionMemoryLimitsOutput) -} - -func (i ContainerGroupDefinitionMemoryLimitsArgs) ToContainerGroupDefinitionMemoryLimitsPtrOutput() ContainerGroupDefinitionMemoryLimitsPtrOutput { - return i.ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionMemoryLimitsArgs) ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionMemoryLimitsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionMemoryLimitsOutput).ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(ctx) -} - -// ContainerGroupDefinitionMemoryLimitsPtrInput is an input type that accepts ContainerGroupDefinitionMemoryLimitsArgs, ContainerGroupDefinitionMemoryLimitsPtr and ContainerGroupDefinitionMemoryLimitsPtrOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionMemoryLimitsPtrInput` via: -// -// ContainerGroupDefinitionMemoryLimitsArgs{...} -// -// or: -// -// nil -type ContainerGroupDefinitionMemoryLimitsPtrInput interface { - pulumi.Input - - ToContainerGroupDefinitionMemoryLimitsPtrOutput() ContainerGroupDefinitionMemoryLimitsPtrOutput - ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(context.Context) ContainerGroupDefinitionMemoryLimitsPtrOutput -} - -type containerGroupDefinitionMemoryLimitsPtrType ContainerGroupDefinitionMemoryLimitsArgs - -func ContainerGroupDefinitionMemoryLimitsPtr(v *ContainerGroupDefinitionMemoryLimitsArgs) ContainerGroupDefinitionMemoryLimitsPtrInput { - return (*containerGroupDefinitionMemoryLimitsPtrType)(v) -} - -func (*containerGroupDefinitionMemoryLimitsPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionMemoryLimits)(nil)).Elem() -} - -func (i *containerGroupDefinitionMemoryLimitsPtrType) ToContainerGroupDefinitionMemoryLimitsPtrOutput() ContainerGroupDefinitionMemoryLimitsPtrOutput { - return i.ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(context.Background()) -} - -func (i *containerGroupDefinitionMemoryLimitsPtrType) ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionMemoryLimitsPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionMemoryLimitsPtrOutput) -} - -// Specifies how much memory is available to the container. -type ContainerGroupDefinitionMemoryLimitsOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionMemoryLimitsOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionMemoryLimits)(nil)).Elem() -} - -func (o ContainerGroupDefinitionMemoryLimitsOutput) ToContainerGroupDefinitionMemoryLimitsOutput() ContainerGroupDefinitionMemoryLimitsOutput { - return o -} - -func (o ContainerGroupDefinitionMemoryLimitsOutput) ToContainerGroupDefinitionMemoryLimitsOutputWithContext(ctx context.Context) ContainerGroupDefinitionMemoryLimitsOutput { - return o -} - -func (o ContainerGroupDefinitionMemoryLimitsOutput) ToContainerGroupDefinitionMemoryLimitsPtrOutput() ContainerGroupDefinitionMemoryLimitsPtrOutput { - return o.ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionMemoryLimitsOutput) ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionMemoryLimitsPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerGroupDefinitionMemoryLimits) *ContainerGroupDefinitionMemoryLimits { - return &v - }).(ContainerGroupDefinitionMemoryLimitsPtrOutput) -} - -// The hard limit of memory to reserve for the container. -func (o ContainerGroupDefinitionMemoryLimitsOutput) HardLimit() pulumi.IntPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionMemoryLimits) *int { return v.HardLimit }).(pulumi.IntPtrOutput) -} - -// The amount of memory that is reserved for the container. -func (o ContainerGroupDefinitionMemoryLimitsOutput) SoftLimit() pulumi.IntPtrOutput { - return o.ApplyT(func(v ContainerGroupDefinitionMemoryLimits) *int { return v.SoftLimit }).(pulumi.IntPtrOutput) -} - -type ContainerGroupDefinitionMemoryLimitsPtrOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionMemoryLimitsPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionMemoryLimits)(nil)).Elem() -} - -func (o ContainerGroupDefinitionMemoryLimitsPtrOutput) ToContainerGroupDefinitionMemoryLimitsPtrOutput() ContainerGroupDefinitionMemoryLimitsPtrOutput { - return o -} - -func (o ContainerGroupDefinitionMemoryLimitsPtrOutput) ToContainerGroupDefinitionMemoryLimitsPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionMemoryLimitsPtrOutput { - return o -} - -func (o ContainerGroupDefinitionMemoryLimitsPtrOutput) Elem() ContainerGroupDefinitionMemoryLimitsOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionMemoryLimits) ContainerGroupDefinitionMemoryLimits { - if v != nil { - return *v - } - var ret ContainerGroupDefinitionMemoryLimits - return ret - }).(ContainerGroupDefinitionMemoryLimitsOutput) -} - -// The hard limit of memory to reserve for the container. -func (o ContainerGroupDefinitionMemoryLimitsPtrOutput) HardLimit() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionMemoryLimits) *int { - if v == nil { - return nil - } - return v.HardLimit - }).(pulumi.IntPtrOutput) -} - -// The amount of memory that is reserved for the container. -func (o ContainerGroupDefinitionMemoryLimitsPtrOutput) SoftLimit() pulumi.IntPtrOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionMemoryLimits) *int { - if v == nil { - return nil - } - return v.SoftLimit - }).(pulumi.IntPtrOutput) -} - -// Defines the ports on a container. -type ContainerGroupDefinitionPortConfiguration struct { - // Specifies one or more ranges of ports on a container. - ContainerPortRanges []ContainerGroupDefinitionContainerPortRange `pulumi:"containerPortRanges"` -} - -// ContainerGroupDefinitionPortConfigurationInput is an input type that accepts ContainerGroupDefinitionPortConfigurationArgs and ContainerGroupDefinitionPortConfigurationOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionPortConfigurationInput` via: -// -// ContainerGroupDefinitionPortConfigurationArgs{...} -type ContainerGroupDefinitionPortConfigurationInput interface { - pulumi.Input - - ToContainerGroupDefinitionPortConfigurationOutput() ContainerGroupDefinitionPortConfigurationOutput - ToContainerGroupDefinitionPortConfigurationOutputWithContext(context.Context) ContainerGroupDefinitionPortConfigurationOutput -} - -// Defines the ports on a container. -type ContainerGroupDefinitionPortConfigurationArgs struct { - // Specifies one or more ranges of ports on a container. - ContainerPortRanges ContainerGroupDefinitionContainerPortRangeArrayInput `pulumi:"containerPortRanges"` -} - -func (ContainerGroupDefinitionPortConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionPortConfiguration)(nil)).Elem() -} - -func (i ContainerGroupDefinitionPortConfigurationArgs) ToContainerGroupDefinitionPortConfigurationOutput() ContainerGroupDefinitionPortConfigurationOutput { - return i.ToContainerGroupDefinitionPortConfigurationOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionPortConfigurationArgs) ToContainerGroupDefinitionPortConfigurationOutputWithContext(ctx context.Context) ContainerGroupDefinitionPortConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionPortConfigurationOutput) -} - -func (i ContainerGroupDefinitionPortConfigurationArgs) ToContainerGroupDefinitionPortConfigurationPtrOutput() ContainerGroupDefinitionPortConfigurationPtrOutput { - return i.ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(context.Background()) -} - -func (i ContainerGroupDefinitionPortConfigurationArgs) ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionPortConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionPortConfigurationOutput).ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(ctx) -} - -// ContainerGroupDefinitionPortConfigurationPtrInput is an input type that accepts ContainerGroupDefinitionPortConfigurationArgs, ContainerGroupDefinitionPortConfigurationPtr and ContainerGroupDefinitionPortConfigurationPtrOutput values. -// You can construct a concrete instance of `ContainerGroupDefinitionPortConfigurationPtrInput` via: -// -// ContainerGroupDefinitionPortConfigurationArgs{...} -// -// or: -// -// nil -type ContainerGroupDefinitionPortConfigurationPtrInput interface { - pulumi.Input - - ToContainerGroupDefinitionPortConfigurationPtrOutput() ContainerGroupDefinitionPortConfigurationPtrOutput - ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(context.Context) ContainerGroupDefinitionPortConfigurationPtrOutput -} - -type containerGroupDefinitionPortConfigurationPtrType ContainerGroupDefinitionPortConfigurationArgs - -func ContainerGroupDefinitionPortConfigurationPtr(v *ContainerGroupDefinitionPortConfigurationArgs) ContainerGroupDefinitionPortConfigurationPtrInput { - return (*containerGroupDefinitionPortConfigurationPtrType)(v) -} - -func (*containerGroupDefinitionPortConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionPortConfiguration)(nil)).Elem() -} - -func (i *containerGroupDefinitionPortConfigurationPtrType) ToContainerGroupDefinitionPortConfigurationPtrOutput() ContainerGroupDefinitionPortConfigurationPtrOutput { - return i.ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(context.Background()) -} - -func (i *containerGroupDefinitionPortConfigurationPtrType) ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionPortConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(ContainerGroupDefinitionPortConfigurationPtrOutput) -} - -// Defines the ports on a container. -type ContainerGroupDefinitionPortConfigurationOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionPortConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*ContainerGroupDefinitionPortConfiguration)(nil)).Elem() -} - -func (o ContainerGroupDefinitionPortConfigurationOutput) ToContainerGroupDefinitionPortConfigurationOutput() ContainerGroupDefinitionPortConfigurationOutput { - return o -} - -func (o ContainerGroupDefinitionPortConfigurationOutput) ToContainerGroupDefinitionPortConfigurationOutputWithContext(ctx context.Context) ContainerGroupDefinitionPortConfigurationOutput { - return o -} - -func (o ContainerGroupDefinitionPortConfigurationOutput) ToContainerGroupDefinitionPortConfigurationPtrOutput() ContainerGroupDefinitionPortConfigurationPtrOutput { - return o.ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(context.Background()) -} - -func (o ContainerGroupDefinitionPortConfigurationOutput) ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionPortConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v ContainerGroupDefinitionPortConfiguration) *ContainerGroupDefinitionPortConfiguration { - return &v - }).(ContainerGroupDefinitionPortConfigurationPtrOutput) -} - -// Specifies one or more ranges of ports on a container. -func (o ContainerGroupDefinitionPortConfigurationOutput) ContainerPortRanges() ContainerGroupDefinitionContainerPortRangeArrayOutput { - return o.ApplyT(func(v ContainerGroupDefinitionPortConfiguration) []ContainerGroupDefinitionContainerPortRange { - return v.ContainerPortRanges - }).(ContainerGroupDefinitionContainerPortRangeArrayOutput) -} - -type ContainerGroupDefinitionPortConfigurationPtrOutput struct{ *pulumi.OutputState } - -func (ContainerGroupDefinitionPortConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**ContainerGroupDefinitionPortConfiguration)(nil)).Elem() -} - -func (o ContainerGroupDefinitionPortConfigurationPtrOutput) ToContainerGroupDefinitionPortConfigurationPtrOutput() ContainerGroupDefinitionPortConfigurationPtrOutput { - return o -} - -func (o ContainerGroupDefinitionPortConfigurationPtrOutput) ToContainerGroupDefinitionPortConfigurationPtrOutputWithContext(ctx context.Context) ContainerGroupDefinitionPortConfigurationPtrOutput { - return o -} - -func (o ContainerGroupDefinitionPortConfigurationPtrOutput) Elem() ContainerGroupDefinitionPortConfigurationOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionPortConfiguration) ContainerGroupDefinitionPortConfiguration { - if v != nil { - return *v - } - var ret ContainerGroupDefinitionPortConfiguration - return ret - }).(ContainerGroupDefinitionPortConfigurationOutput) -} - -// Specifies one or more ranges of ports on a container. -func (o ContainerGroupDefinitionPortConfigurationPtrOutput) ContainerPortRanges() ContainerGroupDefinitionContainerPortRangeArrayOutput { - return o.ApplyT(func(v *ContainerGroupDefinitionPortConfiguration) []ContainerGroupDefinitionContainerPortRange { - if v == nil { - return nil - } - return v.ContainerPortRanges - }).(ContainerGroupDefinitionContainerPortRangeArrayOutput) -} - -// A key-value pair to associate with a resource. -type ContainerGroupDefinitionTag struct { - // The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length. - Key string `pulumi:"key"` - // The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length. - Value string `pulumi:"value"` -} - -// Configuration for Anywhere fleet. -type FleetAnywhereConfiguration struct { - // Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost. - Cost string `pulumi:"cost"` -} - -// FleetAnywhereConfigurationInput is an input type that accepts FleetAnywhereConfigurationArgs and FleetAnywhereConfigurationOutput values. -// You can construct a concrete instance of `FleetAnywhereConfigurationInput` via: -// -// FleetAnywhereConfigurationArgs{...} -type FleetAnywhereConfigurationInput interface { - pulumi.Input - - ToFleetAnywhereConfigurationOutput() FleetAnywhereConfigurationOutput - ToFleetAnywhereConfigurationOutputWithContext(context.Context) FleetAnywhereConfigurationOutput -} - -// Configuration for Anywhere fleet. -type FleetAnywhereConfigurationArgs struct { - // Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost. - Cost pulumi.StringInput `pulumi:"cost"` -} - -func (FleetAnywhereConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*FleetAnywhereConfiguration)(nil)).Elem() -} - -func (i FleetAnywhereConfigurationArgs) ToFleetAnywhereConfigurationOutput() FleetAnywhereConfigurationOutput { - return i.ToFleetAnywhereConfigurationOutputWithContext(context.Background()) -} - -func (i FleetAnywhereConfigurationArgs) ToFleetAnywhereConfigurationOutputWithContext(ctx context.Context) FleetAnywhereConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetAnywhereConfigurationOutput) -} - -func (i FleetAnywhereConfigurationArgs) ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput { - return i.ToFleetAnywhereConfigurationPtrOutputWithContext(context.Background()) -} - -func (i FleetAnywhereConfigurationArgs) ToFleetAnywhereConfigurationPtrOutputWithContext(ctx context.Context) FleetAnywhereConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetAnywhereConfigurationOutput).ToFleetAnywhereConfigurationPtrOutputWithContext(ctx) -} - -// FleetAnywhereConfigurationPtrInput is an input type that accepts FleetAnywhereConfigurationArgs, FleetAnywhereConfigurationPtr and FleetAnywhereConfigurationPtrOutput values. -// You can construct a concrete instance of `FleetAnywhereConfigurationPtrInput` via: -// -// FleetAnywhereConfigurationArgs{...} -// -// or: -// -// nil -type FleetAnywhereConfigurationPtrInput interface { - pulumi.Input - - ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput - ToFleetAnywhereConfigurationPtrOutputWithContext(context.Context) FleetAnywhereConfigurationPtrOutput -} - -type fleetAnywhereConfigurationPtrType FleetAnywhereConfigurationArgs - -func FleetAnywhereConfigurationPtr(v *FleetAnywhereConfigurationArgs) FleetAnywhereConfigurationPtrInput { - return (*fleetAnywhereConfigurationPtrType)(v) -} - -func (*fleetAnywhereConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**FleetAnywhereConfiguration)(nil)).Elem() -} - -func (i *fleetAnywhereConfigurationPtrType) ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput { - return i.ToFleetAnywhereConfigurationPtrOutputWithContext(context.Background()) -} - -func (i *fleetAnywhereConfigurationPtrType) ToFleetAnywhereConfigurationPtrOutputWithContext(ctx context.Context) FleetAnywhereConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetAnywhereConfigurationPtrOutput) -} - -// Configuration for Anywhere fleet. -type FleetAnywhereConfigurationOutput struct{ *pulumi.OutputState } - -func (FleetAnywhereConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*FleetAnywhereConfiguration)(nil)).Elem() -} - -func (o FleetAnywhereConfigurationOutput) ToFleetAnywhereConfigurationOutput() FleetAnywhereConfigurationOutput { - return o -} - -func (o FleetAnywhereConfigurationOutput) ToFleetAnywhereConfigurationOutputWithContext(ctx context.Context) FleetAnywhereConfigurationOutput { - return o -} - -func (o FleetAnywhereConfigurationOutput) ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput { - return o.ToFleetAnywhereConfigurationPtrOutputWithContext(context.Background()) -} - -func (o FleetAnywhereConfigurationOutput) ToFleetAnywhereConfigurationPtrOutputWithContext(ctx context.Context) FleetAnywhereConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetAnywhereConfiguration) *FleetAnywhereConfiguration { - return &v - }).(FleetAnywhereConfigurationPtrOutput) -} - -// Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost. -func (o FleetAnywhereConfigurationOutput) Cost() pulumi.StringOutput { - return o.ApplyT(func(v FleetAnywhereConfiguration) string { return v.Cost }).(pulumi.StringOutput) -} - -type FleetAnywhereConfigurationPtrOutput struct{ *pulumi.OutputState } - -func (FleetAnywhereConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetAnywhereConfiguration)(nil)).Elem() -} - -func (o FleetAnywhereConfigurationPtrOutput) ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput { - return o -} - -func (o FleetAnywhereConfigurationPtrOutput) ToFleetAnywhereConfigurationPtrOutputWithContext(ctx context.Context) FleetAnywhereConfigurationPtrOutput { - return o -} - -func (o FleetAnywhereConfigurationPtrOutput) Elem() FleetAnywhereConfigurationOutput { - return o.ApplyT(func(v *FleetAnywhereConfiguration) FleetAnywhereConfiguration { - if v != nil { - return *v - } - var ret FleetAnywhereConfiguration - return ret - }).(FleetAnywhereConfigurationOutput) -} - -// Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost. -func (o FleetAnywhereConfigurationPtrOutput) Cost() pulumi.StringPtrOutput { - return o.ApplyT(func(v *FleetAnywhereConfiguration) *string { - if v == nil { - return nil - } - return &v.Cost - }).(pulumi.StringPtrOutput) -} - -// 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 FleetCertificateConfiguration struct { - // Indicates whether a TLS/SSL certificate is generated for a fleet. - // - // Valid values include: - // - // - *GENERATED* - Generate a TLS/SSL certificate for this fleet. - // - *DISABLED* - (default) Do not generate a TLS/SSL certificate for this fleet. - CertificateType FleetCertificateConfigurationCertificateType `pulumi:"certificateType"` -} - -// FleetCertificateConfigurationInput is an input type that accepts FleetCertificateConfigurationArgs and FleetCertificateConfigurationOutput values. -// You can construct a concrete instance of `FleetCertificateConfigurationInput` via: -// -// FleetCertificateConfigurationArgs{...} -type FleetCertificateConfigurationInput interface { - pulumi.Input - - ToFleetCertificateConfigurationOutput() FleetCertificateConfigurationOutput - ToFleetCertificateConfigurationOutputWithContext(context.Context) FleetCertificateConfigurationOutput -} - -// 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 FleetCertificateConfigurationArgs struct { - // Indicates whether a TLS/SSL certificate is generated for a fleet. - // - // Valid values include: - // - // - *GENERATED* - Generate a TLS/SSL certificate for this fleet. - // - *DISABLED* - (default) Do not generate a TLS/SSL certificate for this fleet. - CertificateType FleetCertificateConfigurationCertificateTypeInput `pulumi:"certificateType"` -} - -func (FleetCertificateConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*FleetCertificateConfiguration)(nil)).Elem() -} - -func (i FleetCertificateConfigurationArgs) ToFleetCertificateConfigurationOutput() FleetCertificateConfigurationOutput { - return i.ToFleetCertificateConfigurationOutputWithContext(context.Background()) -} - -func (i FleetCertificateConfigurationArgs) ToFleetCertificateConfigurationOutputWithContext(ctx context.Context) FleetCertificateConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetCertificateConfigurationOutput) -} - -func (i FleetCertificateConfigurationArgs) ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput { - return i.ToFleetCertificateConfigurationPtrOutputWithContext(context.Background()) -} - -func (i FleetCertificateConfigurationArgs) ToFleetCertificateConfigurationPtrOutputWithContext(ctx context.Context) FleetCertificateConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetCertificateConfigurationOutput).ToFleetCertificateConfigurationPtrOutputWithContext(ctx) -} - -// FleetCertificateConfigurationPtrInput is an input type that accepts FleetCertificateConfigurationArgs, FleetCertificateConfigurationPtr and FleetCertificateConfigurationPtrOutput values. -// You can construct a concrete instance of `FleetCertificateConfigurationPtrInput` via: -// -// FleetCertificateConfigurationArgs{...} -// -// or: -// -// nil -type FleetCertificateConfigurationPtrInput interface { - pulumi.Input - - ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput - ToFleetCertificateConfigurationPtrOutputWithContext(context.Context) FleetCertificateConfigurationPtrOutput -} - -type fleetCertificateConfigurationPtrType FleetCertificateConfigurationArgs - -func FleetCertificateConfigurationPtr(v *FleetCertificateConfigurationArgs) FleetCertificateConfigurationPtrInput { - return (*fleetCertificateConfigurationPtrType)(v) -} - -func (*fleetCertificateConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**FleetCertificateConfiguration)(nil)).Elem() -} - -func (i *fleetCertificateConfigurationPtrType) ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput { - return i.ToFleetCertificateConfigurationPtrOutputWithContext(context.Background()) -} - -func (i *fleetCertificateConfigurationPtrType) ToFleetCertificateConfigurationPtrOutputWithContext(ctx context.Context) FleetCertificateConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetCertificateConfigurationPtrOutput) -} - -// 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 FleetCertificateConfigurationOutput struct{ *pulumi.OutputState } - -func (FleetCertificateConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*FleetCertificateConfiguration)(nil)).Elem() -} - -func (o FleetCertificateConfigurationOutput) ToFleetCertificateConfigurationOutput() FleetCertificateConfigurationOutput { - return o -} - -func (o FleetCertificateConfigurationOutput) ToFleetCertificateConfigurationOutputWithContext(ctx context.Context) FleetCertificateConfigurationOutput { - return o -} - -func (o FleetCertificateConfigurationOutput) ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput { - return o.ToFleetCertificateConfigurationPtrOutputWithContext(context.Background()) -} - -func (o FleetCertificateConfigurationOutput) ToFleetCertificateConfigurationPtrOutputWithContext(ctx context.Context) FleetCertificateConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetCertificateConfiguration) *FleetCertificateConfiguration { - return &v - }).(FleetCertificateConfigurationPtrOutput) -} - -// Indicates whether a TLS/SSL certificate is generated for a fleet. -// -// Valid values include: -// -// - *GENERATED* - Generate a TLS/SSL certificate for this fleet. -// - *DISABLED* - (default) Do not generate a TLS/SSL certificate for this fleet. -func (o FleetCertificateConfigurationOutput) CertificateType() FleetCertificateConfigurationCertificateTypeOutput { - return o.ApplyT(func(v FleetCertificateConfiguration) FleetCertificateConfigurationCertificateType { - return v.CertificateType - }).(FleetCertificateConfigurationCertificateTypeOutput) -} - -type FleetCertificateConfigurationPtrOutput struct{ *pulumi.OutputState } - -func (FleetCertificateConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetCertificateConfiguration)(nil)).Elem() -} - -func (o FleetCertificateConfigurationPtrOutput) ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput { - return o -} - -func (o FleetCertificateConfigurationPtrOutput) ToFleetCertificateConfigurationPtrOutputWithContext(ctx context.Context) FleetCertificateConfigurationPtrOutput { - return o -} - -func (o FleetCertificateConfigurationPtrOutput) Elem() FleetCertificateConfigurationOutput { - return o.ApplyT(func(v *FleetCertificateConfiguration) FleetCertificateConfiguration { - if v != nil { - return *v - } - var ret FleetCertificateConfiguration - return ret - }).(FleetCertificateConfigurationOutput) -} - -// Indicates whether a TLS/SSL certificate is generated for a fleet. -// -// Valid values include: -// -// - *GENERATED* - Generate a TLS/SSL certificate for this fleet. -// - *DISABLED* - (default) Do not generate a TLS/SSL certificate for this fleet. -func (o FleetCertificateConfigurationPtrOutput) CertificateType() FleetCertificateConfigurationCertificateTypePtrOutput { - return o.ApplyT(func(v *FleetCertificateConfiguration) *FleetCertificateConfigurationCertificateType { - if v == nil { - return nil - } - return &v.CertificateType - }).(FleetCertificateConfigurationCertificateTypePtrOutput) -} - -// Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. -type FleetConnectionPortRange struct { - // A starting value for a range of allowed port numbers. - FromPort int `pulumi:"fromPort"` - // An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - ToPort int `pulumi:"toPort"` -} - -// FleetConnectionPortRangeInput is an input type that accepts FleetConnectionPortRangeArgs and FleetConnectionPortRangeOutput values. -// You can construct a concrete instance of `FleetConnectionPortRangeInput` via: -// -// FleetConnectionPortRangeArgs{...} -type FleetConnectionPortRangeInput interface { - pulumi.Input - - ToFleetConnectionPortRangeOutput() FleetConnectionPortRangeOutput - ToFleetConnectionPortRangeOutputWithContext(context.Context) FleetConnectionPortRangeOutput -} - -// Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. -type FleetConnectionPortRangeArgs struct { - // A starting value for a range of allowed port numbers. - FromPort pulumi.IntInput `pulumi:"fromPort"` - // An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - ToPort pulumi.IntInput `pulumi:"toPort"` -} - -func (FleetConnectionPortRangeArgs) ElementType() reflect.Type { - return reflect.TypeOf((*FleetConnectionPortRange)(nil)).Elem() -} - -func (i FleetConnectionPortRangeArgs) ToFleetConnectionPortRangeOutput() FleetConnectionPortRangeOutput { - return i.ToFleetConnectionPortRangeOutputWithContext(context.Background()) -} - -func (i FleetConnectionPortRangeArgs) ToFleetConnectionPortRangeOutputWithContext(ctx context.Context) FleetConnectionPortRangeOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetConnectionPortRangeOutput) -} - -func (i FleetConnectionPortRangeArgs) ToFleetConnectionPortRangePtrOutput() FleetConnectionPortRangePtrOutput { - return i.ToFleetConnectionPortRangePtrOutputWithContext(context.Background()) -} - -func (i FleetConnectionPortRangeArgs) ToFleetConnectionPortRangePtrOutputWithContext(ctx context.Context) FleetConnectionPortRangePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetConnectionPortRangeOutput).ToFleetConnectionPortRangePtrOutputWithContext(ctx) -} - -// FleetConnectionPortRangePtrInput is an input type that accepts FleetConnectionPortRangeArgs, FleetConnectionPortRangePtr and FleetConnectionPortRangePtrOutput values. -// You can construct a concrete instance of `FleetConnectionPortRangePtrInput` via: -// -// FleetConnectionPortRangeArgs{...} -// -// or: -// -// nil -type FleetConnectionPortRangePtrInput interface { - pulumi.Input - - ToFleetConnectionPortRangePtrOutput() FleetConnectionPortRangePtrOutput - ToFleetConnectionPortRangePtrOutputWithContext(context.Context) FleetConnectionPortRangePtrOutput -} - -type fleetConnectionPortRangePtrType FleetConnectionPortRangeArgs - -func FleetConnectionPortRangePtr(v *FleetConnectionPortRangeArgs) FleetConnectionPortRangePtrInput { - return (*fleetConnectionPortRangePtrType)(v) -} - -func (*fleetConnectionPortRangePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**FleetConnectionPortRange)(nil)).Elem() -} - -func (i *fleetConnectionPortRangePtrType) ToFleetConnectionPortRangePtrOutput() FleetConnectionPortRangePtrOutput { - return i.ToFleetConnectionPortRangePtrOutputWithContext(context.Background()) -} - -func (i *fleetConnectionPortRangePtrType) ToFleetConnectionPortRangePtrOutputWithContext(ctx context.Context) FleetConnectionPortRangePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetConnectionPortRangePtrOutput) -} - -// Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. -type FleetConnectionPortRangeOutput struct{ *pulumi.OutputState } - -func (FleetConnectionPortRangeOutput) ElementType() reflect.Type { - return reflect.TypeOf((*FleetConnectionPortRange)(nil)).Elem() -} - -func (o FleetConnectionPortRangeOutput) ToFleetConnectionPortRangeOutput() FleetConnectionPortRangeOutput { - return o -} - -func (o FleetConnectionPortRangeOutput) ToFleetConnectionPortRangeOutputWithContext(ctx context.Context) FleetConnectionPortRangeOutput { - return o -} - -func (o FleetConnectionPortRangeOutput) ToFleetConnectionPortRangePtrOutput() FleetConnectionPortRangePtrOutput { - return o.ToFleetConnectionPortRangePtrOutputWithContext(context.Background()) -} - -func (o FleetConnectionPortRangeOutput) ToFleetConnectionPortRangePtrOutputWithContext(ctx context.Context) FleetConnectionPortRangePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetConnectionPortRange) *FleetConnectionPortRange { - return &v - }).(FleetConnectionPortRangePtrOutput) -} - -// A starting value for a range of allowed port numbers. -func (o FleetConnectionPortRangeOutput) FromPort() pulumi.IntOutput { - return o.ApplyT(func(v FleetConnectionPortRange) int { return v.FromPort }).(pulumi.IntOutput) -} - -// An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. -func (o FleetConnectionPortRangeOutput) ToPort() pulumi.IntOutput { - return o.ApplyT(func(v FleetConnectionPortRange) int { return v.ToPort }).(pulumi.IntOutput) -} - -type FleetConnectionPortRangePtrOutput struct{ *pulumi.OutputState } - -func (FleetConnectionPortRangePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetConnectionPortRange)(nil)).Elem() -} - -func (o FleetConnectionPortRangePtrOutput) ToFleetConnectionPortRangePtrOutput() FleetConnectionPortRangePtrOutput { - return o -} - -func (o FleetConnectionPortRangePtrOutput) ToFleetConnectionPortRangePtrOutputWithContext(ctx context.Context) FleetConnectionPortRangePtrOutput { - return o -} - -func (o FleetConnectionPortRangePtrOutput) Elem() FleetConnectionPortRangeOutput { - return o.ApplyT(func(v *FleetConnectionPortRange) FleetConnectionPortRange { - if v != nil { - return *v - } - var ret FleetConnectionPortRange - return ret - }).(FleetConnectionPortRangeOutput) -} - -// A starting value for a range of allowed port numbers. -func (o FleetConnectionPortRangePtrOutput) FromPort() pulumi.IntPtrOutput { - return o.ApplyT(func(v *FleetConnectionPortRange) *int { - if v == nil { - return nil - } - return &v.FromPort - }).(pulumi.IntPtrOutput) -} - -// An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. -func (o FleetConnectionPortRangePtrOutput) ToPort() pulumi.IntPtrOutput { - return o.ApplyT(func(v *FleetConnectionPortRange) *int { - if v == nil { - return nil - } - return &v.ToPort - }).(pulumi.IntPtrOutput) +// A key-value pair to associate with a resource. +type ContainerGroupDefinitionTag struct { + // The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length. + Key string `pulumi:"key"` + // The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length. + Value string `pulumi:"value"` } -// Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. -type FleetContainerGroupsConfiguration struct { - // A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - // - // Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - // - // *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - // - // As a best practice, double the minimum number of connection ports. - // - // > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - ConnectionPortRange FleetConnectionPortRange `pulumi:"connectionPortRange"` - // The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - ContainerGroupDefinitionNames []string `pulumi:"containerGroupDefinitionNames"` - ContainerGroupsPerInstance *FleetContainerGroupsPerInstance `pulumi:"containerGroupsPerInstance"` +// Configuration for Anywhere fleet. +type FleetAnywhereConfiguration struct { + // Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost. + Cost string `pulumi:"cost"` } -// FleetContainerGroupsConfigurationInput is an input type that accepts FleetContainerGroupsConfigurationArgs and FleetContainerGroupsConfigurationOutput values. -// You can construct a concrete instance of `FleetContainerGroupsConfigurationInput` via: +// FleetAnywhereConfigurationInput is an input type that accepts FleetAnywhereConfigurationArgs and FleetAnywhereConfigurationOutput values. +// You can construct a concrete instance of `FleetAnywhereConfigurationInput` via: // -// FleetContainerGroupsConfigurationArgs{...} -type FleetContainerGroupsConfigurationInput interface { +// FleetAnywhereConfigurationArgs{...} +type FleetAnywhereConfigurationInput interface { pulumi.Input - ToFleetContainerGroupsConfigurationOutput() FleetContainerGroupsConfigurationOutput - ToFleetContainerGroupsConfigurationOutputWithContext(context.Context) FleetContainerGroupsConfigurationOutput + ToFleetAnywhereConfigurationOutput() FleetAnywhereConfigurationOutput + ToFleetAnywhereConfigurationOutputWithContext(context.Context) FleetAnywhereConfigurationOutput } -// Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. -type FleetContainerGroupsConfigurationArgs struct { - // A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - // - // Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - // - // *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - // - // As a best practice, double the minimum number of connection ports. - // - // > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - ConnectionPortRange FleetConnectionPortRangeInput `pulumi:"connectionPortRange"` - // The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - ContainerGroupDefinitionNames pulumi.StringArrayInput `pulumi:"containerGroupDefinitionNames"` - ContainerGroupsPerInstance FleetContainerGroupsPerInstancePtrInput `pulumi:"containerGroupsPerInstance"` +// Configuration for Anywhere fleet. +type FleetAnywhereConfigurationArgs struct { + // Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost. + Cost pulumi.StringInput `pulumi:"cost"` } -func (FleetContainerGroupsConfigurationArgs) ElementType() reflect.Type { - return reflect.TypeOf((*FleetContainerGroupsConfiguration)(nil)).Elem() +func (FleetAnywhereConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*FleetAnywhereConfiguration)(nil)).Elem() } -func (i FleetContainerGroupsConfigurationArgs) ToFleetContainerGroupsConfigurationOutput() FleetContainerGroupsConfigurationOutput { - return i.ToFleetContainerGroupsConfigurationOutputWithContext(context.Background()) +func (i FleetAnywhereConfigurationArgs) ToFleetAnywhereConfigurationOutput() FleetAnywhereConfigurationOutput { + return i.ToFleetAnywhereConfigurationOutputWithContext(context.Background()) } -func (i FleetContainerGroupsConfigurationArgs) ToFleetContainerGroupsConfigurationOutputWithContext(ctx context.Context) FleetContainerGroupsConfigurationOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetContainerGroupsConfigurationOutput) +func (i FleetAnywhereConfigurationArgs) ToFleetAnywhereConfigurationOutputWithContext(ctx context.Context) FleetAnywhereConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetAnywhereConfigurationOutput) } -func (i FleetContainerGroupsConfigurationArgs) ToFleetContainerGroupsConfigurationPtrOutput() FleetContainerGroupsConfigurationPtrOutput { - return i.ToFleetContainerGroupsConfigurationPtrOutputWithContext(context.Background()) +func (i FleetAnywhereConfigurationArgs) ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput { + return i.ToFleetAnywhereConfigurationPtrOutputWithContext(context.Background()) } -func (i FleetContainerGroupsConfigurationArgs) ToFleetContainerGroupsConfigurationPtrOutputWithContext(ctx context.Context) FleetContainerGroupsConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetContainerGroupsConfigurationOutput).ToFleetContainerGroupsConfigurationPtrOutputWithContext(ctx) +func (i FleetAnywhereConfigurationArgs) ToFleetAnywhereConfigurationPtrOutputWithContext(ctx context.Context) FleetAnywhereConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetAnywhereConfigurationOutput).ToFleetAnywhereConfigurationPtrOutputWithContext(ctx) } -// FleetContainerGroupsConfigurationPtrInput is an input type that accepts FleetContainerGroupsConfigurationArgs, FleetContainerGroupsConfigurationPtr and FleetContainerGroupsConfigurationPtrOutput values. -// You can construct a concrete instance of `FleetContainerGroupsConfigurationPtrInput` via: +// FleetAnywhereConfigurationPtrInput is an input type that accepts FleetAnywhereConfigurationArgs, FleetAnywhereConfigurationPtr and FleetAnywhereConfigurationPtrOutput values. +// You can construct a concrete instance of `FleetAnywhereConfigurationPtrInput` via: // -// FleetContainerGroupsConfigurationArgs{...} +// FleetAnywhereConfigurationArgs{...} // // or: // // nil -type FleetContainerGroupsConfigurationPtrInput interface { +type FleetAnywhereConfigurationPtrInput interface { pulumi.Input - ToFleetContainerGroupsConfigurationPtrOutput() FleetContainerGroupsConfigurationPtrOutput - ToFleetContainerGroupsConfigurationPtrOutputWithContext(context.Context) FleetContainerGroupsConfigurationPtrOutput + ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput + ToFleetAnywhereConfigurationPtrOutputWithContext(context.Context) FleetAnywhereConfigurationPtrOutput } -type fleetContainerGroupsConfigurationPtrType FleetContainerGroupsConfigurationArgs +type fleetAnywhereConfigurationPtrType FleetAnywhereConfigurationArgs -func FleetContainerGroupsConfigurationPtr(v *FleetContainerGroupsConfigurationArgs) FleetContainerGroupsConfigurationPtrInput { - return (*fleetContainerGroupsConfigurationPtrType)(v) +func FleetAnywhereConfigurationPtr(v *FleetAnywhereConfigurationArgs) FleetAnywhereConfigurationPtrInput { + return (*fleetAnywhereConfigurationPtrType)(v) } -func (*fleetContainerGroupsConfigurationPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**FleetContainerGroupsConfiguration)(nil)).Elem() +func (*fleetAnywhereConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**FleetAnywhereConfiguration)(nil)).Elem() } -func (i *fleetContainerGroupsConfigurationPtrType) ToFleetContainerGroupsConfigurationPtrOutput() FleetContainerGroupsConfigurationPtrOutput { - return i.ToFleetContainerGroupsConfigurationPtrOutputWithContext(context.Background()) +func (i *fleetAnywhereConfigurationPtrType) ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput { + return i.ToFleetAnywhereConfigurationPtrOutputWithContext(context.Background()) } -func (i *fleetContainerGroupsConfigurationPtrType) ToFleetContainerGroupsConfigurationPtrOutputWithContext(ctx context.Context) FleetContainerGroupsConfigurationPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetContainerGroupsConfigurationPtrOutput) +func (i *fleetAnywhereConfigurationPtrType) ToFleetAnywhereConfigurationPtrOutputWithContext(ctx context.Context) FleetAnywhereConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetAnywhereConfigurationPtrOutput) } -// Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. -type FleetContainerGroupsConfigurationOutput struct{ *pulumi.OutputState } +// Configuration for Anywhere fleet. +type FleetAnywhereConfigurationOutput struct{ *pulumi.OutputState } -func (FleetContainerGroupsConfigurationOutput) ElementType() reflect.Type { - return reflect.TypeOf((*FleetContainerGroupsConfiguration)(nil)).Elem() +func (FleetAnywhereConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetAnywhereConfiguration)(nil)).Elem() } -func (o FleetContainerGroupsConfigurationOutput) ToFleetContainerGroupsConfigurationOutput() FleetContainerGroupsConfigurationOutput { +func (o FleetAnywhereConfigurationOutput) ToFleetAnywhereConfigurationOutput() FleetAnywhereConfigurationOutput { return o } -func (o FleetContainerGroupsConfigurationOutput) ToFleetContainerGroupsConfigurationOutputWithContext(ctx context.Context) FleetContainerGroupsConfigurationOutput { +func (o FleetAnywhereConfigurationOutput) ToFleetAnywhereConfigurationOutputWithContext(ctx context.Context) FleetAnywhereConfigurationOutput { return o } -func (o FleetContainerGroupsConfigurationOutput) ToFleetContainerGroupsConfigurationPtrOutput() FleetContainerGroupsConfigurationPtrOutput { - return o.ToFleetContainerGroupsConfigurationPtrOutputWithContext(context.Background()) +func (o FleetAnywhereConfigurationOutput) ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput { + return o.ToFleetAnywhereConfigurationPtrOutputWithContext(context.Background()) } -func (o FleetContainerGroupsConfigurationOutput) ToFleetContainerGroupsConfigurationPtrOutputWithContext(ctx context.Context) FleetContainerGroupsConfigurationPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetContainerGroupsConfiguration) *FleetContainerGroupsConfiguration { +func (o FleetAnywhereConfigurationOutput) ToFleetAnywhereConfigurationPtrOutputWithContext(ctx context.Context) FleetAnywhereConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetAnywhereConfiguration) *FleetAnywhereConfiguration { return &v - }).(FleetContainerGroupsConfigurationPtrOutput) -} - -// A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. -// -// Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: -// -// *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* -// -// As a best practice, double the minimum number of connection ports. -// -// > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. -func (o FleetContainerGroupsConfigurationOutput) ConnectionPortRange() FleetConnectionPortRangeOutput { - return o.ApplyT(func(v FleetContainerGroupsConfiguration) FleetConnectionPortRange { return v.ConnectionPortRange }).(FleetConnectionPortRangeOutput) -} - -// The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. -func (o FleetContainerGroupsConfigurationOutput) ContainerGroupDefinitionNames() pulumi.StringArrayOutput { - return o.ApplyT(func(v FleetContainerGroupsConfiguration) []string { return v.ContainerGroupDefinitionNames }).(pulumi.StringArrayOutput) + }).(FleetAnywhereConfigurationPtrOutput) } -func (o FleetContainerGroupsConfigurationOutput) ContainerGroupsPerInstance() FleetContainerGroupsPerInstancePtrOutput { - return o.ApplyT(func(v FleetContainerGroupsConfiguration) *FleetContainerGroupsPerInstance { - return v.ContainerGroupsPerInstance - }).(FleetContainerGroupsPerInstancePtrOutput) +// Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost. +func (o FleetAnywhereConfigurationOutput) Cost() pulumi.StringOutput { + return o.ApplyT(func(v FleetAnywhereConfiguration) string { return v.Cost }).(pulumi.StringOutput) } -type FleetContainerGroupsConfigurationPtrOutput struct{ *pulumi.OutputState } +type FleetAnywhereConfigurationPtrOutput struct{ *pulumi.OutputState } -func (FleetContainerGroupsConfigurationPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetContainerGroupsConfiguration)(nil)).Elem() +func (FleetAnywhereConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetAnywhereConfiguration)(nil)).Elem() } -func (o FleetContainerGroupsConfigurationPtrOutput) ToFleetContainerGroupsConfigurationPtrOutput() FleetContainerGroupsConfigurationPtrOutput { +func (o FleetAnywhereConfigurationPtrOutput) ToFleetAnywhereConfigurationPtrOutput() FleetAnywhereConfigurationPtrOutput { return o } -func (o FleetContainerGroupsConfigurationPtrOutput) ToFleetContainerGroupsConfigurationPtrOutputWithContext(ctx context.Context) FleetContainerGroupsConfigurationPtrOutput { +func (o FleetAnywhereConfigurationPtrOutput) ToFleetAnywhereConfigurationPtrOutputWithContext(ctx context.Context) FleetAnywhereConfigurationPtrOutput { return o } -func (o FleetContainerGroupsConfigurationPtrOutput) Elem() FleetContainerGroupsConfigurationOutput { - return o.ApplyT(func(v *FleetContainerGroupsConfiguration) FleetContainerGroupsConfiguration { +func (o FleetAnywhereConfigurationPtrOutput) Elem() FleetAnywhereConfigurationOutput { + return o.ApplyT(func(v *FleetAnywhereConfiguration) FleetAnywhereConfiguration { if v != nil { return *v } - var ret FleetContainerGroupsConfiguration + var ret FleetAnywhereConfiguration return ret - }).(FleetContainerGroupsConfigurationOutput) -} - -// A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. -// -// Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: -// -// *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* -// -// As a best practice, double the minimum number of connection ports. -// -// > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. -func (o FleetContainerGroupsConfigurationPtrOutput) ConnectionPortRange() FleetConnectionPortRangePtrOutput { - return o.ApplyT(func(v *FleetContainerGroupsConfiguration) *FleetConnectionPortRange { - if v == nil { - return nil - } - return &v.ConnectionPortRange - }).(FleetConnectionPortRangePtrOutput) -} - -// The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. -func (o FleetContainerGroupsConfigurationPtrOutput) ContainerGroupDefinitionNames() pulumi.StringArrayOutput { - return o.ApplyT(func(v *FleetContainerGroupsConfiguration) []string { - if v == nil { - return nil - } - return v.ContainerGroupDefinitionNames - }).(pulumi.StringArrayOutput) + }).(FleetAnywhereConfigurationOutput) } -func (o FleetContainerGroupsConfigurationPtrOutput) ContainerGroupsPerInstance() FleetContainerGroupsPerInstancePtrOutput { - return o.ApplyT(func(v *FleetContainerGroupsConfiguration) *FleetContainerGroupsPerInstance { +// Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost. +func (o FleetAnywhereConfigurationPtrOutput) Cost() pulumi.StringPtrOutput { + return o.ApplyT(func(v *FleetAnywhereConfiguration) *string { if v == nil { return nil } - return v.ContainerGroupsPerInstance - }).(FleetContainerGroupsPerInstancePtrOutput) + return &v.Cost + }).(pulumi.StringPtrOutput) } -// The number of container groups per instance. -type FleetContainerGroupsPerInstance struct { - // Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - DesiredReplicaContainerGroupsPerInstance *int `pulumi:"desiredReplicaContainerGroupsPerInstance"` - // GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - MaxReplicaContainerGroupsPerInstance *int `pulumi:"maxReplicaContainerGroupsPerInstance"` +// 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 FleetCertificateConfiguration struct { + // Indicates whether a TLS/SSL certificate is generated for a fleet. + // + // Valid values include: + // + // - *GENERATED* - Generate a TLS/SSL certificate for this fleet. + // - *DISABLED* - (default) Do not generate a TLS/SSL certificate for this fleet. + CertificateType FleetCertificateConfigurationCertificateType `pulumi:"certificateType"` } -// FleetContainerGroupsPerInstanceInput is an input type that accepts FleetContainerGroupsPerInstanceArgs and FleetContainerGroupsPerInstanceOutput values. -// You can construct a concrete instance of `FleetContainerGroupsPerInstanceInput` via: +// FleetCertificateConfigurationInput is an input type that accepts FleetCertificateConfigurationArgs and FleetCertificateConfigurationOutput values. +// You can construct a concrete instance of `FleetCertificateConfigurationInput` via: // -// FleetContainerGroupsPerInstanceArgs{...} -type FleetContainerGroupsPerInstanceInput interface { +// FleetCertificateConfigurationArgs{...} +type FleetCertificateConfigurationInput interface { pulumi.Input - ToFleetContainerGroupsPerInstanceOutput() FleetContainerGroupsPerInstanceOutput - ToFleetContainerGroupsPerInstanceOutputWithContext(context.Context) FleetContainerGroupsPerInstanceOutput + ToFleetCertificateConfigurationOutput() FleetCertificateConfigurationOutput + ToFleetCertificateConfigurationOutputWithContext(context.Context) FleetCertificateConfigurationOutput } -// The number of container groups per instance. -type FleetContainerGroupsPerInstanceArgs struct { - // Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - DesiredReplicaContainerGroupsPerInstance pulumi.IntPtrInput `pulumi:"desiredReplicaContainerGroupsPerInstance"` - // GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - MaxReplicaContainerGroupsPerInstance pulumi.IntPtrInput `pulumi:"maxReplicaContainerGroupsPerInstance"` +// 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 FleetCertificateConfigurationArgs struct { + // Indicates whether a TLS/SSL certificate is generated for a fleet. + // + // Valid values include: + // + // - *GENERATED* - Generate a TLS/SSL certificate for this fleet. + // - *DISABLED* - (default) Do not generate a TLS/SSL certificate for this fleet. + CertificateType FleetCertificateConfigurationCertificateTypeInput `pulumi:"certificateType"` } -func (FleetContainerGroupsPerInstanceArgs) ElementType() reflect.Type { - return reflect.TypeOf((*FleetContainerGroupsPerInstance)(nil)).Elem() +func (FleetCertificateConfigurationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*FleetCertificateConfiguration)(nil)).Elem() } -func (i FleetContainerGroupsPerInstanceArgs) ToFleetContainerGroupsPerInstanceOutput() FleetContainerGroupsPerInstanceOutput { - return i.ToFleetContainerGroupsPerInstanceOutputWithContext(context.Background()) +func (i FleetCertificateConfigurationArgs) ToFleetCertificateConfigurationOutput() FleetCertificateConfigurationOutput { + return i.ToFleetCertificateConfigurationOutputWithContext(context.Background()) } -func (i FleetContainerGroupsPerInstanceArgs) ToFleetContainerGroupsPerInstanceOutputWithContext(ctx context.Context) FleetContainerGroupsPerInstanceOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetContainerGroupsPerInstanceOutput) +func (i FleetCertificateConfigurationArgs) ToFleetCertificateConfigurationOutputWithContext(ctx context.Context) FleetCertificateConfigurationOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetCertificateConfigurationOutput) } -func (i FleetContainerGroupsPerInstanceArgs) ToFleetContainerGroupsPerInstancePtrOutput() FleetContainerGroupsPerInstancePtrOutput { - return i.ToFleetContainerGroupsPerInstancePtrOutputWithContext(context.Background()) +func (i FleetCertificateConfigurationArgs) ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput { + return i.ToFleetCertificateConfigurationPtrOutputWithContext(context.Background()) } -func (i FleetContainerGroupsPerInstanceArgs) ToFleetContainerGroupsPerInstancePtrOutputWithContext(ctx context.Context) FleetContainerGroupsPerInstancePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetContainerGroupsPerInstanceOutput).ToFleetContainerGroupsPerInstancePtrOutputWithContext(ctx) +func (i FleetCertificateConfigurationArgs) ToFleetCertificateConfigurationPtrOutputWithContext(ctx context.Context) FleetCertificateConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetCertificateConfigurationOutput).ToFleetCertificateConfigurationPtrOutputWithContext(ctx) } -// FleetContainerGroupsPerInstancePtrInput is an input type that accepts FleetContainerGroupsPerInstanceArgs, FleetContainerGroupsPerInstancePtr and FleetContainerGroupsPerInstancePtrOutput values. -// You can construct a concrete instance of `FleetContainerGroupsPerInstancePtrInput` via: +// FleetCertificateConfigurationPtrInput is an input type that accepts FleetCertificateConfigurationArgs, FleetCertificateConfigurationPtr and FleetCertificateConfigurationPtrOutput values. +// You can construct a concrete instance of `FleetCertificateConfigurationPtrInput` via: // -// FleetContainerGroupsPerInstanceArgs{...} +// FleetCertificateConfigurationArgs{...} // // or: // // nil -type FleetContainerGroupsPerInstancePtrInput interface { +type FleetCertificateConfigurationPtrInput interface { pulumi.Input - ToFleetContainerGroupsPerInstancePtrOutput() FleetContainerGroupsPerInstancePtrOutput - ToFleetContainerGroupsPerInstancePtrOutputWithContext(context.Context) FleetContainerGroupsPerInstancePtrOutput + ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput + ToFleetCertificateConfigurationPtrOutputWithContext(context.Context) FleetCertificateConfigurationPtrOutput } -type fleetContainerGroupsPerInstancePtrType FleetContainerGroupsPerInstanceArgs +type fleetCertificateConfigurationPtrType FleetCertificateConfigurationArgs -func FleetContainerGroupsPerInstancePtr(v *FleetContainerGroupsPerInstanceArgs) FleetContainerGroupsPerInstancePtrInput { - return (*fleetContainerGroupsPerInstancePtrType)(v) +func FleetCertificateConfigurationPtr(v *FleetCertificateConfigurationArgs) FleetCertificateConfigurationPtrInput { + return (*fleetCertificateConfigurationPtrType)(v) } -func (*fleetContainerGroupsPerInstancePtrType) ElementType() reflect.Type { - return reflect.TypeOf((**FleetContainerGroupsPerInstance)(nil)).Elem() +func (*fleetCertificateConfigurationPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**FleetCertificateConfiguration)(nil)).Elem() } -func (i *fleetContainerGroupsPerInstancePtrType) ToFleetContainerGroupsPerInstancePtrOutput() FleetContainerGroupsPerInstancePtrOutput { - return i.ToFleetContainerGroupsPerInstancePtrOutputWithContext(context.Background()) +func (i *fleetCertificateConfigurationPtrType) ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput { + return i.ToFleetCertificateConfigurationPtrOutputWithContext(context.Background()) } -func (i *fleetContainerGroupsPerInstancePtrType) ToFleetContainerGroupsPerInstancePtrOutputWithContext(ctx context.Context) FleetContainerGroupsPerInstancePtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(FleetContainerGroupsPerInstancePtrOutput) +func (i *fleetCertificateConfigurationPtrType) ToFleetCertificateConfigurationPtrOutputWithContext(ctx context.Context) FleetCertificateConfigurationPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(FleetCertificateConfigurationPtrOutput) } -// The number of container groups per instance. -type FleetContainerGroupsPerInstanceOutput struct{ *pulumi.OutputState } +// 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 FleetCertificateConfigurationOutput struct{ *pulumi.OutputState } -func (FleetContainerGroupsPerInstanceOutput) ElementType() reflect.Type { - return reflect.TypeOf((*FleetContainerGroupsPerInstance)(nil)).Elem() +func (FleetCertificateConfigurationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*FleetCertificateConfiguration)(nil)).Elem() } -func (o FleetContainerGroupsPerInstanceOutput) ToFleetContainerGroupsPerInstanceOutput() FleetContainerGroupsPerInstanceOutput { +func (o FleetCertificateConfigurationOutput) ToFleetCertificateConfigurationOutput() FleetCertificateConfigurationOutput { return o } -func (o FleetContainerGroupsPerInstanceOutput) ToFleetContainerGroupsPerInstanceOutputWithContext(ctx context.Context) FleetContainerGroupsPerInstanceOutput { +func (o FleetCertificateConfigurationOutput) ToFleetCertificateConfigurationOutputWithContext(ctx context.Context) FleetCertificateConfigurationOutput { return o } -func (o FleetContainerGroupsPerInstanceOutput) ToFleetContainerGroupsPerInstancePtrOutput() FleetContainerGroupsPerInstancePtrOutput { - return o.ToFleetContainerGroupsPerInstancePtrOutputWithContext(context.Background()) +func (o FleetCertificateConfigurationOutput) ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput { + return o.ToFleetCertificateConfigurationPtrOutputWithContext(context.Background()) } -func (o FleetContainerGroupsPerInstanceOutput) ToFleetContainerGroupsPerInstancePtrOutputWithContext(ctx context.Context) FleetContainerGroupsPerInstancePtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetContainerGroupsPerInstance) *FleetContainerGroupsPerInstance { +func (o FleetCertificateConfigurationOutput) ToFleetCertificateConfigurationPtrOutputWithContext(ctx context.Context) FleetCertificateConfigurationPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v FleetCertificateConfiguration) *FleetCertificateConfiguration { return &v - }).(FleetContainerGroupsPerInstancePtrOutput) -} - -// Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. -func (o FleetContainerGroupsPerInstanceOutput) DesiredReplicaContainerGroupsPerInstance() pulumi.IntPtrOutput { - return o.ApplyT(func(v FleetContainerGroupsPerInstance) *int { return v.DesiredReplicaContainerGroupsPerInstance }).(pulumi.IntPtrOutput) + }).(FleetCertificateConfigurationPtrOutput) } -// GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. -func (o FleetContainerGroupsPerInstanceOutput) MaxReplicaContainerGroupsPerInstance() pulumi.IntPtrOutput { - return o.ApplyT(func(v FleetContainerGroupsPerInstance) *int { return v.MaxReplicaContainerGroupsPerInstance }).(pulumi.IntPtrOutput) +// Indicates whether a TLS/SSL certificate is generated for a fleet. +// +// Valid values include: +// +// - *GENERATED* - Generate a TLS/SSL certificate for this fleet. +// - *DISABLED* - (default) Do not generate a TLS/SSL certificate for this fleet. +func (o FleetCertificateConfigurationOutput) CertificateType() FleetCertificateConfigurationCertificateTypeOutput { + return o.ApplyT(func(v FleetCertificateConfiguration) FleetCertificateConfigurationCertificateType { + return v.CertificateType + }).(FleetCertificateConfigurationCertificateTypeOutput) } -type FleetContainerGroupsPerInstancePtrOutput struct{ *pulumi.OutputState } +type FleetCertificateConfigurationPtrOutput struct{ *pulumi.OutputState } -func (FleetContainerGroupsPerInstancePtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**FleetContainerGroupsPerInstance)(nil)).Elem() +func (FleetCertificateConfigurationPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**FleetCertificateConfiguration)(nil)).Elem() } -func (o FleetContainerGroupsPerInstancePtrOutput) ToFleetContainerGroupsPerInstancePtrOutput() FleetContainerGroupsPerInstancePtrOutput { +func (o FleetCertificateConfigurationPtrOutput) ToFleetCertificateConfigurationPtrOutput() FleetCertificateConfigurationPtrOutput { return o } -func (o FleetContainerGroupsPerInstancePtrOutput) ToFleetContainerGroupsPerInstancePtrOutputWithContext(ctx context.Context) FleetContainerGroupsPerInstancePtrOutput { +func (o FleetCertificateConfigurationPtrOutput) ToFleetCertificateConfigurationPtrOutputWithContext(ctx context.Context) FleetCertificateConfigurationPtrOutput { return o } -func (o FleetContainerGroupsPerInstancePtrOutput) Elem() FleetContainerGroupsPerInstanceOutput { - return o.ApplyT(func(v *FleetContainerGroupsPerInstance) FleetContainerGroupsPerInstance { +func (o FleetCertificateConfigurationPtrOutput) Elem() FleetCertificateConfigurationOutput { + return o.ApplyT(func(v *FleetCertificateConfiguration) FleetCertificateConfiguration { if v != nil { return *v } - var ret FleetContainerGroupsPerInstance + var ret FleetCertificateConfiguration return ret - }).(FleetContainerGroupsPerInstanceOutput) -} - -// Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. -func (o FleetContainerGroupsPerInstancePtrOutput) DesiredReplicaContainerGroupsPerInstance() pulumi.IntPtrOutput { - return o.ApplyT(func(v *FleetContainerGroupsPerInstance) *int { - if v == nil { - return nil - } - return v.DesiredReplicaContainerGroupsPerInstance - }).(pulumi.IntPtrOutput) + }).(FleetCertificateConfigurationOutput) } -// GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. -func (o FleetContainerGroupsPerInstancePtrOutput) MaxReplicaContainerGroupsPerInstance() pulumi.IntPtrOutput { - return o.ApplyT(func(v *FleetContainerGroupsPerInstance) *int { +// Indicates whether a TLS/SSL certificate is generated for a fleet. +// +// Valid values include: +// +// - *GENERATED* - Generate a TLS/SSL certificate for this fleet. +// - *DISABLED* - (default) Do not generate a TLS/SSL certificate for this fleet. +func (o FleetCertificateConfigurationPtrOutput) CertificateType() FleetCertificateConfigurationCertificateTypePtrOutput { + return o.ApplyT(func(v *FleetCertificateConfiguration) *FleetCertificateConfigurationCertificateType { if v == nil { return nil } - return v.MaxReplicaContainerGroupsPerInstance - }).(pulumi.IntPtrOutput) + return &v.CertificateType + }).(FleetCertificateConfigurationCertificateTypePtrOutput) } // 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. @@ -4895,30 +3294,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*AliasRoutingStrategyInput)(nil)).Elem(), AliasRoutingStrategyArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BuildStorageLocationInput)(nil)).Elem(), BuildStorageLocationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*BuildStorageLocationPtrInput)(nil)).Elem(), BuildStorageLocationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerDefinitionInput)(nil)).Elem(), ContainerGroupDefinitionContainerDefinitionArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerDefinitionArrayInput)(nil)).Elem(), ContainerGroupDefinitionContainerDefinitionArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerDependencyInput)(nil)).Elem(), ContainerGroupDefinitionContainerDependencyArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerDependencyArrayInput)(nil)).Elem(), ContainerGroupDefinitionContainerDependencyArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerEnvironmentInput)(nil)).Elem(), ContainerGroupDefinitionContainerEnvironmentArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerEnvironmentArrayInput)(nil)).Elem(), ContainerGroupDefinitionContainerEnvironmentArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerHealthCheckInput)(nil)).Elem(), ContainerGroupDefinitionContainerHealthCheckArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerHealthCheckPtrInput)(nil)).Elem(), ContainerGroupDefinitionContainerHealthCheckArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerPortRangeInput)(nil)).Elem(), ContainerGroupDefinitionContainerPortRangeArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionContainerPortRangeArrayInput)(nil)).Elem(), ContainerGroupDefinitionContainerPortRangeArray{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionMemoryLimitsInput)(nil)).Elem(), ContainerGroupDefinitionMemoryLimitsArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionMemoryLimitsPtrInput)(nil)).Elem(), ContainerGroupDefinitionMemoryLimitsArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionPortConfigurationInput)(nil)).Elem(), ContainerGroupDefinitionPortConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*ContainerGroupDefinitionPortConfigurationPtrInput)(nil)).Elem(), ContainerGroupDefinitionPortConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetAnywhereConfigurationInput)(nil)).Elem(), FleetAnywhereConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetAnywhereConfigurationPtrInput)(nil)).Elem(), FleetAnywhereConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetCertificateConfigurationInput)(nil)).Elem(), FleetCertificateConfigurationArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetCertificateConfigurationPtrInput)(nil)).Elem(), FleetCertificateConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*FleetConnectionPortRangeInput)(nil)).Elem(), FleetConnectionPortRangeArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*FleetConnectionPortRangePtrInput)(nil)).Elem(), FleetConnectionPortRangeArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*FleetContainerGroupsConfigurationInput)(nil)).Elem(), FleetContainerGroupsConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*FleetContainerGroupsConfigurationPtrInput)(nil)).Elem(), FleetContainerGroupsConfigurationArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*FleetContainerGroupsPerInstanceInput)(nil)).Elem(), FleetContainerGroupsPerInstanceArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*FleetContainerGroupsPerInstancePtrInput)(nil)).Elem(), FleetContainerGroupsPerInstanceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetIpPermissionInput)(nil)).Elem(), FleetIpPermissionArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetIpPermissionArrayInput)(nil)).Elem(), FleetIpPermissionArray{}) pulumi.RegisterInputType(reflect.TypeOf((*FleetLocationCapacityInput)(nil)).Elem(), FleetLocationCapacityArgs{}) @@ -4958,30 +3337,10 @@ func init() { pulumi.RegisterOutputType(AliasRoutingStrategyPtrOutput{}) pulumi.RegisterOutputType(BuildStorageLocationOutput{}) pulumi.RegisterOutputType(BuildStorageLocationPtrOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerDefinitionOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerDefinitionArrayOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerDependencyOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerDependencyArrayOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerEnvironmentOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerEnvironmentArrayOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerHealthCheckOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerHealthCheckPtrOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerPortRangeOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionContainerPortRangeArrayOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionMemoryLimitsOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionMemoryLimitsPtrOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionPortConfigurationOutput{}) - pulumi.RegisterOutputType(ContainerGroupDefinitionPortConfigurationPtrOutput{}) pulumi.RegisterOutputType(FleetAnywhereConfigurationOutput{}) pulumi.RegisterOutputType(FleetAnywhereConfigurationPtrOutput{}) pulumi.RegisterOutputType(FleetCertificateConfigurationOutput{}) pulumi.RegisterOutputType(FleetCertificateConfigurationPtrOutput{}) - pulumi.RegisterOutputType(FleetConnectionPortRangeOutput{}) - pulumi.RegisterOutputType(FleetConnectionPortRangePtrOutput{}) - pulumi.RegisterOutputType(FleetContainerGroupsConfigurationOutput{}) - pulumi.RegisterOutputType(FleetContainerGroupsConfigurationPtrOutput{}) - pulumi.RegisterOutputType(FleetContainerGroupsPerInstanceOutput{}) - pulumi.RegisterOutputType(FleetContainerGroupsPerInstancePtrOutput{}) pulumi.RegisterOutputType(FleetIpPermissionOutput{}) pulumi.RegisterOutputType(FleetIpPermissionArrayOutput{}) pulumi.RegisterOutputType(FleetLocationCapacityOutput{}) diff --git a/sdk/go/aws/iotwireless/deviceProfile.go b/sdk/go/aws/iotwireless/deviceProfile.go index 51494d3125..a24deb1cf6 100644 --- a/sdk/go/aws/iotwireless/deviceProfile.go +++ b/sdk/go/aws/iotwireless/deviceProfile.go @@ -35,6 +35,11 @@ func NewDeviceProfile(ctx *pulumi.Context, args = &DeviceProfileArgs{} } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "loRaWan", + "name", + }) + opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) var resource DeviceProfile err := ctx.RegisterResource("aws-native:iotwireless:DeviceProfile", name, args, &resource, opts...) diff --git a/sdk/go/aws/iotwireless/getDeviceProfile.go b/sdk/go/aws/iotwireless/getDeviceProfile.go index 36ce491b44..88dc552fa4 100644 --- a/sdk/go/aws/iotwireless/getDeviceProfile.go +++ b/sdk/go/aws/iotwireless/getDeviceProfile.go @@ -33,10 +33,6 @@ type LookupDeviceProfileResult struct { Arn *string `pulumi:"arn"` // Service profile Id. Returned after successful create. Id *string `pulumi:"id"` - // LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation - LoRaWan *DeviceProfileLoRaWanDeviceProfile `pulumi:"loRaWan"` - // Name of service profile - Name *string `pulumi:"name"` // A list of key-value pairs that contain metadata for the device profile. Tags []aws.Tag `pulumi:"tags"` } @@ -93,16 +89,6 @@ func (o LookupDeviceProfileResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupDeviceProfileResult) *string { return v.Id }).(pulumi.StringPtrOutput) } -// LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation -func (o LookupDeviceProfileResultOutput) LoRaWan() DeviceProfileLoRaWanDeviceProfilePtrOutput { - return o.ApplyT(func(v LookupDeviceProfileResult) *DeviceProfileLoRaWanDeviceProfile { return v.LoRaWan }).(DeviceProfileLoRaWanDeviceProfilePtrOutput) -} - -// Name of service profile -func (o LookupDeviceProfileResultOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupDeviceProfileResult) *string { return v.Name }).(pulumi.StringPtrOutput) -} - // A list of key-value pairs that contain metadata for the device profile. func (o LookupDeviceProfileResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupDeviceProfileResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) diff --git a/sdk/go/aws/iotwireless/getNetworkAnalyzerConfiguration.go b/sdk/go/aws/iotwireless/getNetworkAnalyzerConfiguration.go index 0ddf8ecfa3..ec1ba99e0b 100644 --- a/sdk/go/aws/iotwireless/getNetworkAnalyzerConfiguration.go +++ b/sdk/go/aws/iotwireless/getNetworkAnalyzerConfiguration.go @@ -7,6 +7,7 @@ import ( "context" "reflect" + "github.com/pulumi/pulumi-aws-native/sdk/go/aws" "github.com/pulumi/pulumi-aws-native/sdk/go/aws/internal" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" ) @@ -32,6 +33,8 @@ type LookupNetworkAnalyzerConfigurationResult struct { Arn *string `pulumi:"arn"` // The description of the new resource Description *string `pulumi:"description"` + // An array of key-value pairs to apply to this resource. + Tags []aws.Tag `pulumi:"tags"` // Trace content for your wireless gateway and wireless device resources TraceContent *TraceContentProperties `pulumi:"traceContent"` // List of wireless gateway resources that have been added to the network analyzer configuration @@ -92,6 +95,11 @@ func (o LookupNetworkAnalyzerConfigurationResultOutput) Description() pulumi.Str return o.ApplyT(func(v LookupNetworkAnalyzerConfigurationResult) *string { return v.Description }).(pulumi.StringPtrOutput) } +// An array of key-value pairs to apply to this resource. +func (o LookupNetworkAnalyzerConfigurationResultOutput) Tags() aws.TagArrayOutput { + return o.ApplyT(func(v LookupNetworkAnalyzerConfigurationResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) +} + // Trace content for your wireless gateway and wireless device resources func (o LookupNetworkAnalyzerConfigurationResultOutput) TraceContent() TraceContentPropertiesPtrOutput { return o.ApplyT(func(v LookupNetworkAnalyzerConfigurationResult) *TraceContentProperties { return v.TraceContent }).(TraceContentPropertiesPtrOutput) diff --git a/sdk/go/aws/iotwireless/getServiceProfile.go b/sdk/go/aws/iotwireless/getServiceProfile.go index 660cdd92f7..164e09a41c 100644 --- a/sdk/go/aws/iotwireless/getServiceProfile.go +++ b/sdk/go/aws/iotwireless/getServiceProfile.go @@ -33,10 +33,6 @@ type LookupServiceProfileResult struct { Arn *string `pulumi:"arn"` // Service profile Id. Returned after successful create. Id *string `pulumi:"id"` - // LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation - LoRaWan *ServiceProfileLoRaWanServiceProfile `pulumi:"loRaWan"` - // Name of service profile - Name *string `pulumi:"name"` // A list of key-value pairs that contain metadata for the service profile. Tags []aws.Tag `pulumi:"tags"` } @@ -93,16 +89,6 @@ func (o LookupServiceProfileResultOutput) Id() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupServiceProfileResult) *string { return v.Id }).(pulumi.StringPtrOutput) } -// LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation -func (o LookupServiceProfileResultOutput) LoRaWan() ServiceProfileLoRaWanServiceProfilePtrOutput { - return o.ApplyT(func(v LookupServiceProfileResult) *ServiceProfileLoRaWanServiceProfile { return v.LoRaWan }).(ServiceProfileLoRaWanServiceProfilePtrOutput) -} - -// Name of service profile -func (o LookupServiceProfileResultOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v LookupServiceProfileResult) *string { return v.Name }).(pulumi.StringPtrOutput) -} - // A list of key-value pairs that contain metadata for the service profile. func (o LookupServiceProfileResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupServiceProfileResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) diff --git a/sdk/go/aws/iotwireless/getWirelessDevice.go b/sdk/go/aws/iotwireless/getWirelessDevice.go index 233526a2d8..6a3e81454a 100644 --- a/sdk/go/aws/iotwireless/getWirelessDevice.go +++ b/sdk/go/aws/iotwireless/getWirelessDevice.go @@ -43,6 +43,8 @@ type LookupWirelessDeviceResult struct { LoRaWan *WirelessDeviceLoRaWanDevice `pulumi:"loRaWan"` // Wireless device name Name *string `pulumi:"name"` + // FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + Positioning *WirelessDevicePositioning `pulumi:"positioning"` // A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. Tags []aws.Tag `pulumi:"tags"` // Thing arn. Passed into update to associate Thing with Wireless device. @@ -130,6 +132,11 @@ func (o LookupWirelessDeviceResultOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupWirelessDeviceResult) *string { return v.Name }).(pulumi.StringPtrOutput) } +// FPort values for the GNSS, stream, and ClockSync functions of the positioning information. +func (o LookupWirelessDeviceResultOutput) Positioning() WirelessDevicePositioningPtrOutput { + return o.ApplyT(func(v LookupWirelessDeviceResult) *WirelessDevicePositioning { return v.Positioning }).(WirelessDevicePositioningPtrOutput) +} + // A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. func (o LookupWirelessDeviceResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupWirelessDeviceResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) diff --git a/sdk/go/aws/iotwireless/networkAnalyzerConfiguration.go b/sdk/go/aws/iotwireless/networkAnalyzerConfiguration.go index 23e17f04ec..b49f5220bd 100644 --- a/sdk/go/aws/iotwireless/networkAnalyzerConfiguration.go +++ b/sdk/go/aws/iotwireless/networkAnalyzerConfiguration.go @@ -23,7 +23,7 @@ type NetworkAnalyzerConfiguration struct { // Name of the network analyzer configuration Name pulumi.StringOutput `pulumi:"name"` // An array of key-value pairs to apply to this resource. - Tags aws.CreateOnlyTagArrayOutput `pulumi:"tags"` + Tags aws.TagArrayOutput `pulumi:"tags"` // Trace content for your wireless gateway and wireless device resources TraceContent TraceContentPropertiesPtrOutput `pulumi:"traceContent"` // List of wireless gateway resources that have been added to the network analyzer configuration @@ -41,7 +41,6 @@ func NewNetworkAnalyzerConfiguration(ctx *pulumi.Context, replaceOnChanges := pulumi.ReplaceOnChanges([]string{ "name", - "tags[*]", }) opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) @@ -82,7 +81,7 @@ type networkAnalyzerConfigurationArgs struct { // Name of the network analyzer configuration Name *string `pulumi:"name"` // An array of key-value pairs to apply to this resource. - Tags []aws.CreateOnlyTag `pulumi:"tags"` + Tags []aws.Tag `pulumi:"tags"` // Trace content for your wireless gateway and wireless device resources TraceContent *TraceContentProperties `pulumi:"traceContent"` // List of wireless gateway resources that have been added to the network analyzer configuration @@ -98,7 +97,7 @@ type NetworkAnalyzerConfigurationArgs struct { // Name of the network analyzer configuration Name pulumi.StringPtrInput // An array of key-value pairs to apply to this resource. - Tags aws.CreateOnlyTagArrayInput + Tags aws.TagArrayInput // Trace content for your wireless gateway and wireless device resources TraceContent TraceContentPropertiesPtrInput // List of wireless gateway resources that have been added to the network analyzer configuration @@ -160,8 +159,8 @@ func (o NetworkAnalyzerConfigurationOutput) Name() pulumi.StringOutput { } // An array of key-value pairs to apply to this resource. -func (o NetworkAnalyzerConfigurationOutput) Tags() aws.CreateOnlyTagArrayOutput { - return o.ApplyT(func(v *NetworkAnalyzerConfiguration) aws.CreateOnlyTagArrayOutput { return v.Tags }).(aws.CreateOnlyTagArrayOutput) +func (o NetworkAnalyzerConfigurationOutput) Tags() aws.TagArrayOutput { + return o.ApplyT(func(v *NetworkAnalyzerConfiguration) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } // Trace content for your wireless gateway and wireless device resources diff --git a/sdk/go/aws/iotwireless/pulumiEnums.go b/sdk/go/aws/iotwireless/pulumiEnums.go index 6283bb74d5..5459fb8714 100644 --- a/sdk/go/aws/iotwireless/pulumiEnums.go +++ b/sdk/go/aws/iotwireless/pulumiEnums.go @@ -674,6 +674,342 @@ func (in *taskDefinitionTypePtr) ToTaskDefinitionTypePtrOutputWithContext(ctx co return pulumi.ToOutputWithContext(ctx, in).(TaskDefinitionTypePtrOutput) } +// Application type, which can be specified to obtain real-time position information of your LoRaWAN device. +type WirelessDeviceApplicationType string + +const ( + WirelessDeviceApplicationTypeSemtechGeolocation = WirelessDeviceApplicationType("SemtechGeolocation") + WirelessDeviceApplicationTypeSemtechGnss = WirelessDeviceApplicationType("SemtechGNSS") + WirelessDeviceApplicationTypeSemtechGnssng = WirelessDeviceApplicationType("SemtechGNSSNG") + WirelessDeviceApplicationTypeSemtechWiFi = WirelessDeviceApplicationType("SemtechWiFi") +) + +func (WirelessDeviceApplicationType) ElementType() reflect.Type { + return reflect.TypeOf((*WirelessDeviceApplicationType)(nil)).Elem() +} + +func (e WirelessDeviceApplicationType) ToWirelessDeviceApplicationTypeOutput() WirelessDeviceApplicationTypeOutput { + return pulumi.ToOutput(e).(WirelessDeviceApplicationTypeOutput) +} + +func (e WirelessDeviceApplicationType) ToWirelessDeviceApplicationTypeOutputWithContext(ctx context.Context) WirelessDeviceApplicationTypeOutput { + return pulumi.ToOutputWithContext(ctx, e).(WirelessDeviceApplicationTypeOutput) +} + +func (e WirelessDeviceApplicationType) ToWirelessDeviceApplicationTypePtrOutput() WirelessDeviceApplicationTypePtrOutput { + return e.ToWirelessDeviceApplicationTypePtrOutputWithContext(context.Background()) +} + +func (e WirelessDeviceApplicationType) ToWirelessDeviceApplicationTypePtrOutputWithContext(ctx context.Context) WirelessDeviceApplicationTypePtrOutput { + return WirelessDeviceApplicationType(e).ToWirelessDeviceApplicationTypeOutputWithContext(ctx).ToWirelessDeviceApplicationTypePtrOutputWithContext(ctx) +} + +func (e WirelessDeviceApplicationType) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e WirelessDeviceApplicationType) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e WirelessDeviceApplicationType) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e WirelessDeviceApplicationType) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type WirelessDeviceApplicationTypeOutput struct{ *pulumi.OutputState } + +func (WirelessDeviceApplicationTypeOutput) ElementType() reflect.Type { + return reflect.TypeOf((*WirelessDeviceApplicationType)(nil)).Elem() +} + +func (o WirelessDeviceApplicationTypeOutput) ToWirelessDeviceApplicationTypeOutput() WirelessDeviceApplicationTypeOutput { + return o +} + +func (o WirelessDeviceApplicationTypeOutput) ToWirelessDeviceApplicationTypeOutputWithContext(ctx context.Context) WirelessDeviceApplicationTypeOutput { + return o +} + +func (o WirelessDeviceApplicationTypeOutput) ToWirelessDeviceApplicationTypePtrOutput() WirelessDeviceApplicationTypePtrOutput { + return o.ToWirelessDeviceApplicationTypePtrOutputWithContext(context.Background()) +} + +func (o WirelessDeviceApplicationTypeOutput) ToWirelessDeviceApplicationTypePtrOutputWithContext(ctx context.Context) WirelessDeviceApplicationTypePtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v WirelessDeviceApplicationType) *WirelessDeviceApplicationType { + return &v + }).(WirelessDeviceApplicationTypePtrOutput) +} + +func (o WirelessDeviceApplicationTypeOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o WirelessDeviceApplicationTypeOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e WirelessDeviceApplicationType) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o WirelessDeviceApplicationTypeOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o WirelessDeviceApplicationTypeOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e WirelessDeviceApplicationType) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type WirelessDeviceApplicationTypePtrOutput struct{ *pulumi.OutputState } + +func (WirelessDeviceApplicationTypePtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**WirelessDeviceApplicationType)(nil)).Elem() +} + +func (o WirelessDeviceApplicationTypePtrOutput) ToWirelessDeviceApplicationTypePtrOutput() WirelessDeviceApplicationTypePtrOutput { + return o +} + +func (o WirelessDeviceApplicationTypePtrOutput) ToWirelessDeviceApplicationTypePtrOutputWithContext(ctx context.Context) WirelessDeviceApplicationTypePtrOutput { + return o +} + +func (o WirelessDeviceApplicationTypePtrOutput) Elem() WirelessDeviceApplicationTypeOutput { + return o.ApplyT(func(v *WirelessDeviceApplicationType) WirelessDeviceApplicationType { + if v != nil { + return *v + } + var ret WirelessDeviceApplicationType + return ret + }).(WirelessDeviceApplicationTypeOutput) +} + +func (o WirelessDeviceApplicationTypePtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o WirelessDeviceApplicationTypePtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *WirelessDeviceApplicationType) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// WirelessDeviceApplicationTypeInput is an input type that accepts values of the WirelessDeviceApplicationType enum +// A concrete instance of `WirelessDeviceApplicationTypeInput` can be one of the following: +// +// WirelessDeviceApplicationTypeSemtechGeolocation +// WirelessDeviceApplicationTypeSemtechGnss +// WirelessDeviceApplicationTypeSemtechGnssng +// WirelessDeviceApplicationTypeSemtechWiFi +type WirelessDeviceApplicationTypeInput interface { + pulumi.Input + + ToWirelessDeviceApplicationTypeOutput() WirelessDeviceApplicationTypeOutput + ToWirelessDeviceApplicationTypeOutputWithContext(context.Context) WirelessDeviceApplicationTypeOutput +} + +var wirelessDeviceApplicationTypePtrType = reflect.TypeOf((**WirelessDeviceApplicationType)(nil)).Elem() + +type WirelessDeviceApplicationTypePtrInput interface { + pulumi.Input + + ToWirelessDeviceApplicationTypePtrOutput() WirelessDeviceApplicationTypePtrOutput + ToWirelessDeviceApplicationTypePtrOutputWithContext(context.Context) WirelessDeviceApplicationTypePtrOutput +} + +type wirelessDeviceApplicationTypePtr string + +func WirelessDeviceApplicationTypePtr(v string) WirelessDeviceApplicationTypePtrInput { + return (*wirelessDeviceApplicationTypePtr)(&v) +} + +func (*wirelessDeviceApplicationTypePtr) ElementType() reflect.Type { + return wirelessDeviceApplicationTypePtrType +} + +func (in *wirelessDeviceApplicationTypePtr) ToWirelessDeviceApplicationTypePtrOutput() WirelessDeviceApplicationTypePtrOutput { + return pulumi.ToOutput(in).(WirelessDeviceApplicationTypePtrOutput) +} + +func (in *wirelessDeviceApplicationTypePtr) ToWirelessDeviceApplicationTypePtrOutputWithContext(ctx context.Context) WirelessDeviceApplicationTypePtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(WirelessDeviceApplicationTypePtrOutput) +} + +// FPort values for the GNSS, stream, and ClockSync functions of the positioning information. +type WirelessDevicePositioning string + +const ( + WirelessDevicePositioningEnabled = WirelessDevicePositioning("Enabled") + WirelessDevicePositioningDisabled = WirelessDevicePositioning("Disabled") +) + +func (WirelessDevicePositioning) ElementType() reflect.Type { + return reflect.TypeOf((*WirelessDevicePositioning)(nil)).Elem() +} + +func (e WirelessDevicePositioning) ToWirelessDevicePositioningOutput() WirelessDevicePositioningOutput { + return pulumi.ToOutput(e).(WirelessDevicePositioningOutput) +} + +func (e WirelessDevicePositioning) ToWirelessDevicePositioningOutputWithContext(ctx context.Context) WirelessDevicePositioningOutput { + return pulumi.ToOutputWithContext(ctx, e).(WirelessDevicePositioningOutput) +} + +func (e WirelessDevicePositioning) ToWirelessDevicePositioningPtrOutput() WirelessDevicePositioningPtrOutput { + return e.ToWirelessDevicePositioningPtrOutputWithContext(context.Background()) +} + +func (e WirelessDevicePositioning) ToWirelessDevicePositioningPtrOutputWithContext(ctx context.Context) WirelessDevicePositioningPtrOutput { + return WirelessDevicePositioning(e).ToWirelessDevicePositioningOutputWithContext(ctx).ToWirelessDevicePositioningPtrOutputWithContext(ctx) +} + +func (e WirelessDevicePositioning) ToStringOutput() pulumi.StringOutput { + return pulumi.ToOutput(pulumi.String(e)).(pulumi.StringOutput) +} + +func (e WirelessDevicePositioning) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return pulumi.ToOutputWithContext(ctx, pulumi.String(e)).(pulumi.StringOutput) +} + +func (e WirelessDevicePositioning) ToStringPtrOutput() pulumi.StringPtrOutput { + return pulumi.String(e).ToStringPtrOutputWithContext(context.Background()) +} + +func (e WirelessDevicePositioning) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return pulumi.String(e).ToStringOutputWithContext(ctx).ToStringPtrOutputWithContext(ctx) +} + +type WirelessDevicePositioningOutput struct{ *pulumi.OutputState } + +func (WirelessDevicePositioningOutput) ElementType() reflect.Type { + return reflect.TypeOf((*WirelessDevicePositioning)(nil)).Elem() +} + +func (o WirelessDevicePositioningOutput) ToWirelessDevicePositioningOutput() WirelessDevicePositioningOutput { + return o +} + +func (o WirelessDevicePositioningOutput) ToWirelessDevicePositioningOutputWithContext(ctx context.Context) WirelessDevicePositioningOutput { + return o +} + +func (o WirelessDevicePositioningOutput) ToWirelessDevicePositioningPtrOutput() WirelessDevicePositioningPtrOutput { + return o.ToWirelessDevicePositioningPtrOutputWithContext(context.Background()) +} + +func (o WirelessDevicePositioningOutput) ToWirelessDevicePositioningPtrOutputWithContext(ctx context.Context) WirelessDevicePositioningPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v WirelessDevicePositioning) *WirelessDevicePositioning { + return &v + }).(WirelessDevicePositioningPtrOutput) +} + +func (o WirelessDevicePositioningOutput) ToStringOutput() pulumi.StringOutput { + return o.ToStringOutputWithContext(context.Background()) +} + +func (o WirelessDevicePositioningOutput) ToStringOutputWithContext(ctx context.Context) pulumi.StringOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e WirelessDevicePositioning) string { + return string(e) + }).(pulumi.StringOutput) +} + +func (o WirelessDevicePositioningOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o WirelessDevicePositioningOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e WirelessDevicePositioning) *string { + v := string(e) + return &v + }).(pulumi.StringPtrOutput) +} + +type WirelessDevicePositioningPtrOutput struct{ *pulumi.OutputState } + +func (WirelessDevicePositioningPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**WirelessDevicePositioning)(nil)).Elem() +} + +func (o WirelessDevicePositioningPtrOutput) ToWirelessDevicePositioningPtrOutput() WirelessDevicePositioningPtrOutput { + return o +} + +func (o WirelessDevicePositioningPtrOutput) ToWirelessDevicePositioningPtrOutputWithContext(ctx context.Context) WirelessDevicePositioningPtrOutput { + return o +} + +func (o WirelessDevicePositioningPtrOutput) Elem() WirelessDevicePositioningOutput { + return o.ApplyT(func(v *WirelessDevicePositioning) WirelessDevicePositioning { + if v != nil { + return *v + } + var ret WirelessDevicePositioning + return ret + }).(WirelessDevicePositioningOutput) +} + +func (o WirelessDevicePositioningPtrOutput) ToStringPtrOutput() pulumi.StringPtrOutput { + return o.ToStringPtrOutputWithContext(context.Background()) +} + +func (o WirelessDevicePositioningPtrOutput) ToStringPtrOutputWithContext(ctx context.Context) pulumi.StringPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, e *WirelessDevicePositioning) *string { + if e == nil { + return nil + } + v := string(*e) + return &v + }).(pulumi.StringPtrOutput) +} + +// WirelessDevicePositioningInput is an input type that accepts values of the WirelessDevicePositioning enum +// A concrete instance of `WirelessDevicePositioningInput` can be one of the following: +// +// WirelessDevicePositioningEnabled +// WirelessDevicePositioningDisabled +type WirelessDevicePositioningInput interface { + pulumi.Input + + ToWirelessDevicePositioningOutput() WirelessDevicePositioningOutput + ToWirelessDevicePositioningOutputWithContext(context.Context) WirelessDevicePositioningOutput +} + +var wirelessDevicePositioningPtrType = reflect.TypeOf((**WirelessDevicePositioning)(nil)).Elem() + +type WirelessDevicePositioningPtrInput interface { + pulumi.Input + + ToWirelessDevicePositioningPtrOutput() WirelessDevicePositioningPtrOutput + ToWirelessDevicePositioningPtrOutputWithContext(context.Context) WirelessDevicePositioningPtrOutput +} + +type wirelessDevicePositioningPtr string + +func WirelessDevicePositioningPtr(v string) WirelessDevicePositioningPtrInput { + return (*wirelessDevicePositioningPtr)(&v) +} + +func (*wirelessDevicePositioningPtr) ElementType() reflect.Type { + return wirelessDevicePositioningPtrType +} + +func (in *wirelessDevicePositioningPtr) ToWirelessDevicePositioningPtrOutput() WirelessDevicePositioningPtrOutput { + return pulumi.ToOutput(in).(WirelessDevicePositioningPtrOutput) +} + +func (in *wirelessDevicePositioningPtr) ToWirelessDevicePositioningPtrOutputWithContext(ctx context.Context) WirelessDevicePositioningPtrOutput { + return pulumi.ToOutputWithContext(ctx, in).(WirelessDevicePositioningPtrOutput) +} + // Wireless device type, currently only Sidewalk and LoRa type WirelessDeviceType string @@ -849,6 +1185,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*NetworkAnalyzerConfigurationWirelessDeviceFrameInfoPtrInput)(nil)).Elem(), NetworkAnalyzerConfigurationWirelessDeviceFrameInfo("ENABLED")) pulumi.RegisterInputType(reflect.TypeOf((*TaskDefinitionTypeInput)(nil)).Elem(), TaskDefinitionType("UPDATE")) pulumi.RegisterInputType(reflect.TypeOf((*TaskDefinitionTypePtrInput)(nil)).Elem(), TaskDefinitionType("UPDATE")) + pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceApplicationTypeInput)(nil)).Elem(), WirelessDeviceApplicationType("SemtechGeolocation")) + pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceApplicationTypePtrInput)(nil)).Elem(), WirelessDeviceApplicationType("SemtechGeolocation")) + pulumi.RegisterInputType(reflect.TypeOf((*WirelessDevicePositioningInput)(nil)).Elem(), WirelessDevicePositioning("Enabled")) + pulumi.RegisterInputType(reflect.TypeOf((*WirelessDevicePositioningPtrInput)(nil)).Elem(), WirelessDevicePositioning("Enabled")) pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceTypeInput)(nil)).Elem(), WirelessDeviceType("Sidewalk")) pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceTypePtrInput)(nil)).Elem(), WirelessDeviceType("Sidewalk")) pulumi.RegisterOutputType(DestinationExpressionTypeOutput{}) @@ -859,6 +1199,10 @@ func init() { pulumi.RegisterOutputType(NetworkAnalyzerConfigurationWirelessDeviceFrameInfoPtrOutput{}) pulumi.RegisterOutputType(TaskDefinitionTypeOutput{}) pulumi.RegisterOutputType(TaskDefinitionTypePtrOutput{}) + pulumi.RegisterOutputType(WirelessDeviceApplicationTypeOutput{}) + pulumi.RegisterOutputType(WirelessDeviceApplicationTypePtrOutput{}) + pulumi.RegisterOutputType(WirelessDevicePositioningOutput{}) + pulumi.RegisterOutputType(WirelessDevicePositioningPtrOutput{}) pulumi.RegisterOutputType(WirelessDeviceTypeOutput{}) pulumi.RegisterOutputType(WirelessDeviceTypePtrOutput{}) } diff --git a/sdk/go/aws/iotwireless/pulumiTypes.go b/sdk/go/aws/iotwireless/pulumiTypes.go index 2ddabdf41a..51d1189b47 100644 --- a/sdk/go/aws/iotwireless/pulumiTypes.go +++ b/sdk/go/aws/iotwireless/pulumiTypes.go @@ -2588,6 +2588,261 @@ func (o WirelessDeviceAbpV11PtrOutput) SessionKeys() WirelessDeviceSessionKeysAb }).(WirelessDeviceSessionKeysAbpV11PtrOutput) } +// LoRaWAN application configuration, which can be used to perform geolocation. +type WirelessDeviceApplication struct { + // The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + DestinationName *string `pulumi:"destinationName"` + // The Fport value. + FPort *int `pulumi:"fPort"` + // Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + Type *WirelessDeviceApplicationType `pulumi:"type"` +} + +// WirelessDeviceApplicationInput is an input type that accepts WirelessDeviceApplicationArgs and WirelessDeviceApplicationOutput values. +// You can construct a concrete instance of `WirelessDeviceApplicationInput` via: +// +// WirelessDeviceApplicationArgs{...} +type WirelessDeviceApplicationInput interface { + pulumi.Input + + ToWirelessDeviceApplicationOutput() WirelessDeviceApplicationOutput + ToWirelessDeviceApplicationOutputWithContext(context.Context) WirelessDeviceApplicationOutput +} + +// LoRaWAN application configuration, which can be used to perform geolocation. +type WirelessDeviceApplicationArgs struct { + // The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + DestinationName pulumi.StringPtrInput `pulumi:"destinationName"` + // The Fport value. + FPort pulumi.IntPtrInput `pulumi:"fPort"` + // Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + Type WirelessDeviceApplicationTypePtrInput `pulumi:"type"` +} + +func (WirelessDeviceApplicationArgs) ElementType() reflect.Type { + return reflect.TypeOf((*WirelessDeviceApplication)(nil)).Elem() +} + +func (i WirelessDeviceApplicationArgs) ToWirelessDeviceApplicationOutput() WirelessDeviceApplicationOutput { + return i.ToWirelessDeviceApplicationOutputWithContext(context.Background()) +} + +func (i WirelessDeviceApplicationArgs) ToWirelessDeviceApplicationOutputWithContext(ctx context.Context) WirelessDeviceApplicationOutput { + return pulumi.ToOutputWithContext(ctx, i).(WirelessDeviceApplicationOutput) +} + +// WirelessDeviceApplicationArrayInput is an input type that accepts WirelessDeviceApplicationArray and WirelessDeviceApplicationArrayOutput values. +// You can construct a concrete instance of `WirelessDeviceApplicationArrayInput` via: +// +// WirelessDeviceApplicationArray{ WirelessDeviceApplicationArgs{...} } +type WirelessDeviceApplicationArrayInput interface { + pulumi.Input + + ToWirelessDeviceApplicationArrayOutput() WirelessDeviceApplicationArrayOutput + ToWirelessDeviceApplicationArrayOutputWithContext(context.Context) WirelessDeviceApplicationArrayOutput +} + +type WirelessDeviceApplicationArray []WirelessDeviceApplicationInput + +func (WirelessDeviceApplicationArray) ElementType() reflect.Type { + return reflect.TypeOf((*[]WirelessDeviceApplication)(nil)).Elem() +} + +func (i WirelessDeviceApplicationArray) ToWirelessDeviceApplicationArrayOutput() WirelessDeviceApplicationArrayOutput { + return i.ToWirelessDeviceApplicationArrayOutputWithContext(context.Background()) +} + +func (i WirelessDeviceApplicationArray) ToWirelessDeviceApplicationArrayOutputWithContext(ctx context.Context) WirelessDeviceApplicationArrayOutput { + return pulumi.ToOutputWithContext(ctx, i).(WirelessDeviceApplicationArrayOutput) +} + +// LoRaWAN application configuration, which can be used to perform geolocation. +type WirelessDeviceApplicationOutput struct{ *pulumi.OutputState } + +func (WirelessDeviceApplicationOutput) ElementType() reflect.Type { + return reflect.TypeOf((*WirelessDeviceApplication)(nil)).Elem() +} + +func (o WirelessDeviceApplicationOutput) ToWirelessDeviceApplicationOutput() WirelessDeviceApplicationOutput { + return o +} + +func (o WirelessDeviceApplicationOutput) ToWirelessDeviceApplicationOutputWithContext(ctx context.Context) WirelessDeviceApplicationOutput { + return o +} + +// The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. +func (o WirelessDeviceApplicationOutput) DestinationName() pulumi.StringPtrOutput { + return o.ApplyT(func(v WirelessDeviceApplication) *string { return v.DestinationName }).(pulumi.StringPtrOutput) +} + +// The Fport value. +func (o WirelessDeviceApplicationOutput) FPort() pulumi.IntPtrOutput { + return o.ApplyT(func(v WirelessDeviceApplication) *int { return v.FPort }).(pulumi.IntPtrOutput) +} + +// Application type, which can be specified to obtain real-time position information of your LoRaWAN device. +func (o WirelessDeviceApplicationOutput) Type() WirelessDeviceApplicationTypePtrOutput { + return o.ApplyT(func(v WirelessDeviceApplication) *WirelessDeviceApplicationType { return v.Type }).(WirelessDeviceApplicationTypePtrOutput) +} + +type WirelessDeviceApplicationArrayOutput struct{ *pulumi.OutputState } + +func (WirelessDeviceApplicationArrayOutput) ElementType() reflect.Type { + return reflect.TypeOf((*[]WirelessDeviceApplication)(nil)).Elem() +} + +func (o WirelessDeviceApplicationArrayOutput) ToWirelessDeviceApplicationArrayOutput() WirelessDeviceApplicationArrayOutput { + return o +} + +func (o WirelessDeviceApplicationArrayOutput) ToWirelessDeviceApplicationArrayOutputWithContext(ctx context.Context) WirelessDeviceApplicationArrayOutput { + return o +} + +func (o WirelessDeviceApplicationArrayOutput) Index(i pulumi.IntInput) WirelessDeviceApplicationOutput { + return pulumi.All(o, i).ApplyT(func(vs []interface{}) WirelessDeviceApplication { + return vs[0].([]WirelessDeviceApplication)[vs[1].(int)] + }).(WirelessDeviceApplicationOutput) +} + +type WirelessDeviceFPorts struct { + // A list of optional LoRaWAN application information, which can be used for geolocation. + Applications []WirelessDeviceApplication `pulumi:"applications"` +} + +// WirelessDeviceFPortsInput is an input type that accepts WirelessDeviceFPortsArgs and WirelessDeviceFPortsOutput values. +// You can construct a concrete instance of `WirelessDeviceFPortsInput` via: +// +// WirelessDeviceFPortsArgs{...} +type WirelessDeviceFPortsInput interface { + pulumi.Input + + ToWirelessDeviceFPortsOutput() WirelessDeviceFPortsOutput + ToWirelessDeviceFPortsOutputWithContext(context.Context) WirelessDeviceFPortsOutput +} + +type WirelessDeviceFPortsArgs struct { + // A list of optional LoRaWAN application information, which can be used for geolocation. + Applications WirelessDeviceApplicationArrayInput `pulumi:"applications"` +} + +func (WirelessDeviceFPortsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*WirelessDeviceFPorts)(nil)).Elem() +} + +func (i WirelessDeviceFPortsArgs) ToWirelessDeviceFPortsOutput() WirelessDeviceFPortsOutput { + return i.ToWirelessDeviceFPortsOutputWithContext(context.Background()) +} + +func (i WirelessDeviceFPortsArgs) ToWirelessDeviceFPortsOutputWithContext(ctx context.Context) WirelessDeviceFPortsOutput { + return pulumi.ToOutputWithContext(ctx, i).(WirelessDeviceFPortsOutput) +} + +func (i WirelessDeviceFPortsArgs) ToWirelessDeviceFPortsPtrOutput() WirelessDeviceFPortsPtrOutput { + return i.ToWirelessDeviceFPortsPtrOutputWithContext(context.Background()) +} + +func (i WirelessDeviceFPortsArgs) ToWirelessDeviceFPortsPtrOutputWithContext(ctx context.Context) WirelessDeviceFPortsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(WirelessDeviceFPortsOutput).ToWirelessDeviceFPortsPtrOutputWithContext(ctx) +} + +// WirelessDeviceFPortsPtrInput is an input type that accepts WirelessDeviceFPortsArgs, WirelessDeviceFPortsPtr and WirelessDeviceFPortsPtrOutput values. +// You can construct a concrete instance of `WirelessDeviceFPortsPtrInput` via: +// +// WirelessDeviceFPortsArgs{...} +// +// or: +// +// nil +type WirelessDeviceFPortsPtrInput interface { + pulumi.Input + + ToWirelessDeviceFPortsPtrOutput() WirelessDeviceFPortsPtrOutput + ToWirelessDeviceFPortsPtrOutputWithContext(context.Context) WirelessDeviceFPortsPtrOutput +} + +type wirelessDeviceFPortsPtrType WirelessDeviceFPortsArgs + +func WirelessDeviceFPortsPtr(v *WirelessDeviceFPortsArgs) WirelessDeviceFPortsPtrInput { + return (*wirelessDeviceFPortsPtrType)(v) +} + +func (*wirelessDeviceFPortsPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**WirelessDeviceFPorts)(nil)).Elem() +} + +func (i *wirelessDeviceFPortsPtrType) ToWirelessDeviceFPortsPtrOutput() WirelessDeviceFPortsPtrOutput { + return i.ToWirelessDeviceFPortsPtrOutputWithContext(context.Background()) +} + +func (i *wirelessDeviceFPortsPtrType) ToWirelessDeviceFPortsPtrOutputWithContext(ctx context.Context) WirelessDeviceFPortsPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(WirelessDeviceFPortsPtrOutput) +} + +type WirelessDeviceFPortsOutput struct{ *pulumi.OutputState } + +func (WirelessDeviceFPortsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*WirelessDeviceFPorts)(nil)).Elem() +} + +func (o WirelessDeviceFPortsOutput) ToWirelessDeviceFPortsOutput() WirelessDeviceFPortsOutput { + return o +} + +func (o WirelessDeviceFPortsOutput) ToWirelessDeviceFPortsOutputWithContext(ctx context.Context) WirelessDeviceFPortsOutput { + return o +} + +func (o WirelessDeviceFPortsOutput) ToWirelessDeviceFPortsPtrOutput() WirelessDeviceFPortsPtrOutput { + return o.ToWirelessDeviceFPortsPtrOutputWithContext(context.Background()) +} + +func (o WirelessDeviceFPortsOutput) ToWirelessDeviceFPortsPtrOutputWithContext(ctx context.Context) WirelessDeviceFPortsPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v WirelessDeviceFPorts) *WirelessDeviceFPorts { + return &v + }).(WirelessDeviceFPortsPtrOutput) +} + +// A list of optional LoRaWAN application information, which can be used for geolocation. +func (o WirelessDeviceFPortsOutput) Applications() WirelessDeviceApplicationArrayOutput { + return o.ApplyT(func(v WirelessDeviceFPorts) []WirelessDeviceApplication { return v.Applications }).(WirelessDeviceApplicationArrayOutput) +} + +type WirelessDeviceFPortsPtrOutput struct{ *pulumi.OutputState } + +func (WirelessDeviceFPortsPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**WirelessDeviceFPorts)(nil)).Elem() +} + +func (o WirelessDeviceFPortsPtrOutput) ToWirelessDeviceFPortsPtrOutput() WirelessDeviceFPortsPtrOutput { + return o +} + +func (o WirelessDeviceFPortsPtrOutput) ToWirelessDeviceFPortsPtrOutputWithContext(ctx context.Context) WirelessDeviceFPortsPtrOutput { + return o +} + +func (o WirelessDeviceFPortsPtrOutput) Elem() WirelessDeviceFPortsOutput { + return o.ApplyT(func(v *WirelessDeviceFPorts) WirelessDeviceFPorts { + if v != nil { + return *v + } + var ret WirelessDeviceFPorts + return ret + }).(WirelessDeviceFPortsOutput) +} + +// A list of optional LoRaWAN application information, which can be used for geolocation. +func (o WirelessDeviceFPortsPtrOutput) Applications() WirelessDeviceApplicationArrayOutput { + return o.ApplyT(func(v *WirelessDeviceFPorts) []WirelessDeviceApplication { + if v == nil { + return nil + } + return v.Applications + }).(WirelessDeviceApplicationArrayOutput) +} + type WirelessDeviceLoRaWanDevice struct { // ABP device object for LoRaWAN specification v1.0.x. AbpV10x *WirelessDeviceAbpV10x `pulumi:"abpV10x"` @@ -2597,6 +2852,8 @@ type WirelessDeviceLoRaWanDevice struct { DevEui *string `pulumi:"devEui"` // The ID of the device profile for the new wireless device. DeviceProfileId *string `pulumi:"deviceProfileId"` + // List of FPort assigned for different LoRaWAN application packages to use. + FPorts *WirelessDeviceFPorts `pulumi:"fPorts"` // OTAA device object for create APIs for v1.0.x OtaaV10x *WirelessDeviceOtaaV10x `pulumi:"otaaV10x"` // OTAA device object for v1.1 for create APIs. @@ -2625,6 +2882,8 @@ type WirelessDeviceLoRaWanDeviceArgs struct { DevEui pulumi.StringPtrInput `pulumi:"devEui"` // The ID of the device profile for the new wireless device. DeviceProfileId pulumi.StringPtrInput `pulumi:"deviceProfileId"` + // List of FPort assigned for different LoRaWAN application packages to use. + FPorts WirelessDeviceFPortsPtrInput `pulumi:"fPorts"` // OTAA device object for create APIs for v1.0.x OtaaV10x WirelessDeviceOtaaV10xPtrInput `pulumi:"otaaV10x"` // OTAA device object for v1.1 for create APIs. @@ -2730,6 +2989,11 @@ func (o WirelessDeviceLoRaWanDeviceOutput) DeviceProfileId() pulumi.StringPtrOut return o.ApplyT(func(v WirelessDeviceLoRaWanDevice) *string { return v.DeviceProfileId }).(pulumi.StringPtrOutput) } +// List of FPort assigned for different LoRaWAN application packages to use. +func (o WirelessDeviceLoRaWanDeviceOutput) FPorts() WirelessDeviceFPortsPtrOutput { + return o.ApplyT(func(v WirelessDeviceLoRaWanDevice) *WirelessDeviceFPorts { return v.FPorts }).(WirelessDeviceFPortsPtrOutput) +} + // OTAA device object for create APIs for v1.0.x func (o WirelessDeviceLoRaWanDeviceOutput) OtaaV10x() WirelessDeviceOtaaV10xPtrOutput { return o.ApplyT(func(v WirelessDeviceLoRaWanDevice) *WirelessDeviceOtaaV10x { return v.OtaaV10x }).(WirelessDeviceOtaaV10xPtrOutput) @@ -2809,6 +3073,16 @@ func (o WirelessDeviceLoRaWanDevicePtrOutput) DeviceProfileId() pulumi.StringPtr }).(pulumi.StringPtrOutput) } +// List of FPort assigned for different LoRaWAN application packages to use. +func (o WirelessDeviceLoRaWanDevicePtrOutput) FPorts() WirelessDeviceFPortsPtrOutput { + return o.ApplyT(func(v *WirelessDeviceLoRaWanDevice) *WirelessDeviceFPorts { + if v == nil { + return nil + } + return v.FPorts + }).(WirelessDeviceFPortsPtrOutput) +} + // OTAA device object for create APIs for v1.0.x func (o WirelessDeviceLoRaWanDevicePtrOutput) OtaaV10x() WirelessDeviceOtaaV10xPtrOutput { return o.ApplyT(func(v *WirelessDeviceLoRaWanDevice) *WirelessDeviceOtaaV10x { @@ -3660,6 +3934,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceAbpV10xPtrInput)(nil)).Elem(), WirelessDeviceAbpV10xArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceAbpV11Input)(nil)).Elem(), WirelessDeviceAbpV11Args{}) pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceAbpV11PtrInput)(nil)).Elem(), WirelessDeviceAbpV11Args{}) + pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceApplicationInput)(nil)).Elem(), WirelessDeviceApplicationArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceApplicationArrayInput)(nil)).Elem(), WirelessDeviceApplicationArray{}) + pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceFPortsInput)(nil)).Elem(), WirelessDeviceFPortsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceFPortsPtrInput)(nil)).Elem(), WirelessDeviceFPortsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceLoRaWanDeviceInput)(nil)).Elem(), WirelessDeviceLoRaWanDeviceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceLoRaWanDevicePtrInput)(nil)).Elem(), WirelessDeviceLoRaWanDeviceArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*WirelessDeviceOtaaV10xInput)(nil)).Elem(), WirelessDeviceOtaaV10xArgs{}) @@ -3693,6 +3971,10 @@ func init() { pulumi.RegisterOutputType(WirelessDeviceAbpV10xPtrOutput{}) pulumi.RegisterOutputType(WirelessDeviceAbpV11Output{}) pulumi.RegisterOutputType(WirelessDeviceAbpV11PtrOutput{}) + pulumi.RegisterOutputType(WirelessDeviceApplicationOutput{}) + pulumi.RegisterOutputType(WirelessDeviceApplicationArrayOutput{}) + pulumi.RegisterOutputType(WirelessDeviceFPortsOutput{}) + pulumi.RegisterOutputType(WirelessDeviceFPortsPtrOutput{}) pulumi.RegisterOutputType(WirelessDeviceLoRaWanDeviceOutput{}) pulumi.RegisterOutputType(WirelessDeviceLoRaWanDevicePtrOutput{}) pulumi.RegisterOutputType(WirelessDeviceOtaaV10xOutput{}) diff --git a/sdk/go/aws/iotwireless/serviceProfile.go b/sdk/go/aws/iotwireless/serviceProfile.go index aee74582a0..b2d15c8006 100644 --- a/sdk/go/aws/iotwireless/serviceProfile.go +++ b/sdk/go/aws/iotwireless/serviceProfile.go @@ -35,6 +35,11 @@ func NewServiceProfile(ctx *pulumi.Context, args = &ServiceProfileArgs{} } + replaceOnChanges := pulumi.ReplaceOnChanges([]string{ + "loRaWan", + "name", + }) + opts = append(opts, replaceOnChanges) opts = internal.PkgResourceDefaultOpts(opts) var resource ServiceProfile err := ctx.RegisterResource("aws-native:iotwireless:ServiceProfile", name, args, &resource, opts...) diff --git a/sdk/go/aws/iotwireless/wirelessDevice.go b/sdk/go/aws/iotwireless/wirelessDevice.go index acc528e000..2faac0a800 100644 --- a/sdk/go/aws/iotwireless/wirelessDevice.go +++ b/sdk/go/aws/iotwireless/wirelessDevice.go @@ -31,6 +31,8 @@ type WirelessDevice struct { LoRaWan WirelessDeviceLoRaWanDevicePtrOutput `pulumi:"loRaWan"` // Wireless device name Name pulumi.StringPtrOutput `pulumi:"name"` + // FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + Positioning WirelessDevicePositioningPtrOutput `pulumi:"positioning"` // A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. Tags aws.TagArrayOutput `pulumi:"tags"` // Thing arn. Passed into update to associate Thing with Wireless device. @@ -97,6 +99,8 @@ type wirelessDeviceArgs struct { LoRaWan *WirelessDeviceLoRaWanDevice `pulumi:"loRaWan"` // Wireless device name Name *string `pulumi:"name"` + // FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + Positioning *WirelessDevicePositioning `pulumi:"positioning"` // A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. Tags []aws.Tag `pulumi:"tags"` // Thing arn. Passed into update to associate Thing with Wireless device. @@ -117,6 +121,8 @@ type WirelessDeviceArgs struct { LoRaWan WirelessDeviceLoRaWanDevicePtrInput // Wireless device name Name pulumi.StringPtrInput + // FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + Positioning WirelessDevicePositioningPtrInput // A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. Tags aws.TagArrayInput // Thing arn. Passed into update to associate Thing with Wireless device. @@ -197,6 +203,11 @@ func (o WirelessDeviceOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v *WirelessDevice) pulumi.StringPtrOutput { return v.Name }).(pulumi.StringPtrOutput) } +// FPort values for the GNSS, stream, and ClockSync functions of the positioning information. +func (o WirelessDeviceOutput) Positioning() WirelessDevicePositioningPtrOutput { + return o.ApplyT(func(v *WirelessDevice) WirelessDevicePositioningPtrOutput { return v.Positioning }).(WirelessDevicePositioningPtrOutput) +} + // A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. func (o WirelessDeviceOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *WirelessDevice) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) diff --git a/sdk/go/aws/lambda/function.go b/sdk/go/aws/lambda/function.go index a49987a35f..e7bae2e9da 100644 --- a/sdk/go/aws/lambda/function.go +++ b/sdk/go/aws/lambda/function.go @@ -15,9 +15,10 @@ import ( // The “AWS::Lambda::Function“ resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. // -// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. -// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). +// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. +// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. // You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. +// When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. // Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. // For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* // @@ -368,7 +369,10 @@ type Function struct { Architectures FunctionArchitecturesItemArrayOutput `pulumi:"architectures"` // The Amazon Resource Name (ARN) of the function. Arn pulumi.StringOutput `pulumi:"arn"` - // The code for the function. + // The code for the function. You can define your function code in multiple ways: + // + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + // + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + // + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. Code FunctionCodeOutput `pulumi:"code"` // To enable code signing for this function, specify the ARN of a code-signing configuration. A code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. CodeSigningConfigArn pulumi.StringPtrOutput `pulumi:"codeSigningConfigArn"` @@ -390,7 +394,7 @@ type Function struct { Handler pulumi.StringPtrOutput `pulumi:"handler"` // Configuration values that override the container image Dockerfile settings. For more information, see [Container image settings](https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-parms). ImageConfig FunctionImageConfigPtrOutput `pulumi:"imageConfig"` - // The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + // The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. KmsKeyArn pulumi.StringPtrOutput `pulumi:"kmsKeyArn"` // A list of [function layers](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html) to add to the function's execution environment. Specify each layer by its ARN, including the version. Layers pulumi.StringArrayOutput `pulumi:"layers"` @@ -401,10 +405,8 @@ type Function struct { // The type of deployment package. Set to ``Image`` for container image and set ``Zip`` for .zip file archive. PackageType FunctionPackageTypePtrOutput `pulumi:"packageType"` // The status of your function's recursive loop detection configuration. - // - // When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - // - // When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + // When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + // When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. RecursiveLoop FunctionRecursiveLoopPtrOutput `pulumi:"recursiveLoop"` // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions pulumi.IntPtrOutput `pulumi:"reservedConcurrentExecutions"` @@ -420,6 +422,7 @@ type Function struct { SnapStart FunctionSnapStartPtrOutput `pulumi:"snapStart"` SnapStartResponse FunctionSnapStartResponseOutput `pulumi:"snapStartResponse"` // A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + // You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. Tags aws.TagArrayOutput `pulumi:"tags"` // The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For more information, see [Lambda execution environment](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html). Timeout pulumi.IntPtrOutput `pulumi:"timeout"` @@ -481,7 +484,10 @@ func (FunctionState) ElementType() reflect.Type { type functionArgs struct { // The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64). The default value is ``x86_64``. Architectures []FunctionArchitecturesItem `pulumi:"architectures"` - // The code for the function. + // The code for the function. You can define your function code in multiple ways: + // + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + // + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + // + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. Code FunctionCode `pulumi:"code"` // To enable code signing for this function, specify the ARN of a code-signing configuration. A code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. CodeSigningConfigArn *string `pulumi:"codeSigningConfigArn"` @@ -503,7 +509,7 @@ type functionArgs struct { Handler *string `pulumi:"handler"` // Configuration values that override the container image Dockerfile settings. For more information, see [Container image settings](https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-parms). ImageConfig *FunctionImageConfig `pulumi:"imageConfig"` - // The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + // The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. KmsKeyArn *string `pulumi:"kmsKeyArn"` // A list of [function layers](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html) to add to the function's execution environment. Specify each layer by its ARN, including the version. Layers []string `pulumi:"layers"` @@ -514,10 +520,8 @@ type functionArgs struct { // The type of deployment package. Set to ``Image`` for container image and set ``Zip`` for .zip file archive. PackageType *FunctionPackageType `pulumi:"packageType"` // The status of your function's recursive loop detection configuration. - // - // When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - // - // When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + // When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + // When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. RecursiveLoop *FunctionRecursiveLoop `pulumi:"recursiveLoop"` // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions *int `pulumi:"reservedConcurrentExecutions"` @@ -532,6 +536,7 @@ type functionArgs struct { // The function's [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) setting. SnapStart *FunctionSnapStart `pulumi:"snapStart"` // A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + // You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. Tags []aws.Tag `pulumi:"tags"` // The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For more information, see [Lambda execution environment](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html). Timeout *int `pulumi:"timeout"` @@ -545,7 +550,10 @@ type functionArgs struct { type FunctionArgs struct { // The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64). The default value is ``x86_64``. Architectures FunctionArchitecturesItemArrayInput - // The code for the function. + // The code for the function. You can define your function code in multiple ways: + // + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + // + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + // + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. Code FunctionCodeInput // To enable code signing for this function, specify the ARN of a code-signing configuration. A code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. CodeSigningConfigArn pulumi.StringPtrInput @@ -567,7 +575,7 @@ type FunctionArgs struct { Handler pulumi.StringPtrInput // Configuration values that override the container image Dockerfile settings. For more information, see [Container image settings](https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-parms). ImageConfig FunctionImageConfigPtrInput - // The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + // The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. KmsKeyArn pulumi.StringPtrInput // A list of [function layers](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html) to add to the function's execution environment. Specify each layer by its ARN, including the version. Layers pulumi.StringArrayInput @@ -578,10 +586,8 @@ type FunctionArgs struct { // The type of deployment package. Set to ``Image`` for container image and set ``Zip`` for .zip file archive. PackageType FunctionPackageTypePtrInput // The status of your function's recursive loop detection configuration. - // - // When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - // - // When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + // When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + // When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. RecursiveLoop FunctionRecursiveLoopPtrInput // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions pulumi.IntPtrInput @@ -596,6 +602,7 @@ type FunctionArgs struct { // The function's [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) setting. SnapStart FunctionSnapStartPtrInput // A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + // You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. Tags aws.TagArrayInput // The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For more information, see [Lambda execution environment](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html). Timeout pulumi.IntPtrInput @@ -652,7 +659,10 @@ func (o FunctionOutput) Arn() pulumi.StringOutput { return o.ApplyT(func(v *Function) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) } -// The code for the function. +// The code for the function. You can define your function code in multiple ways: +// - For .zip deployment packages, you can specify the S3 location of the .zip file in the “S3Bucket“, “S3Key“, and “S3ObjectVersion“ properties. +// - For .zip deployment packages, you can alternatively define the function code inline in the “ZipFile“ property. This method works only for Node.js and Python functions. +// - For container images, specify the URI of your container image in the ECR registry in the “ImageUri“ property. func (o FunctionOutput) Code() FunctionCodeOutput { return o.ApplyT(func(v *Function) FunctionCodeOutput { return v.Code }).(FunctionCodeOutput) } @@ -706,7 +716,7 @@ func (o FunctionOutput) ImageConfig() FunctionImageConfigPtrOutput { return o.ApplyT(func(v *Function) FunctionImageConfigPtrOutput { return v.ImageConfig }).(FunctionImageConfigPtrOutput) } -// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. +// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. func (o FunctionOutput) KmsKeyArn() pulumi.StringPtrOutput { return o.ApplyT(func(v *Function) pulumi.StringPtrOutput { return v.KmsKeyArn }).(pulumi.StringPtrOutput) } @@ -733,9 +743,8 @@ func (o FunctionOutput) PackageType() FunctionPackageTypePtrOutput { // The status of your function's recursive loop detection configuration. // -// When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. -// -// When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. +// When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. +// When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. func (o FunctionOutput) RecursiveLoop() FunctionRecursiveLoopPtrOutput { return o.ApplyT(func(v *Function) FunctionRecursiveLoopPtrOutput { return v.RecursiveLoop }).(FunctionRecursiveLoopPtrOutput) } @@ -773,6 +782,8 @@ func (o FunctionOutput) SnapStartResponse() FunctionSnapStartResponseOutput { } // A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. +// +// You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. func (o FunctionOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v *Function) aws.TagArrayOutput { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/lambda/getFunction.go b/sdk/go/aws/lambda/getFunction.go index 0e0a7978ae..6616c3812b 100644 --- a/sdk/go/aws/lambda/getFunction.go +++ b/sdk/go/aws/lambda/getFunction.go @@ -14,9 +14,10 @@ import ( // The “AWS::Lambda::Function“ resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. // -// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. -// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). +// You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. +// You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. // You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. +// When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. // Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. // For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* func LookupFunction(ctx *pulumi.Context, args *LookupFunctionArgs, opts ...pulumi.InvokeOption) (*LookupFunctionResult, error) { @@ -57,7 +58,7 @@ type LookupFunctionResult struct { Handler *string `pulumi:"handler"` // Configuration values that override the container image Dockerfile settings. For more information, see [Container image settings](https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-parms). ImageConfig *FunctionImageConfig `pulumi:"imageConfig"` - // The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + // The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. KmsKeyArn *string `pulumi:"kmsKeyArn"` // A list of [function layers](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html) to add to the function's execution environment. Specify each layer by its ARN, including the version. Layers []string `pulumi:"layers"` @@ -68,10 +69,8 @@ type LookupFunctionResult struct { // The type of deployment package. Set to ``Image`` for container image and set ``Zip`` for .zip file archive. PackageType *FunctionPackageType `pulumi:"packageType"` // The status of your function's recursive loop detection configuration. - // - // When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - // - // When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + // When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + // When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. RecursiveLoop *FunctionRecursiveLoop `pulumi:"recursiveLoop"` // The number of simultaneous executions to reserve for the function. ReservedConcurrentExecutions *int `pulumi:"reservedConcurrentExecutions"` @@ -85,6 +84,7 @@ type LookupFunctionResult struct { RuntimeManagementConfig *FunctionRuntimeManagementConfig `pulumi:"runtimeManagementConfig"` SnapStartResponse *FunctionSnapStartResponse `pulumi:"snapStartResponse"` // A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + // You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. Tags []aws.Tag `pulumi:"tags"` // The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For more information, see [Lambda execution environment](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html). Timeout *int `pulumi:"timeout"` @@ -189,7 +189,7 @@ func (o LookupFunctionResultOutput) ImageConfig() FunctionImageConfigPtrOutput { return o.ApplyT(func(v LookupFunctionResult) *FunctionImageConfig { return v.ImageConfig }).(FunctionImageConfigPtrOutput) } -// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. +// The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. func (o LookupFunctionResultOutput) KmsKeyArn() pulumi.StringPtrOutput { return o.ApplyT(func(v LookupFunctionResult) *string { return v.KmsKeyArn }).(pulumi.StringPtrOutput) } @@ -216,9 +216,8 @@ func (o LookupFunctionResultOutput) PackageType() FunctionPackageTypePtrOutput { // The status of your function's recursive loop detection configuration. // -// When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. -// -// When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. +// When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. +// When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. func (o LookupFunctionResultOutput) RecursiveLoop() FunctionRecursiveLoopPtrOutput { return o.ApplyT(func(v LookupFunctionResult) *FunctionRecursiveLoop { return v.RecursiveLoop }).(FunctionRecursiveLoopPtrOutput) } @@ -251,6 +250,8 @@ func (o LookupFunctionResultOutput) SnapStartResponse() FunctionSnapStartRespons } // A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. +// +// You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. func (o LookupFunctionResultOutput) Tags() aws.TagArrayOutput { return o.ApplyT(func(v LookupFunctionResult) []aws.Tag { return v.Tags }).(aws.TagArrayOutput) } diff --git a/sdk/go/aws/lambda/pulumiTypes.go b/sdk/go/aws/lambda/pulumiTypes.go index ee6e78b80c..caac9d9f0a 100644 --- a/sdk/go/aws/lambda/pulumiTypes.go +++ b/sdk/go/aws/lambda/pulumiTypes.go @@ -2892,6 +2892,7 @@ func (o FunctionDeadLetterConfigPtrOutput) TargetArn() pulumi.StringPtrOutput { // A function's environment variable settings. You can use environment variables to adjust your function's behavior without updating code. An environment variable is a pair of strings that are stored in a function's version-specific configuration. type FunctionEnvironment struct { // Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + // If the value of the environment variable is a time or a duration, enclose the value in quotes. Variables map[string]string `pulumi:"variables"` } @@ -2909,6 +2910,7 @@ type FunctionEnvironmentInput interface { // A function's environment variable settings. You can use environment variables to adjust your function's behavior without updating code. An environment variable is a pair of strings that are stored in a function's version-specific configuration. type FunctionEnvironmentArgs struct { // Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + // If the value of the environment variable is a time or a duration, enclose the value in quotes. Variables pulumi.StringMapInput `pulumi:"variables"` } @@ -2991,6 +2993,8 @@ func (o FunctionEnvironmentOutput) ToFunctionEnvironmentPtrOutputWithContext(ctx } // Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). +// +// If the value of the environment variable is a time or a duration, enclose the value in quotes. func (o FunctionEnvironmentOutput) Variables() pulumi.StringMapOutput { return o.ApplyT(func(v FunctionEnvironment) map[string]string { return v.Variables }).(pulumi.StringMapOutput) } @@ -3020,6 +3024,8 @@ func (o FunctionEnvironmentPtrOutput) Elem() FunctionEnvironmentOutput { } // Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). +// +// If the value of the environment variable is a time or a duration, enclose the value in quotes. func (o FunctionEnvironmentPtrOutput) Variables() pulumi.StringMapOutput { return o.ApplyT(func(v *FunctionEnvironment) map[string]string { if v == nil { @@ -4065,6 +4071,7 @@ func (o FunctionSnapStartResponsePtrOutput) OptimizationStatus() FunctionSnapSta }).(FunctionSnapStartResponseOptimizationStatusPtrOutput) } +// A [tag](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. type FunctionTag struct { // The key for this tag. Key string `pulumi:"key"` diff --git a/sdk/go/aws/location/placeIndex.go b/sdk/go/aws/location/placeIndex.go index 29a0f22366..a81d6d7931 100644 --- a/sdk/go/aws/location/placeIndex.go +++ b/sdk/go/aws/location/placeIndex.go @@ -29,13 +29,13 @@ type PlaceIndex struct { // // Valid values include: // - // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - // - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + // - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . // // > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. // - // For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + // For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . DataSource pulumi.StringOutput `pulumi:"dataSource"` // Specifies the data storage option requesting Places. DataSourceConfiguration PlaceIndexDataSourceConfigurationPtrOutput `pulumi:"dataSourceConfiguration"` @@ -117,13 +117,13 @@ type placeIndexArgs struct { // // Valid values include: // - // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - // - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + // - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . // // > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. // - // For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + // For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . DataSource string `pulumi:"dataSource"` // Specifies the data storage option requesting Places. DataSourceConfiguration *PlaceIndexDataSourceConfiguration `pulumi:"dataSourceConfiguration"` @@ -153,13 +153,13 @@ type PlaceIndexArgs struct { // // Valid values include: // - // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - // - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + // - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . // // > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. // - // For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + // For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . DataSource pulumi.StringInput // Specifies the data storage option requesting Places. DataSourceConfiguration PlaceIndexDataSourceConfigurationPtrInput @@ -236,13 +236,13 @@ func (o PlaceIndexOutput) CreateTime() pulumi.StringOutput { // // Valid values include: // -// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . -// - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . -// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . +// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . +// - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . +// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . // // > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. // -// For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . +// For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . func (o PlaceIndexOutput) DataSource() pulumi.StringOutput { return o.ApplyT(func(v *PlaceIndex) pulumi.StringOutput { return v.DataSource }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/location/pulumiTypes.go b/sdk/go/aws/location/pulumiTypes.go index d83abe4662..e633983c9c 100644 --- a/sdk/go/aws/location/pulumiTypes.go +++ b/sdk/go/aws/location/pulumiTypes.go @@ -306,7 +306,7 @@ type MapConfiguration struct { PoliticalView *string `pulumi:"politicalView"` // Specifies the map style selected from an available data provider. // - // Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + // Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : // // - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. // - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -315,7 +315,7 @@ type MapConfiguration struct { // - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. // - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. // - // Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + // Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : // // - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. // @@ -327,14 +327,14 @@ type MapConfiguration struct { // // > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. // - // Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + // Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : // // - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. // - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. // - // > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + // > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . // - // Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + // Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : // // - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. // - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. @@ -363,7 +363,7 @@ type MapConfigurationArgs struct { PoliticalView pulumi.StringPtrInput `pulumi:"politicalView"` // Specifies the map style selected from an available data provider. // - // Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + // Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : // // - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. // - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -372,7 +372,7 @@ type MapConfigurationArgs struct { // - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. // - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. // - // Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + // Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : // // - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. // @@ -384,14 +384,14 @@ type MapConfigurationArgs struct { // // > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. // - // Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + // Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : // // - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. // - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. // - // > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + // > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . // - // Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + // Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : // // - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. // - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. @@ -440,7 +440,7 @@ func (o MapConfigurationOutput) PoliticalView() pulumi.StringPtrOutput { // Specifies the map style selected from an available data provider. // -// Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : +// Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : // // - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. // - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -449,7 +449,7 @@ func (o MapConfigurationOutput) PoliticalView() pulumi.StringPtrOutput { // - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. // - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. // -// Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : +// Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : // // - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. // @@ -461,14 +461,14 @@ func (o MapConfigurationOutput) PoliticalView() pulumi.StringPtrOutput { // // > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. // -// Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : +// Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : // // - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. // - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. // -// > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . +// > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . // -// Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : +// Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : // // - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. // - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. diff --git a/sdk/go/aws/location/routeCalculator.go b/sdk/go/aws/location/routeCalculator.go index 90b27ca292..3406f82c0e 100644 --- a/sdk/go/aws/location/routeCalculator.go +++ b/sdk/go/aws/location/routeCalculator.go @@ -41,13 +41,13 @@ type RouteCalculator struct { // // Valid values include: // - // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . // // Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - // - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + // - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . // - // For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + // For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . DataSource pulumi.StringOutput `pulumi:"dataSource"` // The optional description for the route calculator resource. Description pulumi.StringPtrOutput `pulumi:"description"` @@ -123,13 +123,13 @@ type routeCalculatorArgs struct { // // Valid values include: // - // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . // // Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - // - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + // - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . // - // For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + // For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . DataSource string `pulumi:"dataSource"` // The optional description for the route calculator resource. Description *string `pulumi:"description"` @@ -157,13 +157,13 @@ type RouteCalculatorArgs struct { // // Valid values include: // - // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + // - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . // // Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - // - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + // - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + // - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . // - // For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + // For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . DataSource pulumi.StringInput // The optional description for the route calculator resource. Description pulumi.StringPtrInput @@ -248,13 +248,13 @@ func (o RouteCalculatorOutput) CreateTime() pulumi.StringOutput { // // Valid values include: // -// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . +// - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . // // Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. -// - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . -// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . +// - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . +// - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . // -// For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . +// For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . func (o RouteCalculatorOutput) DataSource() pulumi.StringOutput { return o.ApplyT(func(v *RouteCalculator) pulumi.StringOutput { return v.DataSource }).(pulumi.StringOutput) } diff --git a/sdk/go/aws/quicksight/pulumiTypes2.go b/sdk/go/aws/quicksight/pulumiTypes2.go index 97ee3a7373..bb4ad22bef 100644 --- a/sdk/go/aws/quicksight/pulumiTypes2.go +++ b/sdk/go/aws/quicksight/pulumiTypes2.go @@ -9447,10 +9447,13 @@ func (o DataSourceMySqlParametersPtrOutput) Port() pulumi.Float64PtrOutput { } type DataSourceOAuthParameters struct { + // The resource uri of the identity provider. IdentityProviderResourceUri *string `pulumi:"identityProviderResourceUri"` IdentityProviderVpcConnectionProperties *DataSourceVpcConnectionProperties `pulumi:"identityProviderVpcConnectionProperties"` - OAuthScope *string `pulumi:"oAuthScope"` - TokenProviderUrl string `pulumi:"tokenProviderUrl"` + // The OAuth scope. + OAuthScope *string `pulumi:"oAuthScope"` + // The token endpoint URL of the identity provider. + TokenProviderUrl string `pulumi:"tokenProviderUrl"` } // DataSourceOAuthParametersInput is an input type that accepts DataSourceOAuthParametersArgs and DataSourceOAuthParametersOutput values. @@ -9465,10 +9468,13 @@ type DataSourceOAuthParametersInput interface { } type DataSourceOAuthParametersArgs struct { + // The resource uri of the identity provider. IdentityProviderResourceUri pulumi.StringPtrInput `pulumi:"identityProviderResourceUri"` IdentityProviderVpcConnectionProperties DataSourceVpcConnectionPropertiesPtrInput `pulumi:"identityProviderVpcConnectionProperties"` - OAuthScope pulumi.StringPtrInput `pulumi:"oAuthScope"` - TokenProviderUrl pulumi.StringInput `pulumi:"tokenProviderUrl"` + // The OAuth scope. + OAuthScope pulumi.StringPtrInput `pulumi:"oAuthScope"` + // The token endpoint URL of the identity provider. + TokenProviderUrl pulumi.StringInput `pulumi:"tokenProviderUrl"` } func (DataSourceOAuthParametersArgs) ElementType() reflect.Type { @@ -9548,6 +9554,7 @@ func (o DataSourceOAuthParametersOutput) ToDataSourceOAuthParametersPtrOutputWit }).(DataSourceOAuthParametersPtrOutput) } +// The resource uri of the identity provider. func (o DataSourceOAuthParametersOutput) IdentityProviderResourceUri() pulumi.StringPtrOutput { return o.ApplyT(func(v DataSourceOAuthParameters) *string { return v.IdentityProviderResourceUri }).(pulumi.StringPtrOutput) } @@ -9558,10 +9565,12 @@ func (o DataSourceOAuthParametersOutput) IdentityProviderVpcConnectionProperties }).(DataSourceVpcConnectionPropertiesPtrOutput) } +// The OAuth scope. func (o DataSourceOAuthParametersOutput) OAuthScope() pulumi.StringPtrOutput { return o.ApplyT(func(v DataSourceOAuthParameters) *string { return v.OAuthScope }).(pulumi.StringPtrOutput) } +// The token endpoint URL of the identity provider. func (o DataSourceOAuthParametersOutput) TokenProviderUrl() pulumi.StringOutput { return o.ApplyT(func(v DataSourceOAuthParameters) string { return v.TokenProviderUrl }).(pulumi.StringOutput) } @@ -9590,6 +9599,7 @@ func (o DataSourceOAuthParametersPtrOutput) Elem() DataSourceOAuthParametersOutp }).(DataSourceOAuthParametersOutput) } +// The resource uri of the identity provider. func (o DataSourceOAuthParametersPtrOutput) IdentityProviderResourceUri() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataSourceOAuthParameters) *string { if v == nil { @@ -9608,6 +9618,7 @@ func (o DataSourceOAuthParametersPtrOutput) IdentityProviderVpcConnectionPropert }).(DataSourceVpcConnectionPropertiesPtrOutput) } +// The OAuth scope. func (o DataSourceOAuthParametersPtrOutput) OAuthScope() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataSourceOAuthParameters) *string { if v == nil { @@ -9617,6 +9628,7 @@ func (o DataSourceOAuthParametersPtrOutput) OAuthScope() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } +// The token endpoint URL of the identity provider. func (o DataSourceOAuthParametersPtrOutput) TokenProviderUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataSourceOAuthParameters) *string { if v == nil { @@ -11662,12 +11674,15 @@ func (o DataSourceS3ParametersPtrOutput) RoleArn() pulumi.StringPtrOutput { //

The parameters for Snowflake.

type DataSourceSnowflakeParameters struct { + // The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. AuthenticationType *DataSourceAuthenticationType `pulumi:"authenticationType"` //

Database.

- Database string `pulumi:"database"` + Database string `pulumi:"database"` + // The database access control role. DatabaseAccessControlRole *string `pulumi:"databaseAccessControlRole"` //

Host.

- Host string `pulumi:"host"` + Host string `pulumi:"host"` + // An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. OAuthParameters *DataSourceOAuthParameters `pulumi:"oAuthParameters"` //

Warehouse.

Warehouse string `pulumi:"warehouse"` @@ -11686,12 +11701,15 @@ type DataSourceSnowflakeParametersInput interface { //

The parameters for Snowflake.

type DataSourceSnowflakeParametersArgs struct { + // The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. AuthenticationType DataSourceAuthenticationTypePtrInput `pulumi:"authenticationType"` //

Database.

- Database pulumi.StringInput `pulumi:"database"` + Database pulumi.StringInput `pulumi:"database"` + // The database access control role. DatabaseAccessControlRole pulumi.StringPtrInput `pulumi:"databaseAccessControlRole"` //

Host.

- Host pulumi.StringInput `pulumi:"host"` + Host pulumi.StringInput `pulumi:"host"` + // An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. OAuthParameters DataSourceOAuthParametersPtrInput `pulumi:"oAuthParameters"` //

Warehouse.

Warehouse pulumi.StringInput `pulumi:"warehouse"` @@ -11775,6 +11793,7 @@ func (o DataSourceSnowflakeParametersOutput) ToDataSourceSnowflakeParametersPtrO }).(DataSourceSnowflakeParametersPtrOutput) } +// The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. func (o DataSourceSnowflakeParametersOutput) AuthenticationType() DataSourceAuthenticationTypePtrOutput { return o.ApplyT(func(v DataSourceSnowflakeParameters) *DataSourceAuthenticationType { return v.AuthenticationType }).(DataSourceAuthenticationTypePtrOutput) } @@ -11784,6 +11803,7 @@ func (o DataSourceSnowflakeParametersOutput) Database() pulumi.StringOutput { return o.ApplyT(func(v DataSourceSnowflakeParameters) string { return v.Database }).(pulumi.StringOutput) } +// The database access control role. func (o DataSourceSnowflakeParametersOutput) DatabaseAccessControlRole() pulumi.StringPtrOutput { return o.ApplyT(func(v DataSourceSnowflakeParameters) *string { return v.DatabaseAccessControlRole }).(pulumi.StringPtrOutput) } @@ -11793,6 +11813,7 @@ func (o DataSourceSnowflakeParametersOutput) Host() pulumi.StringOutput { return o.ApplyT(func(v DataSourceSnowflakeParameters) string { return v.Host }).(pulumi.StringOutput) } +// An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. func (o DataSourceSnowflakeParametersOutput) OAuthParameters() DataSourceOAuthParametersPtrOutput { return o.ApplyT(func(v DataSourceSnowflakeParameters) *DataSourceOAuthParameters { return v.OAuthParameters }).(DataSourceOAuthParametersPtrOutput) } @@ -11826,6 +11847,7 @@ func (o DataSourceSnowflakeParametersPtrOutput) Elem() DataSourceSnowflakeParame }).(DataSourceSnowflakeParametersOutput) } +// The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. func (o DataSourceSnowflakeParametersPtrOutput) AuthenticationType() DataSourceAuthenticationTypePtrOutput { return o.ApplyT(func(v *DataSourceSnowflakeParameters) *DataSourceAuthenticationType { if v == nil { @@ -11845,6 +11867,7 @@ func (o DataSourceSnowflakeParametersPtrOutput) Database() pulumi.StringPtrOutpu }).(pulumi.StringPtrOutput) } +// The database access control role. func (o DataSourceSnowflakeParametersPtrOutput) DatabaseAccessControlRole() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataSourceSnowflakeParameters) *string { if v == nil { @@ -11864,6 +11887,7 @@ func (o DataSourceSnowflakeParametersPtrOutput) Host() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. func (o DataSourceSnowflakeParametersPtrOutput) OAuthParameters() DataSourceOAuthParametersPtrOutput { return o.ApplyT(func(v *DataSourceSnowflakeParameters) *DataSourceOAuthParameters { if v == nil { @@ -12368,12 +12392,15 @@ func (o DataSourceSslPropertiesPtrOutput) DisableSsl() pulumi.BoolPtrOutput { //

The parameters that are required to connect to a Starburst data source.

type DataSourceStarburstParameters struct { + // The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. AuthenticationType *DataSourceAuthenticationType `pulumi:"authenticationType"` //

The catalog name for the Starburst data source.

- Catalog string `pulumi:"catalog"` + Catalog string `pulumi:"catalog"` + // The database access control role. DatabaseAccessControlRole *string `pulumi:"databaseAccessControlRole"` //

The host name of the Starburst data source.

- Host string `pulumi:"host"` + Host string `pulumi:"host"` + // An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. OAuthParameters *DataSourceOAuthParameters `pulumi:"oAuthParameters"` //

The port for the Starburst data source.

Port float64 `pulumi:"port"` @@ -12394,12 +12421,15 @@ type DataSourceStarburstParametersInput interface { //

The parameters that are required to connect to a Starburst data source.

type DataSourceStarburstParametersArgs struct { + // The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. AuthenticationType DataSourceAuthenticationTypePtrInput `pulumi:"authenticationType"` //

The catalog name for the Starburst data source.

- Catalog pulumi.StringInput `pulumi:"catalog"` + Catalog pulumi.StringInput `pulumi:"catalog"` + // The database access control role. DatabaseAccessControlRole pulumi.StringPtrInput `pulumi:"databaseAccessControlRole"` //

The host name of the Starburst data source.

- Host pulumi.StringInput `pulumi:"host"` + Host pulumi.StringInput `pulumi:"host"` + // An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. OAuthParameters DataSourceOAuthParametersPtrInput `pulumi:"oAuthParameters"` //

The port for the Starburst data source.

Port pulumi.Float64Input `pulumi:"port"` @@ -12485,6 +12515,7 @@ func (o DataSourceStarburstParametersOutput) ToDataSourceStarburstParametersPtrO }).(DataSourceStarburstParametersPtrOutput) } +// The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. func (o DataSourceStarburstParametersOutput) AuthenticationType() DataSourceAuthenticationTypePtrOutput { return o.ApplyT(func(v DataSourceStarburstParameters) *DataSourceAuthenticationType { return v.AuthenticationType }).(DataSourceAuthenticationTypePtrOutput) } @@ -12494,6 +12525,7 @@ func (o DataSourceStarburstParametersOutput) Catalog() pulumi.StringOutput { return o.ApplyT(func(v DataSourceStarburstParameters) string { return v.Catalog }).(pulumi.StringOutput) } +// The database access control role. func (o DataSourceStarburstParametersOutput) DatabaseAccessControlRole() pulumi.StringPtrOutput { return o.ApplyT(func(v DataSourceStarburstParameters) *string { return v.DatabaseAccessControlRole }).(pulumi.StringPtrOutput) } @@ -12503,6 +12535,7 @@ func (o DataSourceStarburstParametersOutput) Host() pulumi.StringOutput { return o.ApplyT(func(v DataSourceStarburstParameters) string { return v.Host }).(pulumi.StringOutput) } +// An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. func (o DataSourceStarburstParametersOutput) OAuthParameters() DataSourceOAuthParametersPtrOutput { return o.ApplyT(func(v DataSourceStarburstParameters) *DataSourceOAuthParameters { return v.OAuthParameters }).(DataSourceOAuthParametersPtrOutput) } @@ -12541,6 +12574,7 @@ func (o DataSourceStarburstParametersPtrOutput) Elem() DataSourceStarburstParame }).(DataSourceStarburstParametersOutput) } +// The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. func (o DataSourceStarburstParametersPtrOutput) AuthenticationType() DataSourceAuthenticationTypePtrOutput { return o.ApplyT(func(v *DataSourceStarburstParameters) *DataSourceAuthenticationType { if v == nil { @@ -12560,6 +12594,7 @@ func (o DataSourceStarburstParametersPtrOutput) Catalog() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } +// The database access control role. func (o DataSourceStarburstParametersPtrOutput) DatabaseAccessControlRole() pulumi.StringPtrOutput { return o.ApplyT(func(v *DataSourceStarburstParameters) *string { if v == nil { @@ -12579,6 +12614,7 @@ func (o DataSourceStarburstParametersPtrOutput) Host() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. func (o DataSourceStarburstParametersPtrOutput) OAuthParameters() DataSourceOAuthParametersPtrOutput { return o.ApplyT(func(v *DataSourceStarburstParameters) *DataSourceOAuthParameters { if v == nil { diff --git a/sdk/nodejs/applicationinsights/application.ts b/sdk/nodejs/applicationinsights/application.ts index 5cfbad032d..b293b422f2 100644 --- a/sdk/nodejs/applicationinsights/application.ts +++ b/sdk/nodejs/applicationinsights/application.ts @@ -81,6 +81,10 @@ export class Application extends pulumi.CustomResource { * The name of the resource group. */ public readonly resourceGroupName!: pulumi.Output; + /** + * Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + */ + public readonly snsNotificationArn!: pulumi.Output; /** * The tags of Application Insights application. */ @@ -110,6 +114,7 @@ export class Application extends pulumi.CustomResource { resourceInputs["opsCenterEnabled"] = args ? args.opsCenterEnabled : undefined; resourceInputs["opsItemSnsTopicArn"] = args ? args.opsItemSnsTopicArn : undefined; resourceInputs["resourceGroupName"] = args ? args.resourceGroupName : undefined; + resourceInputs["snsNotificationArn"] = args ? args.snsNotificationArn : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["applicationArn"] = undefined /*out*/; } else { @@ -124,6 +129,7 @@ export class Application extends pulumi.CustomResource { resourceInputs["opsCenterEnabled"] = undefined /*out*/; resourceInputs["opsItemSnsTopicArn"] = undefined /*out*/; resourceInputs["resourceGroupName"] = undefined /*out*/; + resourceInputs["snsNotificationArn"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -177,6 +183,10 @@ export interface ApplicationArgs { * The name of the resource group. */ resourceGroupName: pulumi.Input; + /** + * Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + */ + snsNotificationArn?: pulumi.Input; /** * The tags of Application Insights application. */ diff --git a/sdk/nodejs/autoscaling/autoScalingGroup.ts b/sdk/nodejs/autoscaling/autoScalingGroup.ts index 746a3c2951..d56ab948ce 100644 --- a/sdk/nodejs/autoscaling/autoScalingGroup.ts +++ b/sdk/nodejs/autoscaling/autoScalingGroup.ts @@ -46,6 +46,9 @@ export class AutoScalingGroup extends pulumi.CustomResource { * You cannot use a colon (:) in the name. */ public readonly autoScalingGroupName!: pulumi.Output; + /** + * The instance capacity distribution across Availability Zones. + */ public readonly availabilityZoneDistribution!: pulumi.Output; /** * A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. @@ -288,6 +291,9 @@ export interface AutoScalingGroupArgs { * You cannot use a colon (:) in the name. */ autoScalingGroupName?: pulumi.Input; + /** + * The instance capacity distribution across Availability Zones. + */ availabilityZoneDistribution?: pulumi.Input; /** * A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. diff --git a/sdk/nodejs/autoscaling/getAutoScalingGroup.ts b/sdk/nodejs/autoscaling/getAutoScalingGroup.ts index 0c8186b05c..ec739b170d 100644 --- a/sdk/nodejs/autoscaling/getAutoScalingGroup.ts +++ b/sdk/nodejs/autoscaling/getAutoScalingGroup.ts @@ -30,6 +30,9 @@ export interface GetAutoScalingGroupArgs { } export interface GetAutoScalingGroupResult { + /** + * The instance capacity distribution across Availability Zones. + */ readonly availabilityZoneDistribution?: outputs.autoscaling.AutoScalingGroupAvailabilityZoneDistribution; /** * A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. diff --git a/sdk/nodejs/cleanrooms/collaboration.ts b/sdk/nodejs/cleanrooms/collaboration.ts index f772110414..be256af0a3 100644 --- a/sdk/nodejs/cleanrooms/collaboration.ts +++ b/sdk/nodejs/cleanrooms/collaboration.ts @@ -37,6 +37,10 @@ export class Collaboration extends pulumi.CustomResource { return obj['__pulumiType'] === Collaboration.__pulumiType; } + /** + * The analytics engine for the collaboration. + */ + public readonly analyticsEngine!: pulumi.Output; /** * Returns the Amazon Resource Name (ARN) of the specified collaboration. * @@ -114,6 +118,7 @@ export class Collaboration extends pulumi.CustomResource { if ((!args || args.queryLogStatus === undefined) && !opts.urn) { throw new Error("Missing required property 'queryLogStatus'"); } + resourceInputs["analyticsEngine"] = args ? args.analyticsEngine : undefined; resourceInputs["creatorDisplayName"] = args ? args.creatorDisplayName : undefined; resourceInputs["creatorMemberAbilities"] = args ? args.creatorMemberAbilities : undefined; resourceInputs["creatorPaymentConfiguration"] = args ? args.creatorPaymentConfiguration : undefined; @@ -126,6 +131,7 @@ export class Collaboration extends pulumi.CustomResource { resourceInputs["arn"] = undefined /*out*/; resourceInputs["collaborationIdentifier"] = undefined /*out*/; } else { + resourceInputs["analyticsEngine"] = undefined /*out*/; resourceInputs["arn"] = undefined /*out*/; resourceInputs["collaborationIdentifier"] = undefined /*out*/; resourceInputs["creatorDisplayName"] = undefined /*out*/; @@ -139,7 +145,7 @@ export class Collaboration extends pulumi.CustomResource { resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["creatorDisplayName", "creatorMemberAbilities[*]", "creatorPaymentConfiguration", "dataEncryptionMetadata", "members[*]", "queryLogStatus"] }; + const replaceOnChanges = { replaceOnChanges: ["analyticsEngine", "creatorDisplayName", "creatorMemberAbilities[*]", "creatorPaymentConfiguration", "dataEncryptionMetadata", "members[*]", "queryLogStatus"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(Collaboration.__pulumiType, name, resourceInputs, opts); } @@ -149,6 +155,10 @@ export class Collaboration extends pulumi.CustomResource { * The set of arguments for constructing a Collaboration resource. */ export interface CollaborationArgs { + /** + * The analytics engine for the collaboration. + */ + analyticsEngine?: pulumi.Input; /** * A display name of the collaboration creator. */ diff --git a/sdk/nodejs/cleanrooms/getIdNamespaceAssociation.ts b/sdk/nodejs/cleanrooms/getIdNamespaceAssociation.ts index 17f63d3e79..edcb153eb8 100644 --- a/sdk/nodejs/cleanrooms/getIdNamespaceAssociation.ts +++ b/sdk/nodejs/cleanrooms/getIdNamespaceAssociation.ts @@ -54,6 +54,9 @@ export interface GetIdNamespaceAssociationResult { * The name of this ID namespace association. */ readonly name?: string; + /** + * An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + */ readonly tags?: outputs.Tag[]; } /** diff --git a/sdk/nodejs/cleanrooms/idNamespaceAssociation.ts b/sdk/nodejs/cleanrooms/idNamespaceAssociation.ts index 85fe028829..7b1c894529 100644 --- a/sdk/nodejs/cleanrooms/idNamespaceAssociation.ts +++ b/sdk/nodejs/cleanrooms/idNamespaceAssociation.ts @@ -72,6 +72,9 @@ export class IdNamespaceAssociation extends pulumi.CustomResource { * The name of this ID namespace association. */ public readonly name!: pulumi.Output; + /** + * An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + */ public readonly tags!: pulumi.Output; /** @@ -148,5 +151,8 @@ export interface IdNamespaceAssociationArgs { * The name of this ID namespace association. */ name?: pulumi.Input; + /** + * An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + */ tags?: pulumi.Input[]>; } diff --git a/sdk/nodejs/codebuild/fleet.ts b/sdk/nodejs/codebuild/fleet.ts index 4aed42b19a..136c08b7d9 100644 --- a/sdk/nodejs/codebuild/fleet.ts +++ b/sdk/nodejs/codebuild/fleet.ts @@ -45,6 +45,7 @@ export class Fleet extends pulumi.CustomResource { * The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel. */ public readonly baseCapacity!: pulumi.Output; + public readonly computeConfiguration!: pulumi.Output; /** * Information about the compute resources the compute fleet uses. Available values include: * @@ -90,6 +91,7 @@ export class Fleet extends pulumi.CustomResource { * For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . */ public readonly environmentType!: pulumi.Output; + public readonly fleetProxyConfiguration!: pulumi.Output; /** * The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . */ @@ -115,6 +117,7 @@ export class Fleet extends pulumi.CustomResource { * > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . */ public readonly overflowBehavior!: pulumi.Output; + public readonly scalingConfiguration!: pulumi.Output; /** * A list of tag key and value pairs associated with this compute fleet. * @@ -134,25 +137,31 @@ export class Fleet extends pulumi.CustomResource { opts = opts || {}; if (!opts.id) { resourceInputs["baseCapacity"] = args ? args.baseCapacity : undefined; + resourceInputs["computeConfiguration"] = args ? args.computeConfiguration : undefined; resourceInputs["computeType"] = args ? args.computeType : undefined; resourceInputs["environmentType"] = args ? args.environmentType : undefined; + resourceInputs["fleetProxyConfiguration"] = args ? args.fleetProxyConfiguration : undefined; resourceInputs["fleetServiceRole"] = args ? args.fleetServiceRole : undefined; resourceInputs["fleetVpcConfig"] = args ? args.fleetVpcConfig : undefined; resourceInputs["imageId"] = args ? args.imageId : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["overflowBehavior"] = args ? args.overflowBehavior : undefined; + resourceInputs["scalingConfiguration"] = args ? args.scalingConfiguration : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["arn"] = undefined /*out*/; } else { resourceInputs["arn"] = undefined /*out*/; resourceInputs["baseCapacity"] = undefined /*out*/; + resourceInputs["computeConfiguration"] = undefined /*out*/; resourceInputs["computeType"] = undefined /*out*/; resourceInputs["environmentType"] = undefined /*out*/; + resourceInputs["fleetProxyConfiguration"] = undefined /*out*/; resourceInputs["fleetServiceRole"] = undefined /*out*/; resourceInputs["fleetVpcConfig"] = undefined /*out*/; resourceInputs["imageId"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["overflowBehavior"] = undefined /*out*/; + resourceInputs["scalingConfiguration"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -168,6 +177,7 @@ export interface FleetArgs { * The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel. */ baseCapacity?: pulumi.Input; + computeConfiguration?: pulumi.Input; /** * Information about the compute resources the compute fleet uses. Available values include: * @@ -213,6 +223,7 @@ export interface FleetArgs { * For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . */ environmentType?: pulumi.Input; + fleetProxyConfiguration?: pulumi.Input; /** * The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . */ @@ -238,6 +249,7 @@ export interface FleetArgs { * > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . */ overflowBehavior?: pulumi.Input; + scalingConfiguration?: pulumi.Input; /** * A list of tag key and value pairs associated with this compute fleet. * diff --git a/sdk/nodejs/codebuild/getFleet.ts b/sdk/nodejs/codebuild/getFleet.ts index 06bbe3a5a9..3f16b05594 100644 --- a/sdk/nodejs/codebuild/getFleet.ts +++ b/sdk/nodejs/codebuild/getFleet.ts @@ -33,6 +33,7 @@ export interface GetFleetResult { * The initial number of machines allocated to the compute fleet, which defines the number of builds that can run in parallel. */ readonly baseCapacity?: number; + readonly computeConfiguration?: outputs.codebuild.FleetComputeConfiguration; /** * Information about the compute resources the compute fleet uses. Available values include: * @@ -78,6 +79,7 @@ export interface GetFleetResult { * For more information, see [Build environment compute types](https://docs.aws.amazon.com//codebuild/latest/userguide/build-env-ref-compute-types.html) in the *AWS CodeBuild user guide* . */ readonly environmentType?: enums.codebuild.FleetEnvironmentType; + readonly fleetProxyConfiguration?: outputs.codebuild.FleetProxyConfiguration; /** * The service role associated with the compute fleet. For more information, see [Allow a user to add a permission policy for a fleet service role](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-permission-policy-fleet-service-role.html) in the *AWS CodeBuild User Guide* . */ @@ -103,6 +105,7 @@ export interface GetFleetResult { * > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . */ readonly overflowBehavior?: enums.codebuild.FleetOverflowBehavior; + readonly scalingConfiguration?: outputs.codebuild.FleetScalingConfigurationInput; /** * A list of tag key and value pairs associated with this compute fleet. * diff --git a/sdk/nodejs/dynamodb/getGlobalTable.ts b/sdk/nodejs/dynamodb/getGlobalTable.ts index fea3d61832..92644e6f37 100644 --- a/sdk/nodejs/dynamodb/getGlobalTable.ts +++ b/sdk/nodejs/dynamodb/getGlobalTable.ts @@ -83,7 +83,7 @@ export interface GetGlobalTableResult { */ readonly timeToLiveSpecification?: outputs.dynamodb.GlobalTableTimeToLiveSpecification; /** - * Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + * Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . */ readonly writeOnDemandThroughputSettings?: outputs.dynamodb.GlobalTableWriteOnDemandThroughputSettings; /** diff --git a/sdk/nodejs/dynamodb/globalTable.ts b/sdk/nodejs/dynamodb/globalTable.ts index a5dc387688..2349f644f0 100644 --- a/sdk/nodejs/dynamodb/globalTable.ts +++ b/sdk/nodejs/dynamodb/globalTable.ts @@ -107,7 +107,7 @@ export class GlobalTable extends pulumi.CustomResource { */ public readonly timeToLiveSpecification!: pulumi.Output; /** - * Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + * Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . */ public readonly writeOnDemandThroughputSettings!: pulumi.Output; /** @@ -234,7 +234,7 @@ export interface GlobalTableArgs { */ timeToLiveSpecification?: pulumi.Input; /** - * Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + * Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . */ writeOnDemandThroughputSettings?: pulumi.Input; /** diff --git a/sdk/nodejs/ec2/capacityReservation.ts b/sdk/nodejs/ec2/capacityReservation.ts index 8241661183..c03eca581b 100644 --- a/sdk/nodejs/ec2/capacityReservation.ts +++ b/sdk/nodejs/ec2/capacityReservation.ts @@ -119,7 +119,9 @@ export class CapacityReservation extends pulumi.CustomResource { */ public /*out*/ readonly totalInstanceCount!: pulumi.Output; /** - * The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + * The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + * + * You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . */ public readonly unusedReservationBillingOwnerId!: pulumi.Output; @@ -263,7 +265,9 @@ export interface CapacityReservationArgs { */ tenancy?: pulumi.Input; /** - * The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + * The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + * + * You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . */ unusedReservationBillingOwnerId?: pulumi.Input; } diff --git a/sdk/nodejs/ecs/getService.ts b/sdk/nodejs/ecs/getService.ts index c888057f28..f2b2b60b2b 100644 --- a/sdk/nodejs/ecs/getService.ts +++ b/sdk/nodejs/ecs/getService.ts @@ -32,6 +32,7 @@ export interface GetServiceArgs { } export interface GetServiceResult { + readonly availabilityZoneRebalancing?: enums.ecs.ServiceAvailabilityZoneRebalancing; /** * The capacity provider strategy to use for the service. * If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -39,7 +40,7 @@ export interface GetServiceResult { */ readonly capacityProviderStrategy?: outputs.ecs.ServiceCapacityProviderStrategyItem[]; /** - * Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + * Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. */ readonly deploymentConfiguration?: outputs.ecs.ServiceDeploymentConfiguration; /** @@ -120,6 +121,7 @@ export interface GetServiceResult { * For more information about deployment types, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html). */ readonly taskDefinition?: string; + readonly vpcLatticeConfigurations?: outputs.ecs.ServiceVpcLatticeConfiguration[]; } /** * The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers. diff --git a/sdk/nodejs/ecs/service.ts b/sdk/nodejs/ecs/service.ts index 3866c5e189..cc8f44280b 100644 --- a/sdk/nodejs/ecs/service.ts +++ b/sdk/nodejs/ecs/service.ts @@ -39,6 +39,7 @@ export class Service extends pulumi.CustomResource { return obj['__pulumiType'] === Service.__pulumiType; } + public readonly availabilityZoneRebalancing!: pulumi.Output; /** * The capacity provider strategy to use for the service. * If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -50,7 +51,7 @@ export class Service extends pulumi.CustomResource { */ public readonly cluster!: pulumi.Output; /** - * Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + * Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. */ public readonly deploymentConfiguration!: pulumi.Output; /** @@ -167,6 +168,7 @@ export class Service extends pulumi.CustomResource { * The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume. */ public readonly volumeConfigurations!: pulumi.Output; + public readonly vpcLatticeConfigurations!: pulumi.Output; /** * Create a Service resource with the given unique name, arguments, and options. @@ -179,6 +181,7 @@ export class Service extends pulumi.CustomResource { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { + resourceInputs["availabilityZoneRebalancing"] = args ? args.availabilityZoneRebalancing : undefined; resourceInputs["capacityProviderStrategy"] = args ? args.capacityProviderStrategy : undefined; resourceInputs["cluster"] = args ? args.cluster : undefined; resourceInputs["deploymentConfiguration"] = args ? args.deploymentConfiguration : undefined; @@ -202,9 +205,11 @@ export class Service extends pulumi.CustomResource { resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["taskDefinition"] = args ? args.taskDefinition : undefined; resourceInputs["volumeConfigurations"] = args ? args.volumeConfigurations : undefined; + resourceInputs["vpcLatticeConfigurations"] = args ? args.vpcLatticeConfigurations : undefined; resourceInputs["name"] = undefined /*out*/; resourceInputs["serviceArn"] = undefined /*out*/; } else { + resourceInputs["availabilityZoneRebalancing"] = undefined /*out*/; resourceInputs["capacityProviderStrategy"] = undefined /*out*/; resourceInputs["cluster"] = undefined /*out*/; resourceInputs["deploymentConfiguration"] = undefined /*out*/; @@ -230,6 +235,7 @@ export class Service extends pulumi.CustomResource { resourceInputs["tags"] = undefined /*out*/; resourceInputs["taskDefinition"] = undefined /*out*/; resourceInputs["volumeConfigurations"] = undefined /*out*/; + resourceInputs["vpcLatticeConfigurations"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); const replaceOnChanges = { replaceOnChanges: ["cluster", "deploymentController", "launchType", "role", "schedulingStrategy", "serviceName"] }; @@ -242,6 +248,7 @@ export class Service extends pulumi.CustomResource { * The set of arguments for constructing a Service resource. */ export interface ServiceArgs { + availabilityZoneRebalancing?: pulumi.Input; /** * The capacity provider strategy to use for the service. * If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. @@ -253,7 +260,7 @@ export interface ServiceArgs { */ cluster?: pulumi.Input; /** - * Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + * Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. */ deploymentConfiguration?: pulumi.Input; /** @@ -362,4 +369,5 @@ export interface ServiceArgs { * The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume. */ volumeConfigurations?: pulumi.Input[]>; + vpcLatticeConfigurations?: pulumi.Input[]>; } diff --git a/sdk/nodejs/gamelift/containerGroupDefinition.ts b/sdk/nodejs/gamelift/containerGroupDefinition.ts index ece01a5a6b..1d7af3fdbe 100644 --- a/sdk/nodejs/gamelift/containerGroupDefinition.ts +++ b/sdk/nodejs/gamelift/containerGroupDefinition.ts @@ -37,10 +37,6 @@ export class ContainerGroupDefinition extends pulumi.CustomResource { return obj['__pulumiType'] === ContainerGroupDefinition.__pulumiType; } - /** - * A collection of container definitions that define the containers in this group. - */ - public readonly containerDefinitions!: pulumi.Output; /** * The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift container group resource and uniquely identifies it across all AWS Regions. */ @@ -57,10 +53,6 @@ export class ContainerGroupDefinition extends pulumi.CustomResource { * The operating system of the container group */ public readonly operatingSystem!: pulumi.Output; - /** - * Specifies whether the container group includes replica or daemon containers. - */ - public readonly schedulingStrategy!: pulumi.Output; /** * A specific ContainerGroupDefinition version to be updated */ @@ -81,14 +73,6 @@ export class ContainerGroupDefinition extends pulumi.CustomResource { * An array of key-value pairs to apply to this resource. */ public readonly tags!: pulumi.Output; - /** - * The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - */ - public readonly totalCpuLimit!: pulumi.Output; - /** - * The maximum amount of memory (in MiB) to allocate for this container group. - */ - public readonly totalMemoryLimit!: pulumi.Output; /** * Create a ContainerGroupDefinition resource with the given unique name, arguments, and options. @@ -101,48 +85,31 @@ export class ContainerGroupDefinition extends pulumi.CustomResource { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; if (!opts.id) { - if ((!args || args.containerDefinitions === undefined) && !opts.urn) { - throw new Error("Missing required property 'containerDefinitions'"); - } if ((!args || args.operatingSystem === undefined) && !opts.urn) { throw new Error("Missing required property 'operatingSystem'"); } - if ((!args || args.totalCpuLimit === undefined) && !opts.urn) { - throw new Error("Missing required property 'totalCpuLimit'"); - } - if ((!args || args.totalMemoryLimit === undefined) && !opts.urn) { - throw new Error("Missing required property 'totalMemoryLimit'"); - } - resourceInputs["containerDefinitions"] = args ? args.containerDefinitions : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["operatingSystem"] = args ? args.operatingSystem : undefined; - resourceInputs["schedulingStrategy"] = args ? args.schedulingStrategy : undefined; resourceInputs["sourceVersionNumber"] = args ? args.sourceVersionNumber : undefined; resourceInputs["supportContainerDefinitions"] = args ? args.supportContainerDefinitions : undefined; resourceInputs["tags"] = args ? args.tags : undefined; - resourceInputs["totalCpuLimit"] = args ? args.totalCpuLimit : undefined; - resourceInputs["totalMemoryLimit"] = args ? args.totalMemoryLimit : undefined; resourceInputs["containerGroupDefinitionArn"] = undefined /*out*/; resourceInputs["creationTime"] = undefined /*out*/; resourceInputs["status"] = undefined /*out*/; resourceInputs["statusReason"] = undefined /*out*/; } else { - resourceInputs["containerDefinitions"] = undefined /*out*/; resourceInputs["containerGroupDefinitionArn"] = undefined /*out*/; resourceInputs["creationTime"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; resourceInputs["operatingSystem"] = undefined /*out*/; - resourceInputs["schedulingStrategy"] = undefined /*out*/; resourceInputs["sourceVersionNumber"] = undefined /*out*/; resourceInputs["status"] = undefined /*out*/; resourceInputs["statusReason"] = undefined /*out*/; resourceInputs["supportContainerDefinitions"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; - resourceInputs["totalCpuLimit"] = undefined /*out*/; - resourceInputs["totalMemoryLimit"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["containerDefinitions[*]", "name", "operatingSystem", "schedulingStrategy", "totalCpuLimit", "totalMemoryLimit"] }; + const replaceOnChanges = { replaceOnChanges: ["name"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(ContainerGroupDefinition.__pulumiType, name, resourceInputs, opts); } @@ -152,10 +119,6 @@ export class ContainerGroupDefinition extends pulumi.CustomResource { * The set of arguments for constructing a ContainerGroupDefinition resource. */ export interface ContainerGroupDefinitionArgs { - /** - * A collection of container definitions that define the containers in this group. - */ - containerDefinitions: pulumi.Input[]>; /** * A descriptive label for the container group definition. */ @@ -164,10 +127,6 @@ export interface ContainerGroupDefinitionArgs { * The operating system of the container group */ operatingSystem: pulumi.Input; - /** - * Specifies whether the container group includes replica or daemon containers. - */ - schedulingStrategy?: pulumi.Input; /** * A specific ContainerGroupDefinition version to be updated */ @@ -180,12 +139,4 @@ export interface ContainerGroupDefinitionArgs { * An array of key-value pairs to apply to this resource. */ tags?: pulumi.Input[]>; - /** - * The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - */ - totalCpuLimit: pulumi.Input; - /** - * The maximum amount of memory (in MiB) to allocate for this container group. - */ - totalMemoryLimit: pulumi.Input; } diff --git a/sdk/nodejs/gamelift/fleet.ts b/sdk/nodejs/gamelift/fleet.ts index 479f24d4a4..add8609df8 100644 --- a/sdk/nodejs/gamelift/fleet.ts +++ b/sdk/nodejs/gamelift/fleet.ts @@ -57,14 +57,6 @@ export class Fleet extends pulumi.CustomResource { * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. */ public readonly computeType!: pulumi.Output; - /** - * *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - * - * Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - * - * *Used with:* `CreateFleet` - */ - public readonly containerGroupsConfiguration!: pulumi.Output; /** * A human-readable description of a fleet. */ @@ -178,7 +170,6 @@ export class Fleet extends pulumi.CustomResource { resourceInputs["buildId"] = args ? args.buildId : undefined; resourceInputs["certificateConfiguration"] = args ? args.certificateConfiguration : undefined; resourceInputs["computeType"] = args ? args.computeType : undefined; - resourceInputs["containerGroupsConfiguration"] = args ? args.containerGroupsConfiguration : undefined; resourceInputs["description"] = args ? args.description : undefined; resourceInputs["desiredEc2Instances"] = args ? args.desiredEc2Instances : undefined; resourceInputs["ec2InboundPermissions"] = args ? args.ec2InboundPermissions : undefined; @@ -208,7 +199,6 @@ export class Fleet extends pulumi.CustomResource { resourceInputs["buildId"] = undefined /*out*/; resourceInputs["certificateConfiguration"] = undefined /*out*/; resourceInputs["computeType"] = undefined /*out*/; - resourceInputs["containerGroupsConfiguration"] = undefined /*out*/; resourceInputs["description"] = undefined /*out*/; resourceInputs["desiredEc2Instances"] = undefined /*out*/; resourceInputs["ec2InboundPermissions"] = undefined /*out*/; @@ -234,7 +224,7 @@ export class Fleet extends pulumi.CustomResource { resourceInputs["serverLaunchPath"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["applyCapacity", "buildId", "certificateConfiguration", "computeType", "containerGroupsConfiguration", "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); } @@ -264,14 +254,6 @@ export interface FleetArgs { * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer. */ computeType?: pulumi.Input; - /** - * *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - * - * Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - * - * *Used with:* `CreateFleet` - */ - containerGroupsConfiguration?: pulumi.Input; /** * A human-readable description of a fleet. */ diff --git a/sdk/nodejs/gamelift/getContainerGroupDefinition.ts b/sdk/nodejs/gamelift/getContainerGroupDefinition.ts index 3587989c71..006ef3bdf2 100644 --- a/sdk/nodejs/gamelift/getContainerGroupDefinition.ts +++ b/sdk/nodejs/gamelift/getContainerGroupDefinition.ts @@ -33,6 +33,10 @@ export interface GetContainerGroupDefinitionResult { * A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example "1469498468.057"). */ readonly creationTime?: string; + /** + * The operating system of the container group + */ + readonly operatingSystem?: enums.gamelift.ContainerGroupDefinitionOperatingSystem; /** * A specific ContainerGroupDefinition version to be updated */ diff --git a/sdk/nodejs/iotwireless/deviceProfile.ts b/sdk/nodejs/iotwireless/deviceProfile.ts index 097a6a980a..41767eb776 100644 --- a/sdk/nodejs/iotwireless/deviceProfile.ts +++ b/sdk/nodejs/iotwireless/deviceProfile.ts @@ -82,6 +82,8 @@ export class DeviceProfile extends pulumi.CustomResource { resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["loRaWan", "name"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); super(DeviceProfile.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/iotwireless/getDeviceProfile.ts b/sdk/nodejs/iotwireless/getDeviceProfile.ts index 3233223bd6..2c61238c33 100644 --- a/sdk/nodejs/iotwireless/getDeviceProfile.ts +++ b/sdk/nodejs/iotwireless/getDeviceProfile.ts @@ -33,14 +33,6 @@ export interface GetDeviceProfileResult { * Service profile Id. Returned after successful create. */ readonly id?: string; - /** - * LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation - */ - readonly loRaWan?: outputs.iotwireless.DeviceProfileLoRaWanDeviceProfile; - /** - * Name of service profile - */ - readonly name?: string; /** * A list of key-value pairs that contain metadata for the device profile. */ diff --git a/sdk/nodejs/iotwireless/getNetworkAnalyzerConfiguration.ts b/sdk/nodejs/iotwireless/getNetworkAnalyzerConfiguration.ts index 9225501a34..f3015893b2 100644 --- a/sdk/nodejs/iotwireless/getNetworkAnalyzerConfiguration.ts +++ b/sdk/nodejs/iotwireless/getNetworkAnalyzerConfiguration.ts @@ -33,6 +33,10 @@ export interface GetNetworkAnalyzerConfigurationResult { * The description of the new resource */ readonly description?: string; + /** + * An array of key-value pairs to apply to this resource. + */ + readonly tags?: outputs.Tag[]; /** * Trace content for your wireless gateway and wireless device resources */ diff --git a/sdk/nodejs/iotwireless/getServiceProfile.ts b/sdk/nodejs/iotwireless/getServiceProfile.ts index 3da1c3d152..3dde5c6978 100644 --- a/sdk/nodejs/iotwireless/getServiceProfile.ts +++ b/sdk/nodejs/iotwireless/getServiceProfile.ts @@ -33,14 +33,6 @@ export interface GetServiceProfileResult { * Service profile Id. Returned after successful create. */ readonly id?: string; - /** - * LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation - */ - readonly loRaWan?: outputs.iotwireless.ServiceProfileLoRaWanServiceProfile; - /** - * Name of service profile - */ - readonly name?: string; /** * A list of key-value pairs that contain metadata for the service profile. */ diff --git a/sdk/nodejs/iotwireless/getWirelessDevice.ts b/sdk/nodejs/iotwireless/getWirelessDevice.ts index 5a8cb73695..85ec6a0cec 100644 --- a/sdk/nodejs/iotwireless/getWirelessDevice.ts +++ b/sdk/nodejs/iotwireless/getWirelessDevice.ts @@ -53,6 +53,10 @@ export interface GetWirelessDeviceResult { * Wireless device name */ readonly name?: string; + /** + * FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + */ + readonly positioning?: enums.iotwireless.WirelessDevicePositioning; /** * A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. */ diff --git a/sdk/nodejs/iotwireless/networkAnalyzerConfiguration.ts b/sdk/nodejs/iotwireless/networkAnalyzerConfiguration.ts index 17b2da75ee..50d93ffda6 100644 --- a/sdk/nodejs/iotwireless/networkAnalyzerConfiguration.ts +++ b/sdk/nodejs/iotwireless/networkAnalyzerConfiguration.ts @@ -52,7 +52,7 @@ export class NetworkAnalyzerConfiguration extends pulumi.CustomResource { /** * An array of key-value pairs to apply to this resource. */ - public readonly tags!: pulumi.Output; + public readonly tags!: pulumi.Output; /** * Trace content for your wireless gateway and wireless device resources */ @@ -94,7 +94,7 @@ export class NetworkAnalyzerConfiguration extends pulumi.CustomResource { resourceInputs["wirelessGateways"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); - const replaceOnChanges = { replaceOnChanges: ["name", "tags[*]"] }; + const replaceOnChanges = { replaceOnChanges: ["name"] }; opts = pulumi.mergeOptions(opts, replaceOnChanges); super(NetworkAnalyzerConfiguration.__pulumiType, name, resourceInputs, opts); } @@ -115,7 +115,7 @@ export interface NetworkAnalyzerConfigurationArgs { /** * An array of key-value pairs to apply to this resource. */ - tags?: pulumi.Input[]>; + tags?: pulumi.Input[]>; /** * Trace content for your wireless gateway and wireless device resources */ diff --git a/sdk/nodejs/iotwireless/serviceProfile.ts b/sdk/nodejs/iotwireless/serviceProfile.ts index 8d4e7ceb0b..cce7e508c3 100644 --- a/sdk/nodejs/iotwireless/serviceProfile.ts +++ b/sdk/nodejs/iotwireless/serviceProfile.ts @@ -82,6 +82,8 @@ export class ServiceProfile extends pulumi.CustomResource { resourceInputs["tags"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); + const replaceOnChanges = { replaceOnChanges: ["loRaWan", "name"] }; + opts = pulumi.mergeOptions(opts, replaceOnChanges); super(ServiceProfile.__pulumiType, name, resourceInputs, opts); } } diff --git a/sdk/nodejs/iotwireless/wirelessDevice.ts b/sdk/nodejs/iotwireless/wirelessDevice.ts index f9f2a3327a..46db96e3da 100644 --- a/sdk/nodejs/iotwireless/wirelessDevice.ts +++ b/sdk/nodejs/iotwireless/wirelessDevice.ts @@ -65,6 +65,10 @@ export class WirelessDevice extends pulumi.CustomResource { * Wireless device name */ public readonly name!: pulumi.Output; + /** + * FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + */ + public readonly positioning!: pulumi.Output; /** * A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. */ @@ -104,6 +108,7 @@ export class WirelessDevice extends pulumi.CustomResource { resourceInputs["lastUplinkReceivedAt"] = args ? args.lastUplinkReceivedAt : undefined; resourceInputs["loRaWan"] = args ? args.loRaWan : undefined; resourceInputs["name"] = args ? args.name : undefined; + resourceInputs["positioning"] = args ? args.positioning : undefined; resourceInputs["tags"] = args ? args.tags : undefined; resourceInputs["thingArn"] = args ? args.thingArn : undefined; resourceInputs["type"] = args ? args.type : undefined; @@ -118,6 +123,7 @@ export class WirelessDevice extends pulumi.CustomResource { resourceInputs["lastUplinkReceivedAt"] = undefined /*out*/; resourceInputs["loRaWan"] = undefined /*out*/; resourceInputs["name"] = undefined /*out*/; + resourceInputs["positioning"] = undefined /*out*/; resourceInputs["tags"] = undefined /*out*/; resourceInputs["thingArn"] = undefined /*out*/; resourceInputs["thingName"] = undefined /*out*/; @@ -152,6 +158,10 @@ export interface WirelessDeviceArgs { * Wireless device name */ name?: pulumi.Input; + /** + * FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + */ + positioning?: pulumi.Input; /** * A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. */ diff --git a/sdk/nodejs/lambda/function.ts b/sdk/nodejs/lambda/function.ts index f37ee6df0c..0edd37a843 100644 --- a/sdk/nodejs/lambda/function.ts +++ b/sdk/nodejs/lambda/function.ts @@ -9,9 +9,10 @@ import * as utilities from "../utilities"; /** * The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - * You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - * You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + * You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + * You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. * You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + * When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. * Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. * For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* * @@ -267,7 +268,10 @@ export class Function extends pulumi.CustomResource { */ public /*out*/ readonly arn!: pulumi.Output; /** - * The code for the function. + * The code for the function. You can define your function code in multiple ways: + * + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + * + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + * + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. */ public readonly code!: pulumi.Output; /** @@ -309,7 +313,7 @@ export class Function extends pulumi.CustomResource { */ public readonly imageConfig!: pulumi.Output; /** - * The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + * The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. */ public readonly kmsKeyArn!: pulumi.Output; /** @@ -330,10 +334,8 @@ export class Function extends pulumi.CustomResource { public readonly packageType!: pulumi.Output; /** * The status of your function's recursive loop detection configuration. - * - * When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - * - * When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + * When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + * When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. */ public readonly recursiveLoop!: pulumi.Output; /** @@ -361,6 +363,7 @@ export class Function extends pulumi.CustomResource { public /*out*/ readonly snapStartResponse!: pulumi.Output; /** * A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + * You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. */ public readonly tags!: pulumi.Output; /** @@ -467,7 +470,10 @@ export interface FunctionArgs { */ architectures?: pulumi.Input[]>; /** - * The code for the function. + * The code for the function. You can define your function code in multiple ways: + * + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + * + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + * + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. */ code: pulumi.Input; /** @@ -509,7 +515,7 @@ export interface FunctionArgs { */ imageConfig?: pulumi.Input; /** - * The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + * The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. */ kmsKeyArn?: pulumi.Input; /** @@ -530,10 +536,8 @@ export interface FunctionArgs { packageType?: pulumi.Input; /** * The status of your function's recursive loop detection configuration. - * - * When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - * - * When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + * When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + * When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. */ recursiveLoop?: pulumi.Input; /** @@ -560,6 +564,7 @@ export interface FunctionArgs { snapStart?: pulumi.Input; /** * A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + * You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. */ tags?: pulumi.Input[]>; /** diff --git a/sdk/nodejs/lambda/getFunction.ts b/sdk/nodejs/lambda/getFunction.ts index da05198b08..89fd2b8fa5 100644 --- a/sdk/nodejs/lambda/getFunction.ts +++ b/sdk/nodejs/lambda/getFunction.ts @@ -9,9 +9,10 @@ import * as utilities from "../utilities"; /** * The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - * You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - * You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + * You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + * You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. * You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + * When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. * Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. * For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* */ @@ -73,7 +74,7 @@ export interface GetFunctionResult { */ readonly imageConfig?: outputs.lambda.FunctionImageConfig; /** - * The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + * The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. */ readonly kmsKeyArn?: string; /** @@ -94,10 +95,8 @@ export interface GetFunctionResult { readonly packageType?: enums.lambda.FunctionPackageType; /** * The status of your function's recursive loop detection configuration. - * - * When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - * - * When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + * When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + * When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. */ readonly recursiveLoop?: enums.lambda.FunctionRecursiveLoop; /** @@ -121,6 +120,7 @@ export interface GetFunctionResult { readonly snapStartResponse?: outputs.lambda.FunctionSnapStartResponse; /** * A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + * You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. */ readonly tags?: outputs.Tag[]; /** @@ -138,9 +138,10 @@ export interface GetFunctionResult { } /** * The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - * You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - * You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + * You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + * You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. * You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + * When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. * Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. * For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* */ diff --git a/sdk/nodejs/location/placeIndex.ts b/sdk/nodejs/location/placeIndex.ts index c1336b9029..72e67dd52d 100644 --- a/sdk/nodejs/location/placeIndex.ts +++ b/sdk/nodejs/location/placeIndex.ts @@ -54,13 +54,13 @@ export class PlaceIndex extends pulumi.CustomResource { * * Valid values include: * - * - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - * - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - * - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + * - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + * - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + * - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . * * > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. * - * For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + * For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . */ public readonly dataSource!: pulumi.Output; /** @@ -156,13 +156,13 @@ export interface PlaceIndexArgs { * * Valid values include: * - * - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - * - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - * - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + * - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + * - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + * - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . * * > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. * - * For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + * For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . */ dataSource: pulumi.Input; /** diff --git a/sdk/nodejs/location/routeCalculator.ts b/sdk/nodejs/location/routeCalculator.ts index b4d5b71726..0cc6a6f73f 100644 --- a/sdk/nodejs/location/routeCalculator.ts +++ b/sdk/nodejs/location/routeCalculator.ts @@ -70,13 +70,13 @@ export class RouteCalculator extends pulumi.CustomResource { * * Valid values include: * - * - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + * - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . * * Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - * - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - * - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + * - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + * - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . * - * For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + * For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . */ public readonly dataSource!: pulumi.Output; /** @@ -160,13 +160,13 @@ export interface RouteCalculatorArgs { * * Valid values include: * - * - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + * - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . * * Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - * - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - * - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + * - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + * - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . * - * For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + * For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . */ dataSource: pulumi.Input; /** diff --git a/sdk/nodejs/types/enums/autoscaling/index.ts b/sdk/nodejs/types/enums/autoscaling/index.ts index 4384482e72..0b6a314052 100644 --- a/sdk/nodejs/types/enums/autoscaling/index.ts +++ b/sdk/nodejs/types/enums/autoscaling/index.ts @@ -7,4 +7,10 @@ export const AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStr BalancedOnly: "balanced-only", } as const; +/** + * If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + * + * - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + * - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + */ export type AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy = (typeof AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy)[keyof typeof AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy]; diff --git a/sdk/nodejs/types/enums/cleanrooms/index.ts b/sdk/nodejs/types/enums/cleanrooms/index.ts index 47b7a63f5c..3b4cf7fb3f 100644 --- a/sdk/nodejs/types/enums/cleanrooms/index.ts +++ b/sdk/nodejs/types/enums/cleanrooms/index.ts @@ -18,6 +18,19 @@ export const AnalysisTemplateAnalysisParameterType = { Time: "TIME", Timetz: "TIMETZ", Varbyte: "VARBYTE", + Binary: "BINARY", + Byte: "BYTE", + Character: "CHARACTER", + Double: "DOUBLE", + Float: "FLOAT", + Int: "INT", + Long: "LONG", + Numeric: "NUMERIC", + Short: "SHORT", + String: "STRING", + TimestampLtz: "TIMESTAMP_LTZ", + TimestampNtz: "TIMESTAMP_NTZ", + Tinyint: "TINYINT", } as const; /** @@ -34,6 +47,13 @@ export const AnalysisTemplateFormat = { */ export type AnalysisTemplateFormat = (typeof AnalysisTemplateFormat)[keyof typeof AnalysisTemplateFormat]; +export const CollaborationAnalyticsEngine = { + CleanRoomsSql: "CLEAN_ROOMS_SQL", + Spark: "SPARK", +} as const; + +export type CollaborationAnalyticsEngine = (typeof CollaborationAnalyticsEngine)[keyof typeof CollaborationAnalyticsEngine]; + export const CollaborationMemberAbility = { CanQuery: "CAN_QUERY", CanReceiveResults: "CAN_RECEIVE_RESULTS", diff --git a/sdk/nodejs/types/enums/codebuild/index.ts b/sdk/nodejs/types/enums/codebuild/index.ts index 53b3906099..4331b8d8f1 100644 --- a/sdk/nodejs/types/enums/codebuild/index.ts +++ b/sdk/nodejs/types/enums/codebuild/index.ts @@ -2,12 +2,20 @@ // *** Do not edit by hand unless you're certain you know what you are doing! *** +export const FleetComputeConfigurationmachineType = { + General: "GENERAL", + Nvme: "NVME", +} as const; + +export type FleetComputeConfigurationmachineType = (typeof FleetComputeConfigurationmachineType)[keyof typeof FleetComputeConfigurationmachineType]; + export const FleetComputeType = { BuildGeneral1Small: "BUILD_GENERAL1_SMALL", BuildGeneral1Medium: "BUILD_GENERAL1_MEDIUM", BuildGeneral1Large: "BUILD_GENERAL1_LARGE", BuildGeneral1Xlarge: "BUILD_GENERAL1_XLARGE", BuildGeneral12xlarge: "BUILD_GENERAL1_2XLARGE", + AttributeBasedCompute: "ATTRIBUTE_BASED_COMPUTE", } as const; /** @@ -80,3 +88,36 @@ export const FleetOverflowBehavior = { * > If you choose to set your overflow behavior to on-demand while creating a VPC-connected fleet, make sure that you add the required VPC permissions to your project service role. For more information, see [Example policy statement to allow CodeBuild access to AWS services required to create a VPC network interface](https://docs.aws.amazon.com/codebuild/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#customer-managed-policies-example-create-vpc-network-interface) . */ export type FleetOverflowBehavior = (typeof FleetOverflowBehavior)[keyof typeof FleetOverflowBehavior]; + +export const FleetProxyConfigurationDefaultBehavior = { + AllowAll: "ALLOW_ALL", + DenyAll: "DENY_ALL", +} as const; + +export type FleetProxyConfigurationDefaultBehavior = (typeof FleetProxyConfigurationDefaultBehavior)[keyof typeof FleetProxyConfigurationDefaultBehavior]; + +export const FleetProxyRuleEffect = { + Allow: "ALLOW", + Deny: "DENY", +} as const; + +export type FleetProxyRuleEffect = (typeof FleetProxyRuleEffect)[keyof typeof FleetProxyRuleEffect]; + +export const FleetProxyRuleType = { + Domain: "DOMAIN", + Ip: "IP", +} as const; + +export type FleetProxyRuleType = (typeof FleetProxyRuleType)[keyof typeof FleetProxyRuleType]; + +export const FleetScalingConfigurationInputScalingType = { + TargetTrackingScaling: "TARGET_TRACKING_SCALING", +} as const; + +export type FleetScalingConfigurationInputScalingType = (typeof FleetScalingConfigurationInputScalingType)[keyof typeof FleetScalingConfigurationInputScalingType]; + +export const FleetTargetTrackingScalingConfigurationMetricType = { + FleetUtilizationRate: "FLEET_UTILIZATION_RATE", +} as const; + +export type FleetTargetTrackingScalingConfigurationMetricType = (typeof FleetTargetTrackingScalingConfigurationMetricType)[keyof typeof FleetTargetTrackingScalingConfigurationMetricType]; diff --git a/sdk/nodejs/types/enums/ecs/index.ts b/sdk/nodejs/types/enums/ecs/index.ts index 96300fc126..80ef1de57d 100644 --- a/sdk/nodejs/types/enums/ecs/index.ts +++ b/sdk/nodejs/types/enums/ecs/index.ts @@ -58,6 +58,13 @@ export const ClusterCapacityProviderAssociationsCapacityProvider0 = { */ export type ClusterCapacityProviderAssociationsCapacityProvider0 = (typeof ClusterCapacityProviderAssociationsCapacityProvider0)[keyof typeof ClusterCapacityProviderAssociationsCapacityProvider0]; +export const ServiceAvailabilityZoneRebalancing = { + Enabled: "ENABLED", + Disabled: "DISABLED", +} as const; + +export type ServiceAvailabilityZoneRebalancing = (typeof ServiceAvailabilityZoneRebalancing)[keyof typeof ServiceAvailabilityZoneRebalancing]; + export const ServiceAwsVpcConfigurationAssignPublicIp = { Disabled: "DISABLED", Enabled: "ENABLED", diff --git a/sdk/nodejs/types/enums/gamelift/index.ts b/sdk/nodejs/types/enums/gamelift/index.ts index 1bd7bfe8ed..b1fa613267 100644 --- a/sdk/nodejs/types/enums/gamelift/index.ts +++ b/sdk/nodejs/types/enums/gamelift/index.ts @@ -25,28 +25,6 @@ export const BuildOperatingSystem = { */ export type BuildOperatingSystem = (typeof BuildOperatingSystem)[keyof typeof BuildOperatingSystem]; -export const ContainerGroupDefinitionContainerDependencyCondition = { - Start: "START", - Complete: "COMPLETE", - Success: "SUCCESS", - Healthy: "HEALTHY", -} as const; - -/** - * The type of dependency. - */ -export type ContainerGroupDefinitionContainerDependencyCondition = (typeof ContainerGroupDefinitionContainerDependencyCondition)[keyof typeof ContainerGroupDefinitionContainerDependencyCondition]; - -export const ContainerGroupDefinitionContainerPortRangeProtocol = { - Tcp: "TCP", - Udp: "UDP", -} as const; - -/** - * Defines the protocol of these ports. - */ -export type ContainerGroupDefinitionContainerPortRangeProtocol = (typeof ContainerGroupDefinitionContainerPortRangeProtocol)[keyof typeof ContainerGroupDefinitionContainerPortRangeProtocol]; - export const ContainerGroupDefinitionOperatingSystem = { AmazonLinux2023: "AMAZON_LINUX_2023", } as const; @@ -56,16 +34,6 @@ export const ContainerGroupDefinitionOperatingSystem = { */ export type ContainerGroupDefinitionOperatingSystem = (typeof ContainerGroupDefinitionOperatingSystem)[keyof typeof ContainerGroupDefinitionOperatingSystem]; -export const ContainerGroupDefinitionSchedulingStrategy = { - Replica: "REPLICA", - Daemon: "DAEMON", -} as const; - -/** - * Specifies whether the container group includes replica or daemon containers. - */ -export type ContainerGroupDefinitionSchedulingStrategy = (typeof ContainerGroupDefinitionSchedulingStrategy)[keyof typeof ContainerGroupDefinitionSchedulingStrategy]; - export const ContainerGroupDefinitionStatus = { Ready: "READY", Copying: "COPYING", @@ -105,7 +73,6 @@ export type FleetCertificateConfigurationCertificateType = (typeof FleetCertific export const FleetComputeType = { Ec2: "EC2", Anywhere: "ANYWHERE", - Container: "CONTAINER", } as const; /** diff --git a/sdk/nodejs/types/enums/iotwireless/index.ts b/sdk/nodejs/types/enums/iotwireless/index.ts index 623b941db3..4bb21a6b21 100644 --- a/sdk/nodejs/types/enums/iotwireless/index.ts +++ b/sdk/nodejs/types/enums/iotwireless/index.ts @@ -37,6 +37,28 @@ export const TaskDefinitionType = { */ export type TaskDefinitionType = (typeof TaskDefinitionType)[keyof typeof TaskDefinitionType]; +export const WirelessDeviceApplicationType = { + SemtechGeolocation: "SemtechGeolocation", + SemtechGnss: "SemtechGNSS", + SemtechGnssng: "SemtechGNSSNG", + SemtechWiFi: "SemtechWiFi", +} as const; + +/** + * Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + */ +export type WirelessDeviceApplicationType = (typeof WirelessDeviceApplicationType)[keyof typeof WirelessDeviceApplicationType]; + +export const WirelessDevicePositioning = { + Enabled: "Enabled", + Disabled: "Disabled", +} as const; + +/** + * FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + */ +export type WirelessDevicePositioning = (typeof WirelessDevicePositioning)[keyof typeof WirelessDevicePositioning]; + export const WirelessDeviceType = { Sidewalk: "Sidewalk", LoRaWan: "LoRaWAN", diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 53aa5ecc51..ba0e972fae 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -6385,6 +6385,12 @@ export namespace autoscaling { } export interface AutoScalingGroupAvailabilityZoneDistributionArgs { + /** + * If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + * + * - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + * - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + */ capacityDistributionStrategy?: pulumi.Input; } @@ -13968,6 +13974,35 @@ export namespace codeartifact { } export namespace codebuild { + export interface FleetComputeConfigurationArgs { + disk?: pulumi.Input; + machineType?: pulumi.Input; + memory?: pulumi.Input; + vCpu?: pulumi.Input; + } + + export interface FleetProxyConfigurationArgs { + defaultBehavior?: pulumi.Input; + orderedProxyRules?: pulumi.Input[]>; + } + + export interface FleetProxyRuleArgs { + effect?: pulumi.Input; + entities?: pulumi.Input[]>; + type?: pulumi.Input; + } + + export interface FleetScalingConfigurationInputArgs { + maxCapacity?: pulumi.Input; + scalingType?: pulumi.Input; + targetTrackingScalingConfigs?: pulumi.Input[]>; + } + + export interface FleetTargetTrackingScalingConfigurationArgs { + metricType?: pulumi.Input; + targetValue?: pulumi.Input; + } + export interface FleetVpcConfigArgs { /** * A list of one or more security groups IDs in your Amazon VPC. @@ -19583,7 +19618,7 @@ export namespace dynamodb { */ projection: pulumi.Input; /** - * Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + * Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . */ writeOnDemandThroughputSettings?: pulumi.Input; /** @@ -19697,7 +19732,7 @@ export namespace dynamodb { */ indexName: pulumi.Input; /** - * Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + * Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . */ readOnDemandThroughputSettings?: pulumi.Input; /** @@ -24591,7 +24626,7 @@ export namespace ecs { } /** - * Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + * Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. */ export interface ServiceDeploymentConfigurationArgs { /** @@ -24678,7 +24713,7 @@ export namespace ecs { */ containerPort?: pulumi.Input; /** - * The name of the load balancer to associate with the service or task set. + * The name of the load balancer to associate with the Amazon ECS service or task set. * If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. */ loadBalancerName?: pulumi.Input; @@ -24940,6 +24975,12 @@ export namespace ecs { name: pulumi.Input; } + export interface ServiceVpcLatticeConfigurationArgs { + portName: pulumi.Input; + roleArn: pulumi.Input; + targetGroupArn: pulumi.Input; + } + /** * The authorization configuration details for the Amazon EFS file system. */ @@ -29916,160 +29957,6 @@ export namespace gamelift { roleArn: pulumi.Input; } - /** - * Details about a container that is used in a container fleet - */ - export interface ContainerGroupDefinitionContainerDefinitionArgs { - /** - * The command that's passed to the container. - */ - command?: pulumi.Input[]>; - /** - * A descriptive label for the container definition. Container definition names must be unique with a container group definition. - */ - containerName: pulumi.Input; - /** - * The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - */ - cpu?: pulumi.Input; - /** - * A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - */ - dependsOn?: pulumi.Input[]>; - /** - * The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - */ - entryPoint?: pulumi.Input[]>; - /** - * The environment variables to pass to a container. - */ - environment?: pulumi.Input[]>; - /** - * Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - */ - essential?: pulumi.Input; - /** - * Specifies how the health of the containers will be checked. - */ - healthCheck?: pulumi.Input; - /** - * Specifies the image URI of this container. - */ - imageUri: pulumi.Input; - /** - * Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - */ - memoryLimits?: pulumi.Input; - /** - * Defines the ports on the container. - */ - portConfiguration?: pulumi.Input; - /** - * The digest of the container image. - */ - resolvedImageDigest?: pulumi.Input; - /** - * The working directory to run commands inside the container in. - */ - workingDirectory?: pulumi.Input; - } - - /** - * A dependency that impacts a container's startup and shutdown. - */ - export interface ContainerGroupDefinitionContainerDependencyArgs { - /** - * The type of dependency. - */ - condition: pulumi.Input; - /** - * A descriptive label for the container definition. The container being defined depends on this container's condition. - */ - containerName: pulumi.Input; - } - - /** - * An environment variable to set inside a container, in the form of a key-value pair. - */ - export interface ContainerGroupDefinitionContainerEnvironmentArgs { - /** - * The environment variable name. - */ - name: pulumi.Input; - /** - * The environment variable value. - */ - value: pulumi.Input; - } - - /** - * Specifies how the process manager checks the health of containers. - */ - export interface ContainerGroupDefinitionContainerHealthCheckArgs { - /** - * A string array representing the command that the container runs to determine if it is healthy. - */ - command: pulumi.Input[]>; - /** - * How often (in seconds) the health is checked. - */ - interval?: pulumi.Input; - /** - * How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - */ - retries?: pulumi.Input; - /** - * The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - */ - startPeriod?: pulumi.Input; - /** - * How many seconds the process manager allows the command to run before canceling it. - */ - timeout?: pulumi.Input; - } - - /** - * A set of one or more port numbers that can be opened on the container. - */ - export interface ContainerGroupDefinitionContainerPortRangeArgs { - /** - * A starting value for the range of allowed port numbers. - */ - fromPort: pulumi.Input; - /** - * Defines the protocol of these ports. - */ - protocol: pulumi.Input; - /** - * An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - */ - toPort: pulumi.Input; - } - - /** - * Specifies how much memory is available to the container. - */ - export interface ContainerGroupDefinitionMemoryLimitsArgs { - /** - * The hard limit of memory to reserve for the container. - */ - hardLimit?: pulumi.Input; - /** - * The amount of memory that is reserved for the container. - */ - softLimit?: pulumi.Input; - } - - /** - * Defines the ports on a container. - */ - export interface ContainerGroupDefinitionPortConfigurationArgs { - /** - * Specifies one or more ranges of ports on a container. - */ - containerPortRanges: pulumi.Input[]>; - } - /** * Configuration for Anywhere fleet. */ @@ -30095,57 +29982,6 @@ export namespace gamelift { certificateType: pulumi.Input; } - /** - * Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. - */ - export interface FleetConnectionPortRangeArgs { - /** - * A starting value for a range of allowed port numbers. - */ - fromPort: pulumi.Input; - /** - * An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - */ - toPort: pulumi.Input; - } - - /** - * Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. - */ - export interface FleetContainerGroupsConfigurationArgs { - /** - * A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - * - * Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - * - * *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - * - * As a best practice, double the minimum number of connection ports. - * - * > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - */ - connectionPortRange: pulumi.Input; - /** - * The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - */ - containerGroupDefinitionNames: pulumi.Input[]>; - containerGroupsPerInstance?: pulumi.Input; - } - - /** - * The number of container groups per instance. - */ - export interface FleetContainerGroupsPerInstanceArgs { - /** - * Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - */ - desiredReplicaContainerGroupsPerInstance?: pulumi.Input; - /** - * GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - */ - maxReplicaContainerGroupsPerInstance?: pulumi.Input; - } - /** * 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. */ @@ -37756,6 +37592,31 @@ export namespace iotwireless { sessionKeys: pulumi.Input; } + /** + * LoRaWAN application configuration, which can be used to perform geolocation. + */ + export interface WirelessDeviceApplicationArgs { + /** + * The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + */ + destinationName?: pulumi.Input; + /** + * The Fport value. + */ + fPort?: pulumi.Input; + /** + * Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + */ + type?: pulumi.Input; + } + + export interface WirelessDeviceFPortsArgs { + /** + * A list of optional LoRaWAN application information, which can be used for geolocation. + */ + applications?: pulumi.Input[]>; + } + export interface WirelessDeviceLoRaWanDeviceArgs { /** * ABP device object for LoRaWAN specification v1.0.x. @@ -37773,6 +37634,10 @@ export namespace iotwireless { * The ID of the device profile for the new wireless device. */ deviceProfileId?: pulumi.Input; + /** + * List of FPort assigned for different LoRaWAN application packages to use. + */ + fPorts?: pulumi.Input; /** * OTAA device object for create APIs for v1.0.x */ @@ -41649,6 +41514,7 @@ export namespace lambda { export interface FunctionEnvironmentArgs { /** * Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + * If the value of the environment variable is a time or a duration, enclose the value in quotes. */ variables?: pulumi.Input<{[key: string]: pulumi.Input}>; } @@ -43972,7 +43838,7 @@ export namespace location { /** * Specifies the map style selected from an available data provider. * - * Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + * Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : * * - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. * - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -43981,7 +43847,7 @@ export namespace location { * - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. * - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. * - * Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + * Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : * * - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. * @@ -43993,14 +43859,14 @@ export namespace location { * * > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. * - * Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + * Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : * * - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. * - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. * - * > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + * > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . * - * Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + * Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : * * - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. * - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. @@ -69012,9 +68878,18 @@ export namespace quicksight { } export interface DataSourceOAuthParametersArgs { + /** + * The resource uri of the identity provider. + */ identityProviderResourceUri?: pulumi.Input; identityProviderVpcConnectionProperties?: pulumi.Input; + /** + * The OAuth scope. + */ oAuthScope?: pulumi.Input; + /** + * The token endpoint URL of the identity provider. + */ tokenProviderUrl: pulumi.Input; } @@ -69279,16 +69154,25 @@ export namespace quicksight { *

The parameters for Snowflake.

*/ export interface DataSourceSnowflakeParametersArgs { + /** + * The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + */ authenticationType?: pulumi.Input; /** *

Database.

*/ database: pulumi.Input; + /** + * The database access control role. + */ databaseAccessControlRole?: pulumi.Input; /** *

Host.

*/ host: pulumi.Input; + /** + * An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. + */ oAuthParameters?: pulumi.Input; /** *

Warehouse.

@@ -69343,16 +69227,25 @@ export namespace quicksight { *

The parameters that are required to connect to a Starburst data source.

*/ export interface DataSourceStarburstParametersArgs { + /** + * The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + */ authenticationType?: pulumi.Input; /** *

The catalog name for the Starburst data source.

*/ catalog: pulumi.Input; + /** + * The database access control role. + */ databaseAccessControlRole?: pulumi.Input; /** *

The host name of the Starburst data source.

*/ host: pulumi.Input; + /** + * An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. + */ oAuthParameters?: pulumi.Input; /** *

The port for the Starburst data source.

diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index 1938fffd57..29681b8284 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -6326,6 +6326,12 @@ export namespace autoscaling { } export interface AutoScalingGroupAvailabilityZoneDistribution { + /** + * If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + * + * - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + * - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + */ capacityDistributionStrategy?: enums.autoscaling.AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy; } @@ -14585,6 +14591,35 @@ export namespace codeartifact { } export namespace codebuild { + export interface FleetComputeConfiguration { + disk?: number; + machineType?: enums.codebuild.FleetComputeConfigurationmachineType; + memory?: number; + vCpu?: number; + } + + export interface FleetProxyConfiguration { + defaultBehavior?: enums.codebuild.FleetProxyConfigurationDefaultBehavior; + orderedProxyRules?: outputs.codebuild.FleetProxyRule[]; + } + + export interface FleetProxyRule { + effect?: enums.codebuild.FleetProxyRuleEffect; + entities?: string[]; + type?: enums.codebuild.FleetProxyRuleType; + } + + export interface FleetScalingConfigurationInput { + maxCapacity?: number; + scalingType?: enums.codebuild.FleetScalingConfigurationInputScalingType; + targetTrackingScalingConfigs?: outputs.codebuild.FleetTargetTrackingScalingConfiguration[]; + } + + export interface FleetTargetTrackingScalingConfiguration { + metricType?: enums.codebuild.FleetTargetTrackingScalingConfigurationMetricType; + targetValue?: number; + } + export interface FleetVpcConfig { /** * A list of one or more security groups IDs in your Amazon VPC. @@ -20382,7 +20417,7 @@ export namespace dynamodb { */ projection: outputs.dynamodb.GlobalTableProjection; /** - * Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + * Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . */ writeOnDemandThroughputSettings?: outputs.dynamodb.GlobalTableWriteOnDemandThroughputSettings; /** @@ -20496,7 +20531,7 @@ export namespace dynamodb { */ indexName: string; /** - * Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + * Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . */ readOnDemandThroughputSettings?: outputs.dynamodb.GlobalTableReadOnDemandThroughputSettings; /** @@ -25947,7 +25982,7 @@ export namespace ecs { } /** - * Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + * Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. */ export interface ServiceDeploymentConfiguration { /** @@ -26034,7 +26069,7 @@ export namespace ecs { */ containerPort?: number; /** - * The name of the load balancer to associate with the service or task set. + * The name of the load balancer to associate with the Amazon ECS service or task set. * If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. */ loadBalancerName?: string; @@ -26296,6 +26331,12 @@ export namespace ecs { name: string; } + export interface ServiceVpcLatticeConfiguration { + portName: string; + roleArn: string; + targetGroupArn: string; + } + /** * The authorization configuration details for the Amazon EFS file system. */ @@ -31296,160 +31337,6 @@ export namespace gamelift { roleArn: string; } - /** - * Details about a container that is used in a container fleet - */ - export interface ContainerGroupDefinitionContainerDefinition { - /** - * The command that's passed to the container. - */ - command?: string[]; - /** - * A descriptive label for the container definition. Container definition names must be unique with a container group definition. - */ - containerName: string; - /** - * The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - */ - cpu?: number; - /** - * A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - */ - dependsOn?: outputs.gamelift.ContainerGroupDefinitionContainerDependency[]; - /** - * The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - */ - entryPoint?: string[]; - /** - * The environment variables to pass to a container. - */ - environment?: outputs.gamelift.ContainerGroupDefinitionContainerEnvironment[]; - /** - * Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - */ - essential?: boolean; - /** - * Specifies how the health of the containers will be checked. - */ - healthCheck?: outputs.gamelift.ContainerGroupDefinitionContainerHealthCheck; - /** - * Specifies the image URI of this container. - */ - imageUri: string; - /** - * Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - */ - memoryLimits?: outputs.gamelift.ContainerGroupDefinitionMemoryLimits; - /** - * Defines the ports on the container. - */ - portConfiguration?: outputs.gamelift.ContainerGroupDefinitionPortConfiguration; - /** - * The digest of the container image. - */ - resolvedImageDigest?: string; - /** - * The working directory to run commands inside the container in. - */ - workingDirectory?: string; - } - - /** - * A dependency that impacts a container's startup and shutdown. - */ - export interface ContainerGroupDefinitionContainerDependency { - /** - * The type of dependency. - */ - condition: enums.gamelift.ContainerGroupDefinitionContainerDependencyCondition; - /** - * A descriptive label for the container definition. The container being defined depends on this container's condition. - */ - containerName: string; - } - - /** - * An environment variable to set inside a container, in the form of a key-value pair. - */ - export interface ContainerGroupDefinitionContainerEnvironment { - /** - * The environment variable name. - */ - name: string; - /** - * The environment variable value. - */ - value: string; - } - - /** - * Specifies how the process manager checks the health of containers. - */ - export interface ContainerGroupDefinitionContainerHealthCheck { - /** - * A string array representing the command that the container runs to determine if it is healthy. - */ - command: string[]; - /** - * How often (in seconds) the health is checked. - */ - interval?: number; - /** - * How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - */ - retries?: number; - /** - * The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - */ - startPeriod?: number; - /** - * How many seconds the process manager allows the command to run before canceling it. - */ - timeout?: number; - } - - /** - * A set of one or more port numbers that can be opened on the container. - */ - export interface ContainerGroupDefinitionContainerPortRange { - /** - * A starting value for the range of allowed port numbers. - */ - fromPort: number; - /** - * Defines the protocol of these ports. - */ - protocol: enums.gamelift.ContainerGroupDefinitionContainerPortRangeProtocol; - /** - * An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - */ - toPort: number; - } - - /** - * Specifies how much memory is available to the container. - */ - export interface ContainerGroupDefinitionMemoryLimits { - /** - * The hard limit of memory to reserve for the container. - */ - hardLimit?: number; - /** - * The amount of memory that is reserved for the container. - */ - softLimit?: number; - } - - /** - * Defines the ports on a container. - */ - export interface ContainerGroupDefinitionPortConfiguration { - /** - * Specifies one or more ranges of ports on a container. - */ - containerPortRanges: outputs.gamelift.ContainerGroupDefinitionContainerPortRange[]; - } - /** * Configuration for Anywhere fleet. */ @@ -31475,57 +31362,6 @@ export namespace gamelift { certificateType: enums.gamelift.FleetCertificateConfigurationCertificateType; } - /** - * Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. - */ - export interface FleetConnectionPortRange { - /** - * A starting value for a range of allowed port numbers. - */ - fromPort: number; - /** - * An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - */ - toPort: number; - } - - /** - * Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. - */ - export interface FleetContainerGroupsConfiguration { - /** - * A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - * - * Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - * - * *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - * - * As a best practice, double the minimum number of connection ports. - * - * > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - */ - connectionPortRange: outputs.gamelift.FleetConnectionPortRange; - /** - * The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - */ - containerGroupDefinitionNames: string[]; - containerGroupsPerInstance?: outputs.gamelift.FleetContainerGroupsPerInstance; - } - - /** - * The number of container groups per instance. - */ - export interface FleetContainerGroupsPerInstance { - /** - * Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - */ - desiredReplicaContainerGroupsPerInstance?: number; - /** - * GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - */ - maxReplicaContainerGroupsPerInstance?: number; - } - /** * 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. */ @@ -39204,6 +39040,31 @@ export namespace iotwireless { sessionKeys: outputs.iotwireless.WirelessDeviceSessionKeysAbpV11; } + /** + * LoRaWAN application configuration, which can be used to perform geolocation. + */ + export interface WirelessDeviceApplication { + /** + * The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + */ + destinationName?: string; + /** + * The Fport value. + */ + fPort?: number; + /** + * Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + */ + type?: enums.iotwireless.WirelessDeviceApplicationType; + } + + export interface WirelessDeviceFPorts { + /** + * A list of optional LoRaWAN application information, which can be used for geolocation. + */ + applications?: outputs.iotwireless.WirelessDeviceApplication[]; + } + export interface WirelessDeviceLoRaWanDevice { /** * ABP device object for LoRaWAN specification v1.0.x. @@ -39221,6 +39082,10 @@ export namespace iotwireless { * The ID of the device profile for the new wireless device. */ deviceProfileId?: string; + /** + * List of FPort assigned for different LoRaWAN application packages to use. + */ + fPorts?: outputs.iotwireless.WirelessDeviceFPorts; /** * OTAA device object for create APIs for v1.0.x */ @@ -43116,6 +42981,7 @@ export namespace lambda { export interface FunctionEnvironment { /** * Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + * If the value of the environment variable is a time or a duration, enclose the value in quotes. */ variables?: {[key: string]: string}; } @@ -45456,7 +45322,7 @@ export namespace location { /** * Specifies the map style selected from an available data provider. * - * Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + * Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : * * - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. * - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -45465,7 +45331,7 @@ export namespace location { * - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. * - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. * - * Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + * Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : * * - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. * @@ -45477,14 +45343,14 @@ export namespace location { * * > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. * - * Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + * Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : * * - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. * - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. * - * > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + * > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . * - * Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + * Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : * * - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. * - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. @@ -70901,9 +70767,18 @@ export namespace quicksight { } export interface DataSourceOAuthParameters { + /** + * The resource uri of the identity provider. + */ identityProviderResourceUri?: string; identityProviderVpcConnectionProperties?: outputs.quicksight.DataSourceVpcConnectionProperties; + /** + * The OAuth scope. + */ oAuthScope?: string; + /** + * The token endpoint URL of the identity provider. + */ tokenProviderUrl: string; } @@ -71168,16 +71043,25 @@ export namespace quicksight { *

The parameters for Snowflake.

*/ export interface DataSourceSnowflakeParameters { + /** + * The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + */ authenticationType?: enums.quicksight.DataSourceAuthenticationType; /** *

Database.

*/ database: string; + /** + * The database access control role. + */ databaseAccessControlRole?: string; /** *

Host.

*/ host: string; + /** + * An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. + */ oAuthParameters?: outputs.quicksight.DataSourceOAuthParameters; /** *

Warehouse.

@@ -71232,16 +71116,25 @@ export namespace quicksight { *

The parameters that are required to connect to a Starburst data source.

*/ export interface DataSourceStarburstParameters { + /** + * The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + */ authenticationType?: enums.quicksight.DataSourceAuthenticationType; /** *

The catalog name for the Starburst data source.

*/ catalog: string; + /** + * The database access control role. + */ databaseAccessControlRole?: string; /** *

The host name of the Starburst data source.

*/ host: string; + /** + * An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. + */ oAuthParameters?: outputs.quicksight.DataSourceOAuthParameters; /** *

The port for the Starburst data source.

diff --git a/sdk/python/pulumi_aws_native/applicationinsights/application.py b/sdk/python/pulumi_aws_native/applicationinsights/application.py index 5a3e69a893..bb8e1d2937 100644 --- a/sdk/python/pulumi_aws_native/applicationinsights/application.py +++ b/sdk/python/pulumi_aws_native/applicationinsights/application.py @@ -34,6 +34,7 @@ def __init__(__self__, *, log_pattern_sets: Optional[pulumi.Input[Sequence[pulumi.Input['ApplicationLogPatternSetArgs']]]] = None, ops_center_enabled: Optional[pulumi.Input[bool]] = None, ops_item_sns_topic_arn: Optional[pulumi.Input[str]] = None, + sns_notification_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): """ The set of arguments for constructing a Application resource. @@ -47,6 +48,7 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input['ApplicationLogPatternSetArgs']]] log_pattern_sets: The log pattern sets. :param pulumi.Input[bool] ops_center_enabled: When set to true, creates opsItems for any problems detected on an application. :param pulumi.Input[str] ops_item_sns_topic_arn: The SNS topic provided to Application Insights that is associated to the created opsItem. + :param pulumi.Input[str] sns_notification_arn: Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: The tags of Application Insights application. """ pulumi.set(__self__, "resource_group_name", resource_group_name) @@ -68,6 +70,8 @@ def __init__(__self__, *, pulumi.set(__self__, "ops_center_enabled", ops_center_enabled) if ops_item_sns_topic_arn is not None: pulumi.set(__self__, "ops_item_sns_topic_arn", ops_item_sns_topic_arn) + if sns_notification_arn is not None: + pulumi.set(__self__, "sns_notification_arn", sns_notification_arn) if tags is not None: pulumi.set(__self__, "tags", tags) @@ -191,6 +195,18 @@ def ops_item_sns_topic_arn(self) -> Optional[pulumi.Input[str]]: def ops_item_sns_topic_arn(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "ops_item_sns_topic_arn", value) + @property + @pulumi.getter(name="snsNotificationArn") + def sns_notification_arn(self) -> Optional[pulumi.Input[str]]: + """ + Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + """ + return pulumi.get(self, "sns_notification_arn") + + @sns_notification_arn.setter + def sns_notification_arn(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "sns_notification_arn", value) + @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: @@ -219,6 +235,7 @@ def __init__(__self__, ops_center_enabled: Optional[pulumi.Input[bool]] = None, ops_item_sns_topic_arn: Optional[pulumi.Input[str]] = None, resource_group_name: Optional[pulumi.Input[str]] = None, + sns_notification_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, __props__=None): """ @@ -236,6 +253,7 @@ def __init__(__self__, :param pulumi.Input[bool] ops_center_enabled: When set to true, creates opsItems for any problems detected on an application. :param pulumi.Input[str] ops_item_sns_topic_arn: The SNS topic provided to Application Insights that is associated to the created opsItem. :param pulumi.Input[str] resource_group_name: The name of the resource group. + :param pulumi.Input[str] sns_notification_arn: Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: The tags of Application Insights application. """ ... @@ -272,6 +290,7 @@ def _internal_init(__self__, ops_center_enabled: Optional[pulumi.Input[bool]] = None, ops_item_sns_topic_arn: Optional[pulumi.Input[str]] = None, resource_group_name: Optional[pulumi.Input[str]] = None, + sns_notification_arn: Optional[pulumi.Input[str]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -294,6 +313,7 @@ def _internal_init(__self__, if resource_group_name is None and not opts.urn: raise TypeError("Missing required property 'resource_group_name'") __props__.__dict__["resource_group_name"] = resource_group_name + __props__.__dict__["sns_notification_arn"] = sns_notification_arn __props__.__dict__["tags"] = tags __props__.__dict__["application_arn"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["groupingType", "resourceGroupName"]) @@ -331,6 +351,7 @@ def get(resource_name: str, __props__.__dict__["ops_center_enabled"] = None __props__.__dict__["ops_item_sns_topic_arn"] = None __props__.__dict__["resource_group_name"] = None + __props__.__dict__["sns_notification_arn"] = None __props__.__dict__["tags"] = None return Application(resource_name, opts=opts, __props__=__props__) @@ -422,6 +443,14 @@ def resource_group_name(self) -> pulumi.Output[str]: """ return pulumi.get(self, "resource_group_name") + @property + @pulumi.getter(name="snsNotificationArn") + def sns_notification_arn(self) -> pulumi.Output[Optional[str]]: + """ + Application Insights sends notifications to this SNS topic whenever there is a problem update in the associated application. + """ + return pulumi.get(self, "sns_notification_arn") + @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: diff --git a/sdk/python/pulumi_aws_native/autoscaling/_enums.py b/sdk/python/pulumi_aws_native/autoscaling/_enums.py index f25535da21..797a9d0788 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/_enums.py +++ b/sdk/python/pulumi_aws_native/autoscaling/_enums.py @@ -10,5 +10,11 @@ class AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy(str, Enum): + """ + If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + + - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + """ BALANCED_BEST_EFFORT = "balanced-best-effort" BALANCED_ONLY = "balanced-only" diff --git a/sdk/python/pulumi_aws_native/autoscaling/_inputs.py b/sdk/python/pulumi_aws_native/autoscaling/_inputs.py index 2a226c894d..fa1b33cb03 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/_inputs.py +++ b/sdk/python/pulumi_aws_native/autoscaling/_inputs.py @@ -223,6 +223,12 @@ def min(self, value: Optional[pulumi.Input[int]]): if not MYPY: class AutoScalingGroupAvailabilityZoneDistributionArgsDict(TypedDict): capacity_distribution_strategy: NotRequired[pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy']] + """ + If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + + - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + """ elif False: AutoScalingGroupAvailabilityZoneDistributionArgsDict: TypeAlias = Mapping[str, Any] @@ -230,12 +236,24 @@ class AutoScalingGroupAvailabilityZoneDistributionArgsDict(TypedDict): class AutoScalingGroupAvailabilityZoneDistributionArgs: def __init__(__self__, *, capacity_distribution_strategy: Optional[pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy']] = None): + """ + :param pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy'] capacity_distribution_strategy: If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + + - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + """ if capacity_distribution_strategy is not None: pulumi.set(__self__, "capacity_distribution_strategy", capacity_distribution_strategy) @property @pulumi.getter(name="capacityDistributionStrategy") def capacity_distribution_strategy(self) -> Optional[pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy']]: + """ + If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + + - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + """ return pulumi.get(self, "capacity_distribution_strategy") @capacity_distribution_strategy.setter diff --git a/sdk/python/pulumi_aws_native/autoscaling/auto_scaling_group.py b/sdk/python/pulumi_aws_native/autoscaling/auto_scaling_group.py index 68d57c4d2b..afe4f6bbc5 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/auto_scaling_group.py +++ b/sdk/python/pulumi_aws_native/autoscaling/auto_scaling_group.py @@ -62,6 +62,7 @@ def __init__(__self__, *, :param pulumi.Input[str] auto_scaling_group_name: The name of the Auto Scaling group. This name must be unique per Region per account. The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters. You cannot use a colon (:) in the name. + :param pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionArgs'] availability_zone_distribution: The instance capacity distribution across Availability Zones. :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. :param pulumi.Input[bool] capacity_rebalance: Indicates whether Capacity Rebalancing is enabled. Otherwise, Capacity Rebalancing is disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. For more information, see [Use Capacity Rebalancing to handle Amazon EC2 Spot Interruptions](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html) in the in the *Amazon EC2 Auto Scaling User Guide*. :param pulumi.Input[str] context: Reserved. @@ -217,6 +218,9 @@ def auto_scaling_group_name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="availabilityZoneDistribution") def availability_zone_distribution(self) -> Optional[pulumi.Input['AutoScalingGroupAvailabilityZoneDistributionArgs']]: + """ + The instance capacity distribution across Availability Zones. + """ return pulumi.get(self, "availability_zone_distribution") @availability_zone_distribution.setter @@ -628,6 +632,7 @@ def __init__(__self__, :param pulumi.Input[str] auto_scaling_group_name: The name of the Auto Scaling group. This name must be unique per Region per account. The name can contain any ASCII character 33 to 126 including most punctuation characters, digits, and upper and lowercased letters. You cannot use a colon (:) in the name. + :param pulumi.Input[Union['AutoScalingGroupAvailabilityZoneDistributionArgs', 'AutoScalingGroupAvailabilityZoneDistributionArgsDict']] availability_zone_distribution: The instance capacity distribution across Availability Zones. :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: A list of Availability Zones where instances in the Auto Scaling group can be created. Used for launching into the default VPC subnet in each Availability Zone when not using the ``VPCZoneIdentifier`` property, or for attaching a network interface when an existing network interface ID is specified in a launch template. :param pulumi.Input[bool] capacity_rebalance: Indicates whether Capacity Rebalancing is enabled. Otherwise, Capacity Rebalancing is disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of interruption. After launching a new instance, it then terminates an old instance. For more information, see [Use Capacity Rebalancing to handle Amazon EC2 Spot Interruptions](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html) in the in the *Amazon EC2 Auto Scaling User Guide*. :param pulumi.Input[str] context: Reserved. @@ -856,6 +861,9 @@ def auto_scaling_group_name(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter(name="availabilityZoneDistribution") def availability_zone_distribution(self) -> pulumi.Output[Optional['outputs.AutoScalingGroupAvailabilityZoneDistribution']]: + """ + The instance capacity distribution across Availability Zones. + """ return pulumi.get(self, "availability_zone_distribution") @property diff --git a/sdk/python/pulumi_aws_native/autoscaling/get_auto_scaling_group.py b/sdk/python/pulumi_aws_native/autoscaling/get_auto_scaling_group.py index 61c5956735..a6a6903cb2 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/get_auto_scaling_group.py +++ b/sdk/python/pulumi_aws_native/autoscaling/get_auto_scaling_group.py @@ -120,6 +120,9 @@ def __init__(__self__, availability_zone_distribution=None, availability_zones=N @property @pulumi.getter(name="availabilityZoneDistribution") def availability_zone_distribution(self) -> Optional['outputs.AutoScalingGroupAvailabilityZoneDistribution']: + """ + The instance capacity distribution across Availability Zones. + """ return pulumi.get(self, "availability_zone_distribution") @property diff --git a/sdk/python/pulumi_aws_native/autoscaling/outputs.py b/sdk/python/pulumi_aws_native/autoscaling/outputs.py index b7e36ae80e..2718fdcf0a 100644 --- a/sdk/python/pulumi_aws_native/autoscaling/outputs.py +++ b/sdk/python/pulumi_aws_native/autoscaling/outputs.py @@ -154,12 +154,24 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, capacity_distribution_strategy: Optional['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy'] = None): + """ + :param 'AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy' capacity_distribution_strategy: If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + + - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + """ if capacity_distribution_strategy is not None: pulumi.set(__self__, "capacity_distribution_strategy", capacity_distribution_strategy) @property @pulumi.getter(name="capacityDistributionStrategy") def capacity_distribution_strategy(self) -> Optional['AutoScalingGroupAvailabilityZoneDistributionCapacityDistributionStrategy']: + """ + If launches fail in an Availability Zone, the following strategies are available. The default is `balanced-best-effort` . + + - `balanced-only` - If launches fail in an Availability Zone, Auto Scaling will continue to attempt to launch in the unhealthy zone to preserve a balanced distribution. + - `balanced-best-effort` - If launches fail in an Availability Zone, Auto Scaling will attempt to launch in another healthy Availability Zone instead. + """ return pulumi.get(self, "capacity_distribution_strategy") diff --git a/sdk/python/pulumi_aws_native/cleanrooms/_enums.py b/sdk/python/pulumi_aws_native/cleanrooms/_enums.py index 9542f445c8..170f83716e 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/_enums.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/_enums.py @@ -7,6 +7,7 @@ __all__ = [ 'AnalysisTemplateAnalysisParameterType', 'AnalysisTemplateFormat', + 'CollaborationAnalyticsEngine', 'CollaborationMemberAbility', 'CollaborationQueryLogStatus', 'ConfiguredTableAdditionalAnalyses', @@ -46,6 +47,19 @@ class AnalysisTemplateAnalysisParameterType(str, Enum): TIME = "TIME" TIMETZ = "TIMETZ" VARBYTE = "VARBYTE" + BINARY = "BINARY" + BYTE = "BYTE" + CHARACTER = "CHARACTER" + DOUBLE = "DOUBLE" + FLOAT = "FLOAT" + INT = "INT" + LONG = "LONG" + NUMERIC = "NUMERIC" + SHORT = "SHORT" + STRING = "STRING" + TIMESTAMP_LTZ = "TIMESTAMP_LTZ" + TIMESTAMP_NTZ = "TIMESTAMP_NTZ" + TINYINT = "TINYINT" class AnalysisTemplateFormat(str, Enum): @@ -55,6 +69,11 @@ class AnalysisTemplateFormat(str, Enum): SQL = "SQL" +class CollaborationAnalyticsEngine(str, Enum): + CLEAN_ROOMS_SQL = "CLEAN_ROOMS_SQL" + SPARK = "SPARK" + + class CollaborationMemberAbility(str, Enum): CAN_QUERY = "CAN_QUERY" CAN_RECEIVE_RESULTS = "CAN_RECEIVE_RESULTS" diff --git a/sdk/python/pulumi_aws_native/cleanrooms/collaboration.py b/sdk/python/pulumi_aws_native/cleanrooms/collaboration.py index f188e5ec7f..0985058eb5 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/collaboration.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/collaboration.py @@ -29,6 +29,7 @@ def __init__(__self__, *, description: pulumi.Input[str], members: pulumi.Input[Sequence[pulumi.Input['CollaborationMemberSpecificationArgs']]], query_log_status: pulumi.Input['CollaborationQueryLogStatus'], + analytics_engine: Optional[pulumi.Input['CollaborationAnalyticsEngine']] = None, creator_payment_configuration: Optional[pulumi.Input['CollaborationPaymentConfigurationArgs']] = None, data_encryption_metadata: Optional[pulumi.Input['CollaborationDataEncryptionMetadataArgs']] = None, name: Optional[pulumi.Input[str]] = None, @@ -42,6 +43,7 @@ def __init__(__self__, *, :param pulumi.Input[str] description: A description of the collaboration provided by the collaboration owner. :param pulumi.Input[Sequence[pulumi.Input['CollaborationMemberSpecificationArgs']]] members: A list of initial members, not including the creator. This list is immutable. :param pulumi.Input['CollaborationQueryLogStatus'] query_log_status: An indicator as to whether query logging has been enabled or disabled for the collaboration. + :param pulumi.Input['CollaborationAnalyticsEngine'] analytics_engine: The analytics engine for the collaboration. :param pulumi.Input['CollaborationPaymentConfigurationArgs'] creator_payment_configuration: An object representing the collaboration member's payment responsibilities set by the collaboration creator. :param pulumi.Input['CollaborationDataEncryptionMetadataArgs'] data_encryption_metadata: The settings for client-side encryption for cryptographic computing. :param pulumi.Input[str] name: A human-readable identifier provided by the collaboration owner. Display names are not unique. @@ -52,6 +54,8 @@ def __init__(__self__, *, pulumi.set(__self__, "description", description) pulumi.set(__self__, "members", members) pulumi.set(__self__, "query_log_status", query_log_status) + if analytics_engine is not None: + pulumi.set(__self__, "analytics_engine", analytics_engine) if creator_payment_configuration is not None: pulumi.set(__self__, "creator_payment_configuration", creator_payment_configuration) if data_encryption_metadata is not None: @@ -123,6 +127,18 @@ 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="analyticsEngine") + def analytics_engine(self) -> Optional[pulumi.Input['CollaborationAnalyticsEngine']]: + """ + The analytics engine for the collaboration. + """ + return pulumi.get(self, "analytics_engine") + + @analytics_engine.setter + def analytics_engine(self, value: Optional[pulumi.Input['CollaborationAnalyticsEngine']]): + pulumi.set(self, "analytics_engine", value) + @property @pulumi.getter(name="creatorPaymentConfiguration") def creator_payment_configuration(self) -> Optional[pulumi.Input['CollaborationPaymentConfigurationArgs']]: @@ -177,6 +193,7 @@ class Collaboration(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + analytics_engine: Optional[pulumi.Input['CollaborationAnalyticsEngine']] = 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[Union['CollaborationPaymentConfigurationArgs', 'CollaborationPaymentConfigurationArgsDict']]] = None, @@ -192,6 +209,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input['CollaborationAnalyticsEngine'] analytics_engine: The analytics engine for the collaboration. :param pulumi.Input[str] creator_display_name: A display name of the collaboration creator. :param pulumi.Input[Sequence[pulumi.Input['CollaborationMemberAbility']]] creator_member_abilities: The abilities granted to the collaboration creator. @@ -228,6 +246,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + analytics_engine: Optional[pulumi.Input['CollaborationAnalyticsEngine']] = 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[Union['CollaborationPaymentConfigurationArgs', 'CollaborationPaymentConfigurationArgsDict']]] = None, @@ -246,6 +265,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__ = CollaborationArgs.__new__(CollaborationArgs) + __props__.__dict__["analytics_engine"] = analytics_engine if creator_display_name is None and not opts.urn: raise TypeError("Missing required property 'creator_display_name'") __props__.__dict__["creator_display_name"] = creator_display_name @@ -267,7 +287,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=["creatorDisplayName", "creatorMemberAbilities[*]", "creatorPaymentConfiguration", "dataEncryptionMetadata", "members[*]", "queryLogStatus"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["analyticsEngine", "creatorDisplayName", "creatorMemberAbilities[*]", "creatorPaymentConfiguration", "dataEncryptionMetadata", "members[*]", "queryLogStatus"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Collaboration, __self__).__init__( 'aws-native:cleanrooms:Collaboration', @@ -291,6 +311,7 @@ def get(resource_name: str, __props__ = CollaborationArgs.__new__(CollaborationArgs) + __props__.__dict__["analytics_engine"] = None __props__.__dict__["arn"] = None __props__.__dict__["collaboration_identifier"] = None __props__.__dict__["creator_display_name"] = None @@ -304,6 +325,14 @@ def get(resource_name: str, __props__.__dict__["tags"] = None return Collaboration(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="analyticsEngine") + def analytics_engine(self) -> pulumi.Output[Optional['CollaborationAnalyticsEngine']]: + """ + The analytics engine for the collaboration. + """ + return pulumi.get(self, "analytics_engine") + @property @pulumi.getter def arn(self) -> pulumi.Output[str]: diff --git a/sdk/python/pulumi_aws_native/cleanrooms/get_id_namespace_association.py b/sdk/python/pulumi_aws_native/cleanrooms/get_id_namespace_association.py index 3831683f73..a5b6673d64 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/get_id_namespace_association.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/get_id_namespace_association.py @@ -124,6 +124,9 @@ def name(self) -> Optional[str]: @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: + """ + An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/cleanrooms/id_namespace_association.py b/sdk/python/pulumi_aws_native/cleanrooms/id_namespace_association.py index b84a2c1acd..66bba23cd3 100644 --- a/sdk/python/pulumi_aws_native/cleanrooms/id_namespace_association.py +++ b/sdk/python/pulumi_aws_native/cleanrooms/id_namespace_association.py @@ -37,6 +37,7 @@ def __init__(__self__, *, :param pulumi.Input[str] description: The description of the ID namespace association. :param pulumi.Input['IdNamespaceAssociationIdMappingConfigArgs'] id_mapping_config: The configuration settings for the ID mapping table. :param pulumi.Input[str] name: The name of this ID namespace association. + :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. """ pulumi.set(__self__, "input_reference_config", input_reference_config) pulumi.set(__self__, "membership_identifier", membership_identifier) @@ -112,6 +113,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: + """ + An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + """ return pulumi.get(self, "tags") @tags.setter @@ -141,6 +145,7 @@ def __init__(__self__, :param pulumi.Input[Union['IdNamespaceAssociationInputReferenceConfigArgs', 'IdNamespaceAssociationInputReferenceConfigArgsDict']] input_reference_config: The input reference configuration for the ID namespace association. :param pulumi.Input[str] membership_identifier: The unique identifier of the membership that contains the ID namespace association. :param pulumi.Input[str] name: The name of this ID namespace association. + :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. """ ... @overload @@ -317,5 +322,8 @@ def name(self) -> pulumi.Output[str]: @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: + """ + An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource. + """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/cloudformation/custom_resource_emulator.py b/sdk/python/pulumi_aws_native/cloudformation/custom_resource_emulator.py new file mode 100644 index 0000000000..cc8799ddc1 --- /dev/null +++ b/sdk/python/pulumi_aws_native/cloudformation/custom_resource_emulator.py @@ -0,0 +1,383 @@ +# coding=utf-8 +# *** WARNING: this file was generated by pulumi-language-python. *** +# *** Do not edit by hand unless you're certain you know what you are doing! *** + +import copy +import warnings +import sys +import pulumi +import pulumi.runtime +from typing import Any, Mapping, Optional, Sequence, Union, overload +if sys.version_info >= (3, 11): + from typing import NotRequired, TypedDict, TypeAlias +else: + from typing_extensions import NotRequired, TypedDict, TypeAlias +from .. import _utilities + +__all__ = ['CustomResourceEmulatorArgs', 'CustomResourceEmulator'] + +@pulumi.input_type +class CustomResourceEmulatorArgs: + def __init__(__self__, *, + bucket_key_prefix: pulumi.Input[str], + bucket_name: pulumi.Input[str], + custom_resource_properties: pulumi.Input[Mapping[str, Any]], + resource_type: pulumi.Input[str], + service_token: pulumi.Input[str], + stack_id: Optional[pulumi.Input[str]] = None): + """ + The set of arguments for constructing a CustomResourceEmulator resource. + :param pulumi.Input[str] bucket_key_prefix: The prefix to use for the bucket key when storing the response from the Custom Resource provider. + :param pulumi.Input[str] bucket_name: The name of the S3 bucket to use for storing the response from the Custom Resource. + + The IAM principal configured for the provider must have `s3:PutObject`, `s3:HeadObject` and `s3:GetObject` permissions on this bucket. + :param pulumi.Input[Mapping[str, Any]] custom_resource_properties: The properties to pass as an input to the Custom Resource. + The properties are passed as a map of key-value pairs whereas all primitive values (number, boolean) are converted to strings for CloudFormation interoperability. + :param pulumi.Input[str] resource_type: The CloudFormation type of the Custom Resource. For example, `Custom::MyCustomResource`. + This is required for CloudFormation interoperability. + :param pulumi.Input[str] service_token: The service token to use for the Custom Resource. The service token is invoked when the resource is created, updated, or deleted. + This can be a Lambda Function ARN with optional version or alias identifiers. + + The IAM principal configured for the provider must have `lambda:InvokeFunction` permissions on this service token. + :param pulumi.Input[str] stack_id: A stand-in value for the CloudFormation stack ID. This is required for CloudFormation interoperability. + If not provided, the Pulumi Stack ID is used. + """ + pulumi.set(__self__, "bucket_key_prefix", bucket_key_prefix) + pulumi.set(__self__, "bucket_name", bucket_name) + pulumi.set(__self__, "custom_resource_properties", custom_resource_properties) + pulumi.set(__self__, "resource_type", resource_type) + pulumi.set(__self__, "service_token", service_token) + if stack_id is not None: + pulumi.set(__self__, "stack_id", stack_id) + + @property + @pulumi.getter(name="bucketKeyPrefix") + def bucket_key_prefix(self) -> pulumi.Input[str]: + """ + The prefix to use for the bucket key when storing the response from the Custom Resource provider. + """ + return pulumi.get(self, "bucket_key_prefix") + + @bucket_key_prefix.setter + def bucket_key_prefix(self, value: pulumi.Input[str]): + pulumi.set(self, "bucket_key_prefix", value) + + @property + @pulumi.getter(name="bucketName") + def bucket_name(self) -> pulumi.Input[str]: + """ + The name of the S3 bucket to use for storing the response from the Custom Resource. + + The IAM principal configured for the provider must have `s3:PutObject`, `s3:HeadObject` and `s3:GetObject` permissions on this bucket. + """ + return pulumi.get(self, "bucket_name") + + @bucket_name.setter + def bucket_name(self, value: pulumi.Input[str]): + pulumi.set(self, "bucket_name", value) + + @property + @pulumi.getter(name="customResourceProperties") + def custom_resource_properties(self) -> pulumi.Input[Mapping[str, Any]]: + """ + The properties to pass as an input to the Custom Resource. + The properties are passed as a map of key-value pairs whereas all primitive values (number, boolean) are converted to strings for CloudFormation interoperability. + """ + return pulumi.get(self, "custom_resource_properties") + + @custom_resource_properties.setter + def custom_resource_properties(self, value: pulumi.Input[Mapping[str, Any]]): + pulumi.set(self, "custom_resource_properties", value) + + @property + @pulumi.getter(name="resourceType") + def resource_type(self) -> pulumi.Input[str]: + """ + The CloudFormation type of the Custom Resource. For example, `Custom::MyCustomResource`. + This is required for CloudFormation interoperability. + """ + return pulumi.get(self, "resource_type") + + @resource_type.setter + def resource_type(self, value: pulumi.Input[str]): + pulumi.set(self, "resource_type", value) + + @property + @pulumi.getter(name="serviceToken") + def service_token(self) -> pulumi.Input[str]: + """ + The service token to use for the Custom Resource. The service token is invoked when the resource is created, updated, or deleted. + This can be a Lambda Function ARN with optional version or alias identifiers. + + The IAM principal configured for the provider must have `lambda:InvokeFunction` permissions on this service token. + """ + return pulumi.get(self, "service_token") + + @service_token.setter + def service_token(self, value: pulumi.Input[str]): + pulumi.set(self, "service_token", value) + + @property + @pulumi.getter(name="stackId") + def stack_id(self) -> Optional[pulumi.Input[str]]: + """ + A stand-in value for the CloudFormation stack ID. This is required for CloudFormation interoperability. + If not provided, the Pulumi Stack ID is used. + """ + return pulumi.get(self, "stack_id") + + @stack_id.setter + def stack_id(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "stack_id", value) + + +class CustomResourceEmulator(pulumi.CustomResource): + @overload + def __init__(__self__, + resource_name: str, + opts: Optional[pulumi.ResourceOptions] = None, + bucket_key_prefix: Optional[pulumi.Input[str]] = None, + bucket_name: Optional[pulumi.Input[str]] = None, + custom_resource_properties: Optional[pulumi.Input[Mapping[str, Any]]] = None, + resource_type: Optional[pulumi.Input[str]] = None, + service_token: Optional[pulumi.Input[str]] = None, + stack_id: Optional[pulumi.Input[str]] = None, + __props__=None): + """ + The Custom Resource Emulator allows you to use AWS CloudFormation Custom Resources directly in your Pulumi programs. It provides a way to invoke AWS Lambda functions that implement custom provisioning logic following the CloudFormation Custom Resource protocol. + + > **Note**: Currently, only Lambda-backed Custom Resources are supported. SNS-backed Custom Resources are not supported at this time. + + ## Example Usage + + A full example of creating a CloudFormation Custom Resource Lambda function and using it in Pulumi can be found [here](https://github.com/pulumi/pulumi-aws-native/tree/master/examples/cfn-custom-resource). + + ## About CloudFormation Custom Resources + + CloudFormation Custom Resources allow you to write custom provisioning logic for resources that aren't directly available as AWS CloudFormation resource types. Common use cases include: + + - Implementing complex provisioning logic + - Performing custom validations or transformations + - Integrating with third-party services + - Implementing organization-specific infrastructure patterns + + For more information about CloudFormation Custom Resources, see [Custom Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html) in the AWS CloudFormation User Guide. + + ## Permissions + + The IAM principal used by your Pulumi program must have the following permissions: + + 1. `lambda:InvokeFunction` on the Lambda function specified in `serviceToken` + 2. S3 permissions on the bucket specified in `bucketName`: + - `s3:PutObject` + - `s3:GetObject` + - `s3:HeadObject` + + ## Lambda Function Requirements + + The Lambda function specified in `serviceToken` must implement the CloudFormation Custom Resource lifecycle. + For detailed information about implementing Lambda-backed Custom Resources, see [AWS Lambda-backed Custom Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources-lambda.html) in the AWS CloudFormation User Guide. + + ## Timeouts + + Custom Resources have a default timeout of 60 minutes, matching the CloudFormation timeout for custom resource operations. You can customize it using the [`customTimeouts`](https://www.pulumi.com/docs/iac/concepts/options/customtimeouts/) resource option. + + :param str resource_name: The name of the resource. + :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[str] bucket_key_prefix: The prefix to use for the bucket key when storing the response from the Custom Resource provider. + :param pulumi.Input[str] bucket_name: The name of the S3 bucket to use for storing the response from the Custom Resource. + + The IAM principal configured for the provider must have `s3:PutObject`, `s3:HeadObject` and `s3:GetObject` permissions on this bucket. + :param pulumi.Input[Mapping[str, Any]] custom_resource_properties: The properties to pass as an input to the Custom Resource. + The properties are passed as a map of key-value pairs whereas all primitive values (number, boolean) are converted to strings for CloudFormation interoperability. + :param pulumi.Input[str] resource_type: The CloudFormation type of the Custom Resource. For example, `Custom::MyCustomResource`. + This is required for CloudFormation interoperability. + :param pulumi.Input[str] service_token: The service token to use for the Custom Resource. The service token is invoked when the resource is created, updated, or deleted. + This can be a Lambda Function ARN with optional version or alias identifiers. + + The IAM principal configured for the provider must have `lambda:InvokeFunction` permissions on this service token. + :param pulumi.Input[str] stack_id: A stand-in value for the CloudFormation stack ID. This is required for CloudFormation interoperability. + If not provided, the Pulumi Stack ID is used. + """ + ... + @overload + def __init__(__self__, + resource_name: str, + args: CustomResourceEmulatorArgs, + opts: Optional[pulumi.ResourceOptions] = None): + """ + The Custom Resource Emulator allows you to use AWS CloudFormation Custom Resources directly in your Pulumi programs. It provides a way to invoke AWS Lambda functions that implement custom provisioning logic following the CloudFormation Custom Resource protocol. + + > **Note**: Currently, only Lambda-backed Custom Resources are supported. SNS-backed Custom Resources are not supported at this time. + + ## Example Usage + + A full example of creating a CloudFormation Custom Resource Lambda function and using it in Pulumi can be found [here](https://github.com/pulumi/pulumi-aws-native/tree/master/examples/cfn-custom-resource). + + ## About CloudFormation Custom Resources + + CloudFormation Custom Resources allow you to write custom provisioning logic for resources that aren't directly available as AWS CloudFormation resource types. Common use cases include: + + - Implementing complex provisioning logic + - Performing custom validations or transformations + - Integrating with third-party services + - Implementing organization-specific infrastructure patterns + + For more information about CloudFormation Custom Resources, see [Custom Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources.html) in the AWS CloudFormation User Guide. + + ## Permissions + + The IAM principal used by your Pulumi program must have the following permissions: + + 1. `lambda:InvokeFunction` on the Lambda function specified in `serviceToken` + 2. S3 permissions on the bucket specified in `bucketName`: + - `s3:PutObject` + - `s3:GetObject` + - `s3:HeadObject` + + ## Lambda Function Requirements + + The Lambda function specified in `serviceToken` must implement the CloudFormation Custom Resource lifecycle. + For detailed information about implementing Lambda-backed Custom Resources, see [AWS Lambda-backed Custom Resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-custom-resources-lambda.html) in the AWS CloudFormation User Guide. + + ## Timeouts + + Custom Resources have a default timeout of 60 minutes, matching the CloudFormation timeout for custom resource operations. You can customize it using the [`customTimeouts`](https://www.pulumi.com/docs/iac/concepts/options/customtimeouts/) resource option. + + :param str resource_name: The name of the resource. + :param CustomResourceEmulatorArgs 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(CustomResourceEmulatorArgs, 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, + bucket_key_prefix: Optional[pulumi.Input[str]] = None, + bucket_name: Optional[pulumi.Input[str]] = None, + custom_resource_properties: Optional[pulumi.Input[Mapping[str, Any]]] = None, + resource_type: Optional[pulumi.Input[str]] = None, + service_token: Optional[pulumi.Input[str]] = None, + stack_id: 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__ = CustomResourceEmulatorArgs.__new__(CustomResourceEmulatorArgs) + + if bucket_key_prefix is None and not opts.urn: + raise TypeError("Missing required property 'bucket_key_prefix'") + __props__.__dict__["bucket_key_prefix"] = bucket_key_prefix + if bucket_name is None and not opts.urn: + raise TypeError("Missing required property 'bucket_name'") + __props__.__dict__["bucket_name"] = bucket_name + if custom_resource_properties is None and not opts.urn: + raise TypeError("Missing required property 'custom_resource_properties'") + __props__.__dict__["custom_resource_properties"] = custom_resource_properties + if resource_type is None and not opts.urn: + raise TypeError("Missing required property 'resource_type'") + __props__.__dict__["resource_type"] = resource_type + if service_token is None and not opts.urn: + raise TypeError("Missing required property 'service_token'") + __props__.__dict__["service_token"] = service_token + __props__.__dict__["stack_id"] = stack_id + __props__.__dict__["bucket"] = None + __props__.__dict__["data"] = None + __props__.__dict__["no_echo"] = None + __props__.__dict__["physical_resource_id"] = None + super(CustomResourceEmulator, __self__).__init__( + 'aws-native:cloudformation:CustomResourceEmulator', + resource_name, + __props__, + opts) + + @staticmethod + def get(resource_name: str, + id: pulumi.Input[str], + opts: Optional[pulumi.ResourceOptions] = None) -> 'CustomResourceEmulator': + """ + Get an existing CustomResourceEmulator 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__ = CustomResourceEmulatorArgs.__new__(CustomResourceEmulatorArgs) + + __props__.__dict__["bucket"] = None + __props__.__dict__["data"] = None + __props__.__dict__["no_echo"] = None + __props__.__dict__["physical_resource_id"] = None + __props__.__dict__["resource_type"] = None + __props__.__dict__["service_token"] = None + __props__.__dict__["stack_id"] = None + return CustomResourceEmulator(resource_name, opts=opts, __props__=__props__) + + @property + @pulumi.getter + def bucket(self) -> pulumi.Output[str]: + """ + The name of the S3 bucket to use for storing the response from the Custom Resource. + """ + return pulumi.get(self, "bucket") + + @property + @pulumi.getter + def data(self) -> pulumi.Output[Mapping[str, Any]]: + """ + The response data returned by invoking the Custom Resource. + """ + return pulumi.get(self, "data") + + @property + @pulumi.getter(name="noEcho") + def no_echo(self) -> pulumi.Output[bool]: + """ + Whether the response data contains sensitive information that should be marked as secret and not logged. + """ + return pulumi.get(self, "no_echo") + + @property + @pulumi.getter(name="physicalResourceId") + def physical_resource_id(self) -> pulumi.Output[str]: + """ + The name or unique identifier that corresponds to the `PhysicalResourceId` included in the Custom Resource response. If no `PhysicalResourceId` is provided in the response, a random ID will be generated. + """ + return pulumi.get(self, "physical_resource_id") + + @property + @pulumi.getter(name="resourceType") + def resource_type(self) -> pulumi.Output[str]: + """ + The CloudFormation type of the Custom Resource provider. For example, `Custom::MyCustomResource`. + """ + return pulumi.get(self, "resource_type") + + @property + @pulumi.getter(name="serviceToken") + def service_token(self) -> pulumi.Output[str]: + """ + The service token, such as a Lambda function ARN, that is invoked when the resource is created, updated, or deleted. + """ + return pulumi.get(self, "service_token") + + @property + @pulumi.getter(name="stackId") + def stack_id(self) -> pulumi.Output[str]: + """ + A stand-in value for the CloudFormation stack ID. + """ + return pulumi.get(self, "stack_id") + diff --git a/sdk/python/pulumi_aws_native/codebuild/_enums.py b/sdk/python/pulumi_aws_native/codebuild/_enums.py index 6a6ce3f053..a60460a06a 100644 --- a/sdk/python/pulumi_aws_native/codebuild/_enums.py +++ b/sdk/python/pulumi_aws_native/codebuild/_enums.py @@ -5,12 +5,23 @@ from enum import Enum __all__ = [ + 'FleetComputeConfigurationmachineType', 'FleetComputeType', 'FleetEnvironmentType', 'FleetOverflowBehavior', + 'FleetProxyConfigurationDefaultBehavior', + 'FleetProxyRuleEffect', + 'FleetProxyRuleType', + 'FleetScalingConfigurationInputScalingType', + 'FleetTargetTrackingScalingConfigurationMetricType', ] +class FleetComputeConfigurationmachineType(str, Enum): + GENERAL = "GENERAL" + NVME = "NVME" + + class FleetComputeType(str, Enum): """ Information about the compute resources the compute fleet uses. Available values include: @@ -48,6 +59,7 @@ class FleetComputeType(str, Enum): BUILD_GENERAL1_LARGE = "BUILD_GENERAL1_LARGE" BUILD_GENERAL1_XLARGE = "BUILD_GENERAL1_XLARGE" BUILD_GENERAL12XLARGE = "BUILD_GENERAL1_2XLARGE" + ATTRIBUTE_BASED_COMPUTE = "ATTRIBUTE_BASED_COMPUTE" class FleetEnvironmentType(str, Enum): @@ -82,3 +94,26 @@ class FleetOverflowBehavior(str, Enum): """ QUEUE = "QUEUE" ON_DEMAND = "ON_DEMAND" + + +class FleetProxyConfigurationDefaultBehavior(str, Enum): + ALLOW_ALL = "ALLOW_ALL" + DENY_ALL = "DENY_ALL" + + +class FleetProxyRuleEffect(str, Enum): + ALLOW = "ALLOW" + DENY = "DENY" + + +class FleetProxyRuleType(str, Enum): + DOMAIN = "DOMAIN" + IP = "IP" + + +class FleetScalingConfigurationInputScalingType(str, Enum): + TARGET_TRACKING_SCALING = "TARGET_TRACKING_SCALING" + + +class FleetTargetTrackingScalingConfigurationMetricType(str, Enum): + FLEET_UTILIZATION_RATE = "FLEET_UTILIZATION_RATE" diff --git a/sdk/python/pulumi_aws_native/codebuild/_inputs.py b/sdk/python/pulumi_aws_native/codebuild/_inputs.py index 6bf0b4b3b9..e664426398 100644 --- a/sdk/python/pulumi_aws_native/codebuild/_inputs.py +++ b/sdk/python/pulumi_aws_native/codebuild/_inputs.py @@ -16,12 +16,254 @@ from ._enums import * __all__ = [ + 'FleetComputeConfigurationArgs', + 'FleetComputeConfigurationArgsDict', + 'FleetProxyConfigurationArgs', + 'FleetProxyConfigurationArgsDict', + 'FleetProxyRuleArgs', + 'FleetProxyRuleArgsDict', + 'FleetScalingConfigurationInputArgs', + 'FleetScalingConfigurationInputArgsDict', + 'FleetTargetTrackingScalingConfigurationArgs', + 'FleetTargetTrackingScalingConfigurationArgsDict', 'FleetVpcConfigArgs', 'FleetVpcConfigArgsDict', ] MYPY = False +if not MYPY: + class FleetComputeConfigurationArgsDict(TypedDict): + disk: NotRequired[pulumi.Input[int]] + machine_type: NotRequired[pulumi.Input['FleetComputeConfigurationmachineType']] + memory: NotRequired[pulumi.Input[int]] + v_cpu: NotRequired[pulumi.Input[int]] +elif False: + FleetComputeConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class FleetComputeConfigurationArgs: + def __init__(__self__, *, + disk: Optional[pulumi.Input[int]] = None, + machine_type: Optional[pulumi.Input['FleetComputeConfigurationmachineType']] = None, + memory: Optional[pulumi.Input[int]] = None, + v_cpu: Optional[pulumi.Input[int]] = None): + if disk is not None: + pulumi.set(__self__, "disk", disk) + if machine_type is not None: + pulumi.set(__self__, "machine_type", machine_type) + if memory is not None: + pulumi.set(__self__, "memory", memory) + if v_cpu is not None: + pulumi.set(__self__, "v_cpu", v_cpu) + + @property + @pulumi.getter + def disk(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "disk") + + @disk.setter + def disk(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "disk", value) + + @property + @pulumi.getter(name="machineType") + def machine_type(self) -> Optional[pulumi.Input['FleetComputeConfigurationmachineType']]: + return pulumi.get(self, "machine_type") + + @machine_type.setter + def machine_type(self, value: Optional[pulumi.Input['FleetComputeConfigurationmachineType']]): + pulumi.set(self, "machine_type", value) + + @property + @pulumi.getter + def memory(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "memory") + + @memory.setter + def memory(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "memory", value) + + @property + @pulumi.getter(name="vCpu") + def v_cpu(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "v_cpu") + + @v_cpu.setter + def v_cpu(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "v_cpu", value) + + +if not MYPY: + class FleetProxyConfigurationArgsDict(TypedDict): + default_behavior: NotRequired[pulumi.Input['FleetProxyConfigurationDefaultBehavior']] + ordered_proxy_rules: NotRequired[pulumi.Input[Sequence[pulumi.Input['FleetProxyRuleArgsDict']]]] +elif False: + FleetProxyConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class FleetProxyConfigurationArgs: + def __init__(__self__, *, + default_behavior: Optional[pulumi.Input['FleetProxyConfigurationDefaultBehavior']] = None, + ordered_proxy_rules: Optional[pulumi.Input[Sequence[pulumi.Input['FleetProxyRuleArgs']]]] = None): + if default_behavior is not None: + pulumi.set(__self__, "default_behavior", default_behavior) + if ordered_proxy_rules is not None: + pulumi.set(__self__, "ordered_proxy_rules", ordered_proxy_rules) + + @property + @pulumi.getter(name="defaultBehavior") + def default_behavior(self) -> Optional[pulumi.Input['FleetProxyConfigurationDefaultBehavior']]: + return pulumi.get(self, "default_behavior") + + @default_behavior.setter + def default_behavior(self, value: Optional[pulumi.Input['FleetProxyConfigurationDefaultBehavior']]): + pulumi.set(self, "default_behavior", value) + + @property + @pulumi.getter(name="orderedProxyRules") + def ordered_proxy_rules(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FleetProxyRuleArgs']]]]: + return pulumi.get(self, "ordered_proxy_rules") + + @ordered_proxy_rules.setter + def ordered_proxy_rules(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FleetProxyRuleArgs']]]]): + pulumi.set(self, "ordered_proxy_rules", value) + + +if not MYPY: + class FleetProxyRuleArgsDict(TypedDict): + effect: NotRequired[pulumi.Input['FleetProxyRuleEffect']] + entities: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + type: NotRequired[pulumi.Input['FleetProxyRuleType']] +elif False: + FleetProxyRuleArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class FleetProxyRuleArgs: + def __init__(__self__, *, + effect: Optional[pulumi.Input['FleetProxyRuleEffect']] = None, + entities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + type: Optional[pulumi.Input['FleetProxyRuleType']] = None): + if effect is not None: + pulumi.set(__self__, "effect", effect) + if entities is not None: + pulumi.set(__self__, "entities", entities) + if type is not None: + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter + def effect(self) -> Optional[pulumi.Input['FleetProxyRuleEffect']]: + return pulumi.get(self, "effect") + + @effect.setter + def effect(self, value: Optional[pulumi.Input['FleetProxyRuleEffect']]): + pulumi.set(self, "effect", value) + + @property + @pulumi.getter + def entities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "entities") + + @entities.setter + def entities(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "entities", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input['FleetProxyRuleType']]: + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input['FleetProxyRuleType']]): + pulumi.set(self, "type", value) + + +if not MYPY: + class FleetScalingConfigurationInputArgsDict(TypedDict): + max_capacity: NotRequired[pulumi.Input[int]] + scaling_type: NotRequired[pulumi.Input['FleetScalingConfigurationInputScalingType']] + target_tracking_scaling_configs: NotRequired[pulumi.Input[Sequence[pulumi.Input['FleetTargetTrackingScalingConfigurationArgsDict']]]] +elif False: + FleetScalingConfigurationInputArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class FleetScalingConfigurationInputArgs: + def __init__(__self__, *, + max_capacity: Optional[pulumi.Input[int]] = None, + scaling_type: Optional[pulumi.Input['FleetScalingConfigurationInputScalingType']] = None, + target_tracking_scaling_configs: Optional[pulumi.Input[Sequence[pulumi.Input['FleetTargetTrackingScalingConfigurationArgs']]]] = None): + if max_capacity is not None: + pulumi.set(__self__, "max_capacity", max_capacity) + if scaling_type is not None: + pulumi.set(__self__, "scaling_type", scaling_type) + if target_tracking_scaling_configs is not None: + pulumi.set(__self__, "target_tracking_scaling_configs", target_tracking_scaling_configs) + + @property + @pulumi.getter(name="maxCapacity") + def max_capacity(self) -> Optional[pulumi.Input[int]]: + return pulumi.get(self, "max_capacity") + + @max_capacity.setter + def max_capacity(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_capacity", value) + + @property + @pulumi.getter(name="scalingType") + def scaling_type(self) -> Optional[pulumi.Input['FleetScalingConfigurationInputScalingType']]: + return pulumi.get(self, "scaling_type") + + @scaling_type.setter + def scaling_type(self, value: Optional[pulumi.Input['FleetScalingConfigurationInputScalingType']]): + pulumi.set(self, "scaling_type", value) + + @property + @pulumi.getter(name="targetTrackingScalingConfigs") + def target_tracking_scaling_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['FleetTargetTrackingScalingConfigurationArgs']]]]: + return pulumi.get(self, "target_tracking_scaling_configs") + + @target_tracking_scaling_configs.setter + def target_tracking_scaling_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['FleetTargetTrackingScalingConfigurationArgs']]]]): + pulumi.set(self, "target_tracking_scaling_configs", value) + + +if not MYPY: + class FleetTargetTrackingScalingConfigurationArgsDict(TypedDict): + metric_type: NotRequired[pulumi.Input['FleetTargetTrackingScalingConfigurationMetricType']] + target_value: NotRequired[pulumi.Input[float]] +elif False: + FleetTargetTrackingScalingConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class FleetTargetTrackingScalingConfigurationArgs: + def __init__(__self__, *, + metric_type: Optional[pulumi.Input['FleetTargetTrackingScalingConfigurationMetricType']] = None, + target_value: Optional[pulumi.Input[float]] = None): + if metric_type is not None: + pulumi.set(__self__, "metric_type", metric_type) + if target_value is not None: + pulumi.set(__self__, "target_value", target_value) + + @property + @pulumi.getter(name="metricType") + def metric_type(self) -> Optional[pulumi.Input['FleetTargetTrackingScalingConfigurationMetricType']]: + return pulumi.get(self, "metric_type") + + @metric_type.setter + def metric_type(self, value: Optional[pulumi.Input['FleetTargetTrackingScalingConfigurationMetricType']]): + pulumi.set(self, "metric_type", value) + + @property + @pulumi.getter(name="targetValue") + def target_value(self) -> Optional[pulumi.Input[float]]: + return pulumi.get(self, "target_value") + + @target_value.setter + def target_value(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "target_value", value) + + if not MYPY: class FleetVpcConfigArgsDict(TypedDict): security_group_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] diff --git a/sdk/python/pulumi_aws_native/codebuild/fleet.py b/sdk/python/pulumi_aws_native/codebuild/fleet.py index f0ce47fd6a..ece8602df9 100644 --- a/sdk/python/pulumi_aws_native/codebuild/fleet.py +++ b/sdk/python/pulumi_aws_native/codebuild/fleet.py @@ -25,13 +25,16 @@ class FleetArgs: def __init__(__self__, *, base_capacity: Optional[pulumi.Input[int]] = None, + compute_configuration: Optional[pulumi.Input['FleetComputeConfigurationArgs']] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, environment_type: Optional[pulumi.Input['FleetEnvironmentType']] = None, + fleet_proxy_configuration: Optional[pulumi.Input['FleetProxyConfigurationArgs']] = None, fleet_service_role: Optional[pulumi.Input[str]] = None, fleet_vpc_config: Optional[pulumi.Input['FleetVpcConfigArgs']] = None, image_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, overflow_behavior: Optional[pulumi.Input['FleetOverflowBehavior']] = None, + scaling_configuration: Optional[pulumi.Input['FleetScalingConfigurationInputArgs']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): """ The set of arguments for constructing a Fleet resource. @@ -91,10 +94,14 @@ def __init__(__self__, *, """ if base_capacity is not None: pulumi.set(__self__, "base_capacity", base_capacity) + if compute_configuration is not None: + pulumi.set(__self__, "compute_configuration", compute_configuration) if compute_type is not None: pulumi.set(__self__, "compute_type", compute_type) if environment_type is not None: pulumi.set(__self__, "environment_type", environment_type) + if fleet_proxy_configuration is not None: + pulumi.set(__self__, "fleet_proxy_configuration", fleet_proxy_configuration) if fleet_service_role is not None: pulumi.set(__self__, "fleet_service_role", fleet_service_role) if fleet_vpc_config is not None: @@ -105,6 +112,8 @@ def __init__(__self__, *, pulumi.set(__self__, "name", name) if overflow_behavior is not None: pulumi.set(__self__, "overflow_behavior", overflow_behavior) + if scaling_configuration is not None: + pulumi.set(__self__, "scaling_configuration", scaling_configuration) if tags is not None: pulumi.set(__self__, "tags", tags) @@ -120,6 +129,15 @@ def base_capacity(self) -> Optional[pulumi.Input[int]]: def base_capacity(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "base_capacity", value) + @property + @pulumi.getter(name="computeConfiguration") + def compute_configuration(self) -> Optional[pulumi.Input['FleetComputeConfigurationArgs']]: + return pulumi.get(self, "compute_configuration") + + @compute_configuration.setter + def compute_configuration(self, value: Optional[pulumi.Input['FleetComputeConfigurationArgs']]): + pulumi.set(self, "compute_configuration", value) + @property @pulumi.getter(name="computeType") def compute_type(self) -> Optional[pulumi.Input['FleetComputeType']]: @@ -181,6 +199,15 @@ def environment_type(self) -> Optional[pulumi.Input['FleetEnvironmentType']]: def environment_type(self, value: Optional[pulumi.Input['FleetEnvironmentType']]): pulumi.set(self, "environment_type", value) + @property + @pulumi.getter(name="fleetProxyConfiguration") + def fleet_proxy_configuration(self) -> Optional[pulumi.Input['FleetProxyConfigurationArgs']]: + return pulumi.get(self, "fleet_proxy_configuration") + + @fleet_proxy_configuration.setter + def fleet_proxy_configuration(self, value: Optional[pulumi.Input['FleetProxyConfigurationArgs']]): + pulumi.set(self, "fleet_proxy_configuration", value) + @property @pulumi.getter(name="fleetServiceRole") def fleet_service_role(self) -> Optional[pulumi.Input[str]]: @@ -246,6 +273,15 @@ def overflow_behavior(self) -> Optional[pulumi.Input['FleetOverflowBehavior']]: def overflow_behavior(self, value: Optional[pulumi.Input['FleetOverflowBehavior']]): pulumi.set(self, "overflow_behavior", value) + @property + @pulumi.getter(name="scalingConfiguration") + def scaling_configuration(self) -> Optional[pulumi.Input['FleetScalingConfigurationInputArgs']]: + return pulumi.get(self, "scaling_configuration") + + @scaling_configuration.setter + def scaling_configuration(self, value: Optional[pulumi.Input['FleetScalingConfigurationInputArgs']]): + pulumi.set(self, "scaling_configuration", value) + @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: @@ -267,13 +303,16 @@ def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, base_capacity: Optional[pulumi.Input[int]] = None, + compute_configuration: Optional[pulumi.Input[Union['FleetComputeConfigurationArgs', 'FleetComputeConfigurationArgsDict']]] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, environment_type: Optional[pulumi.Input['FleetEnvironmentType']] = None, + fleet_proxy_configuration: Optional[pulumi.Input[Union['FleetProxyConfigurationArgs', 'FleetProxyConfigurationArgsDict']]] = None, fleet_service_role: Optional[pulumi.Input[str]] = None, fleet_vpc_config: Optional[pulumi.Input[Union['FleetVpcConfigArgs', 'FleetVpcConfigArgsDict']]] = None, image_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, overflow_behavior: Optional[pulumi.Input['FleetOverflowBehavior']] = None, + scaling_configuration: Optional[pulumi.Input[Union['FleetScalingConfigurationInputArgs', 'FleetScalingConfigurationInputArgsDict']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, __props__=None): """ @@ -360,13 +399,16 @@ def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, base_capacity: Optional[pulumi.Input[int]] = None, + compute_configuration: Optional[pulumi.Input[Union['FleetComputeConfigurationArgs', 'FleetComputeConfigurationArgsDict']]] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, environment_type: Optional[pulumi.Input['FleetEnvironmentType']] = None, + fleet_proxy_configuration: Optional[pulumi.Input[Union['FleetProxyConfigurationArgs', 'FleetProxyConfigurationArgsDict']]] = None, fleet_service_role: Optional[pulumi.Input[str]] = None, fleet_vpc_config: Optional[pulumi.Input[Union['FleetVpcConfigArgs', 'FleetVpcConfigArgsDict']]] = None, image_id: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, overflow_behavior: Optional[pulumi.Input['FleetOverflowBehavior']] = None, + scaling_configuration: Optional[pulumi.Input[Union['FleetScalingConfigurationInputArgs', 'FleetScalingConfigurationInputArgsDict']]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) @@ -378,13 +420,16 @@ def _internal_init(__self__, __props__ = FleetArgs.__new__(FleetArgs) __props__.__dict__["base_capacity"] = base_capacity + __props__.__dict__["compute_configuration"] = compute_configuration __props__.__dict__["compute_type"] = compute_type __props__.__dict__["environment_type"] = environment_type + __props__.__dict__["fleet_proxy_configuration"] = fleet_proxy_configuration __props__.__dict__["fleet_service_role"] = fleet_service_role __props__.__dict__["fleet_vpc_config"] = fleet_vpc_config __props__.__dict__["image_id"] = image_id __props__.__dict__["name"] = name __props__.__dict__["overflow_behavior"] = overflow_behavior + __props__.__dict__["scaling_configuration"] = scaling_configuration __props__.__dict__["tags"] = tags __props__.__dict__["arn"] = None super(Fleet, __self__).__init__( @@ -411,13 +456,16 @@ def get(resource_name: str, __props__.__dict__["arn"] = None __props__.__dict__["base_capacity"] = None + __props__.__dict__["compute_configuration"] = None __props__.__dict__["compute_type"] = None __props__.__dict__["environment_type"] = None + __props__.__dict__["fleet_proxy_configuration"] = None __props__.__dict__["fleet_service_role"] = None __props__.__dict__["fleet_vpc_config"] = None __props__.__dict__["image_id"] = None __props__.__dict__["name"] = None __props__.__dict__["overflow_behavior"] = None + __props__.__dict__["scaling_configuration"] = None __props__.__dict__["tags"] = None return Fleet(resource_name, opts=opts, __props__=__props__) @@ -437,6 +485,11 @@ def base_capacity(self) -> pulumi.Output[Optional[int]]: """ return pulumi.get(self, "base_capacity") + @property + @pulumi.getter(name="computeConfiguration") + def compute_configuration(self) -> pulumi.Output[Optional['outputs.FleetComputeConfiguration']]: + return pulumi.get(self, "compute_configuration") + @property @pulumi.getter(name="computeType") def compute_type(self) -> pulumi.Output[Optional['FleetComputeType']]: @@ -490,6 +543,11 @@ def environment_type(self) -> pulumi.Output[Optional['FleetEnvironmentType']]: """ return pulumi.get(self, "environment_type") + @property + @pulumi.getter(name="fleetProxyConfiguration") + def fleet_proxy_configuration(self) -> pulumi.Output[Optional['outputs.FleetProxyConfiguration']]: + return pulumi.get(self, "fleet_proxy_configuration") + @property @pulumi.getter(name="fleetServiceRole") def fleet_service_role(self) -> pulumi.Output[Optional[str]]: @@ -535,6 +593,11 @@ def overflow_behavior(self) -> pulumi.Output[Optional['FleetOverflowBehavior']]: """ return pulumi.get(self, "overflow_behavior") + @property + @pulumi.getter(name="scalingConfiguration") + def scaling_configuration(self) -> pulumi.Output[Optional['outputs.FleetScalingConfigurationInput']]: + return pulumi.get(self, "scaling_configuration") + @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: diff --git a/sdk/python/pulumi_aws_native/codebuild/get_fleet.py b/sdk/python/pulumi_aws_native/codebuild/get_fleet.py index ddfafb2b93..23dabbf36b 100644 --- a/sdk/python/pulumi_aws_native/codebuild/get_fleet.py +++ b/sdk/python/pulumi_aws_native/codebuild/get_fleet.py @@ -26,19 +26,25 @@ @pulumi.output_type class GetFleetResult: - def __init__(__self__, arn=None, base_capacity=None, compute_type=None, environment_type=None, fleet_service_role=None, fleet_vpc_config=None, image_id=None, name=None, overflow_behavior=None, tags=None): + def __init__(__self__, arn=None, base_capacity=None, compute_configuration=None, compute_type=None, environment_type=None, fleet_proxy_configuration=None, fleet_service_role=None, fleet_vpc_config=None, image_id=None, name=None, overflow_behavior=None, scaling_configuration=None, tags=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) if base_capacity and not isinstance(base_capacity, int): raise TypeError("Expected argument 'base_capacity' to be a int") pulumi.set(__self__, "base_capacity", base_capacity) + if compute_configuration and not isinstance(compute_configuration, dict): + raise TypeError("Expected argument 'compute_configuration' to be a dict") + pulumi.set(__self__, "compute_configuration", compute_configuration) if compute_type and not isinstance(compute_type, str): raise TypeError("Expected argument 'compute_type' to be a str") pulumi.set(__self__, "compute_type", compute_type) if environment_type and not isinstance(environment_type, str): raise TypeError("Expected argument 'environment_type' to be a str") pulumi.set(__self__, "environment_type", environment_type) + if fleet_proxy_configuration and not isinstance(fleet_proxy_configuration, dict): + raise TypeError("Expected argument 'fleet_proxy_configuration' to be a dict") + pulumi.set(__self__, "fleet_proxy_configuration", fleet_proxy_configuration) if fleet_service_role and not isinstance(fleet_service_role, str): raise TypeError("Expected argument 'fleet_service_role' to be a str") pulumi.set(__self__, "fleet_service_role", fleet_service_role) @@ -54,6 +60,9 @@ def __init__(__self__, arn=None, base_capacity=None, compute_type=None, environm if overflow_behavior and not isinstance(overflow_behavior, str): raise TypeError("Expected argument 'overflow_behavior' to be a str") pulumi.set(__self__, "overflow_behavior", overflow_behavior) + if scaling_configuration and not isinstance(scaling_configuration, dict): + raise TypeError("Expected argument 'scaling_configuration' to be a dict") + pulumi.set(__self__, "scaling_configuration", scaling_configuration) if tags and not isinstance(tags, list): raise TypeError("Expected argument 'tags' to be a list") pulumi.set(__self__, "tags", tags) @@ -74,6 +83,11 @@ def base_capacity(self) -> Optional[int]: """ return pulumi.get(self, "base_capacity") + @property + @pulumi.getter(name="computeConfiguration") + def compute_configuration(self) -> Optional['outputs.FleetComputeConfiguration']: + return pulumi.get(self, "compute_configuration") + @property @pulumi.getter(name="computeType") def compute_type(self) -> Optional['FleetComputeType']: @@ -127,6 +141,11 @@ def environment_type(self) -> Optional['FleetEnvironmentType']: """ return pulumi.get(self, "environment_type") + @property + @pulumi.getter(name="fleetProxyConfiguration") + def fleet_proxy_configuration(self) -> Optional['outputs.FleetProxyConfiguration']: + return pulumi.get(self, "fleet_proxy_configuration") + @property @pulumi.getter(name="fleetServiceRole") def fleet_service_role(self) -> Optional[str]: @@ -172,6 +191,11 @@ def overflow_behavior(self) -> Optional['FleetOverflowBehavior']: """ return pulumi.get(self, "overflow_behavior") + @property + @pulumi.getter(name="scalingConfiguration") + def scaling_configuration(self) -> Optional['outputs.FleetScalingConfigurationInput']: + return pulumi.get(self, "scaling_configuration") + @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: @@ -191,13 +215,16 @@ def __await__(self): return GetFleetResult( arn=self.arn, base_capacity=self.base_capacity, + compute_configuration=self.compute_configuration, compute_type=self.compute_type, environment_type=self.environment_type, + fleet_proxy_configuration=self.fleet_proxy_configuration, fleet_service_role=self.fleet_service_role, fleet_vpc_config=self.fleet_vpc_config, image_id=self.image_id, name=self.name, overflow_behavior=self.overflow_behavior, + scaling_configuration=self.scaling_configuration, tags=self.tags) @@ -217,13 +244,16 @@ def get_fleet(arn: Optional[str] = None, return AwaitableGetFleetResult( arn=pulumi.get(__ret__, 'arn'), base_capacity=pulumi.get(__ret__, 'base_capacity'), + compute_configuration=pulumi.get(__ret__, 'compute_configuration'), compute_type=pulumi.get(__ret__, 'compute_type'), environment_type=pulumi.get(__ret__, 'environment_type'), + fleet_proxy_configuration=pulumi.get(__ret__, 'fleet_proxy_configuration'), fleet_service_role=pulumi.get(__ret__, 'fleet_service_role'), fleet_vpc_config=pulumi.get(__ret__, 'fleet_vpc_config'), image_id=pulumi.get(__ret__, 'image_id'), name=pulumi.get(__ret__, 'name'), overflow_behavior=pulumi.get(__ret__, 'overflow_behavior'), + scaling_configuration=pulumi.get(__ret__, 'scaling_configuration'), tags=pulumi.get(__ret__, 'tags')) def get_fleet_output(arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFleetResult]: @@ -240,11 +270,14 @@ def get_fleet_output(arn: Optional[pulumi.Input[str]] = None, return __ret__.apply(lambda __response__: GetFleetResult( arn=pulumi.get(__response__, 'arn'), base_capacity=pulumi.get(__response__, 'base_capacity'), + compute_configuration=pulumi.get(__response__, 'compute_configuration'), compute_type=pulumi.get(__response__, 'compute_type'), environment_type=pulumi.get(__response__, 'environment_type'), + fleet_proxy_configuration=pulumi.get(__response__, 'fleet_proxy_configuration'), fleet_service_role=pulumi.get(__response__, 'fleet_service_role'), fleet_vpc_config=pulumi.get(__response__, 'fleet_vpc_config'), image_id=pulumi.get(__response__, 'image_id'), name=pulumi.get(__response__, 'name'), overflow_behavior=pulumi.get(__response__, 'overflow_behavior'), + scaling_configuration=pulumi.get(__response__, 'scaling_configuration'), tags=pulumi.get(__response__, 'tags'))) diff --git a/sdk/python/pulumi_aws_native/codebuild/outputs.py b/sdk/python/pulumi_aws_native/codebuild/outputs.py index 451e68f095..2275cbb976 100644 --- a/sdk/python/pulumi_aws_native/codebuild/outputs.py +++ b/sdk/python/pulumi_aws_native/codebuild/outputs.py @@ -13,12 +13,233 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities +from . import outputs from ._enums import * __all__ = [ + 'FleetComputeConfiguration', + 'FleetProxyConfiguration', + 'FleetProxyRule', + 'FleetScalingConfigurationInput', + 'FleetTargetTrackingScalingConfiguration', 'FleetVpcConfig', ] +@pulumi.output_type +class FleetComputeConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "machineType": + suggest = "machine_type" + elif key == "vCpu": + suggest = "v_cpu" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in FleetComputeConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + FleetComputeConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + FleetComputeConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + disk: Optional[int] = None, + machine_type: Optional['FleetComputeConfigurationmachineType'] = None, + memory: Optional[int] = None, + v_cpu: Optional[int] = None): + if disk is not None: + pulumi.set(__self__, "disk", disk) + if machine_type is not None: + pulumi.set(__self__, "machine_type", machine_type) + if memory is not None: + pulumi.set(__self__, "memory", memory) + if v_cpu is not None: + pulumi.set(__self__, "v_cpu", v_cpu) + + @property + @pulumi.getter + def disk(self) -> Optional[int]: + return pulumi.get(self, "disk") + + @property + @pulumi.getter(name="machineType") + def machine_type(self) -> Optional['FleetComputeConfigurationmachineType']: + return pulumi.get(self, "machine_type") + + @property + @pulumi.getter + def memory(self) -> Optional[int]: + return pulumi.get(self, "memory") + + @property + @pulumi.getter(name="vCpu") + def v_cpu(self) -> Optional[int]: + return pulumi.get(self, "v_cpu") + + +@pulumi.output_type +class FleetProxyConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "defaultBehavior": + suggest = "default_behavior" + elif key == "orderedProxyRules": + suggest = "ordered_proxy_rules" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in FleetProxyConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + FleetProxyConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + FleetProxyConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + default_behavior: Optional['FleetProxyConfigurationDefaultBehavior'] = None, + ordered_proxy_rules: Optional[Sequence['outputs.FleetProxyRule']] = None): + if default_behavior is not None: + pulumi.set(__self__, "default_behavior", default_behavior) + if ordered_proxy_rules is not None: + pulumi.set(__self__, "ordered_proxy_rules", ordered_proxy_rules) + + @property + @pulumi.getter(name="defaultBehavior") + def default_behavior(self) -> Optional['FleetProxyConfigurationDefaultBehavior']: + return pulumi.get(self, "default_behavior") + + @property + @pulumi.getter(name="orderedProxyRules") + def ordered_proxy_rules(self) -> Optional[Sequence['outputs.FleetProxyRule']]: + return pulumi.get(self, "ordered_proxy_rules") + + +@pulumi.output_type +class FleetProxyRule(dict): + def __init__(__self__, *, + effect: Optional['FleetProxyRuleEffect'] = None, + entities: Optional[Sequence[str]] = None, + type: Optional['FleetProxyRuleType'] = None): + if effect is not None: + pulumi.set(__self__, "effect", effect) + if entities is not None: + pulumi.set(__self__, "entities", entities) + if type is not None: + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter + def effect(self) -> Optional['FleetProxyRuleEffect']: + return pulumi.get(self, "effect") + + @property + @pulumi.getter + def entities(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "entities") + + @property + @pulumi.getter + def type(self) -> Optional['FleetProxyRuleType']: + return pulumi.get(self, "type") + + +@pulumi.output_type +class FleetScalingConfigurationInput(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "maxCapacity": + suggest = "max_capacity" + elif key == "scalingType": + suggest = "scaling_type" + elif key == "targetTrackingScalingConfigs": + suggest = "target_tracking_scaling_configs" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in FleetScalingConfigurationInput. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + FleetScalingConfigurationInput.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + FleetScalingConfigurationInput.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + max_capacity: Optional[int] = None, + scaling_type: Optional['FleetScalingConfigurationInputScalingType'] = None, + target_tracking_scaling_configs: Optional[Sequence['outputs.FleetTargetTrackingScalingConfiguration']] = None): + if max_capacity is not None: + pulumi.set(__self__, "max_capacity", max_capacity) + if scaling_type is not None: + pulumi.set(__self__, "scaling_type", scaling_type) + if target_tracking_scaling_configs is not None: + pulumi.set(__self__, "target_tracking_scaling_configs", target_tracking_scaling_configs) + + @property + @pulumi.getter(name="maxCapacity") + def max_capacity(self) -> Optional[int]: + return pulumi.get(self, "max_capacity") + + @property + @pulumi.getter(name="scalingType") + def scaling_type(self) -> Optional['FleetScalingConfigurationInputScalingType']: + return pulumi.get(self, "scaling_type") + + @property + @pulumi.getter(name="targetTrackingScalingConfigs") + def target_tracking_scaling_configs(self) -> Optional[Sequence['outputs.FleetTargetTrackingScalingConfiguration']]: + return pulumi.get(self, "target_tracking_scaling_configs") + + +@pulumi.output_type +class FleetTargetTrackingScalingConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "metricType": + suggest = "metric_type" + elif key == "targetValue": + suggest = "target_value" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in FleetTargetTrackingScalingConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + FleetTargetTrackingScalingConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + FleetTargetTrackingScalingConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + metric_type: Optional['FleetTargetTrackingScalingConfigurationMetricType'] = None, + target_value: Optional[float] = None): + if metric_type is not None: + pulumi.set(__self__, "metric_type", metric_type) + if target_value is not None: + pulumi.set(__self__, "target_value", target_value) + + @property + @pulumi.getter(name="metricType") + def metric_type(self) -> Optional['FleetTargetTrackingScalingConfigurationMetricType']: + return pulumi.get(self, "metric_type") + + @property + @pulumi.getter(name="targetValue") + def target_value(self) -> Optional[float]: + return pulumi.get(self, "target_value") + + @pulumi.output_type class FleetVpcConfig(dict): @staticmethod diff --git a/sdk/python/pulumi_aws_native/dynamodb/_inputs.py b/sdk/python/pulumi_aws_native/dynamodb/_inputs.py index 8492ad47c2..21ff9a7c56 100644 --- a/sdk/python/pulumi_aws_native/dynamodb/_inputs.py +++ b/sdk/python/pulumi_aws_native/dynamodb/_inputs.py @@ -319,7 +319,7 @@ class GlobalTableGlobalSecondaryIndexArgsDict(TypedDict): """ write_on_demand_throughput_settings: NotRequired[pulumi.Input['GlobalTableWriteOnDemandThroughputSettingsArgsDict']] """ - Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ write_provisioned_throughput_settings: NotRequired[pulumi.Input['GlobalTableWriteProvisionedThroughputSettingsArgsDict']] """ @@ -347,7 +347,7 @@ def __init__(__self__, *, > > The sort key of an item is also known as its *range attribute* . The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value. :param pulumi.Input['GlobalTableProjectionArgs'] projection: Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected. - :param pulumi.Input['GlobalTableWriteOnDemandThroughputSettingsArgs'] write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + :param pulumi.Input['GlobalTableWriteOnDemandThroughputSettingsArgs'] write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . :param pulumi.Input['GlobalTableWriteProvisionedThroughputSettingsArgs'] write_provisioned_throughput_settings: Defines write capacity settings for the global secondary index. You must specify a value for this property if the table's `BillingMode` is `PROVISIONED` . All replicas will have the same write capacity settings for this global secondary index. """ pulumi.set(__self__, "index_name", index_name) @@ -405,7 +405,7 @@ def projection(self, value: pulumi.Input['GlobalTableProjectionArgs']): @pulumi.getter(name="writeOnDemandThroughputSettings") def write_on_demand_throughput_settings(self) -> Optional[pulumi.Input['GlobalTableWriteOnDemandThroughputSettingsArgs']]: """ - Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ return pulumi.get(self, "write_on_demand_throughput_settings") @@ -842,7 +842,7 @@ class GlobalTableReplicaGlobalSecondaryIndexSpecificationArgsDict(TypedDict): """ read_on_demand_throughput_settings: NotRequired[pulumi.Input['GlobalTableReadOnDemandThroughputSettingsArgsDict']] """ - Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ read_provisioned_throughput_settings: NotRequired[pulumi.Input['GlobalTableReadProvisionedThroughputSettingsArgsDict']] """ @@ -861,7 +861,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] index_name: The name of the global secondary index. The name must be unique among all other indexes on this table. :param pulumi.Input['GlobalTableContributorInsightsSpecificationArgs'] contributor_insights_specification: Updates the status for contributor insights for a specific table or index. CloudWatch Contributor Insights for DynamoDB graphs display the partition key and (if applicable) sort key of frequently accessed items and frequently throttled items in plaintext. If you require the use of AWS Key Management Service (KMS) to encrypt this table’s partition key and sort key data with an AWS managed key or customer managed key, you should not enable CloudWatch Contributor Insights for DynamoDB for this table. - :param pulumi.Input['GlobalTableReadOnDemandThroughputSettingsArgs'] read_on_demand_throughput_settings: Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + :param pulumi.Input['GlobalTableReadOnDemandThroughputSettingsArgs'] read_on_demand_throughput_settings: Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . :param pulumi.Input['GlobalTableReadProvisionedThroughputSettingsArgs'] read_provisioned_throughput_settings: Allows you to specify the read capacity settings for a replica global secondary index when the `BillingMode` is set to `PROVISIONED` . """ pulumi.set(__self__, "index_name", index_name) @@ -900,7 +900,7 @@ def contributor_insights_specification(self, value: Optional[pulumi.Input['Globa @pulumi.getter(name="readOnDemandThroughputSettings") def read_on_demand_throughput_settings(self) -> Optional[pulumi.Input['GlobalTableReadOnDemandThroughputSettingsArgs']]: """ - Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ return pulumi.get(self, "read_on_demand_throughput_settings") diff --git a/sdk/python/pulumi_aws_native/dynamodb/get_global_table.py b/sdk/python/pulumi_aws_native/dynamodb/get_global_table.py index 272214defc..e8063d947b 100644 --- a/sdk/python/pulumi_aws_native/dynamodb/get_global_table.py +++ b/sdk/python/pulumi_aws_native/dynamodb/get_global_table.py @@ -162,7 +162,7 @@ def time_to_live_specification(self) -> Optional['outputs.GlobalTableTimeToLiveS @pulumi.getter(name="writeOnDemandThroughputSettings") def write_on_demand_throughput_settings(self) -> Optional['outputs.GlobalTableWriteOnDemandThroughputSettings']: """ - Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ return pulumi.get(self, "write_on_demand_throughput_settings") diff --git a/sdk/python/pulumi_aws_native/dynamodb/global_table.py b/sdk/python/pulumi_aws_native/dynamodb/global_table.py index fd32c48eb0..872a84cd84 100644 --- a/sdk/python/pulumi_aws_native/dynamodb/global_table.py +++ b/sdk/python/pulumi_aws_native/dynamodb/global_table.py @@ -61,7 +61,7 @@ def __init__(__self__, *, > If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name. :param pulumi.Input['GlobalTableTimeToLiveSpecificationArgs'] time_to_live_specification: Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas. - :param pulumi.Input['GlobalTableWriteOnDemandThroughputSettingsArgs'] write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + :param pulumi.Input['GlobalTableWriteOnDemandThroughputSettingsArgs'] write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . :param pulumi.Input['GlobalTableWriteProvisionedThroughputSettingsArgs'] write_provisioned_throughput_settings: Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if `BillingMode` is set to `PROVISIONED` . """ pulumi.set(__self__, "attribute_definitions", attribute_definitions) @@ -225,7 +225,7 @@ def time_to_live_specification(self, value: Optional[pulumi.Input['GlobalTableTi @pulumi.getter(name="writeOnDemandThroughputSettings") def write_on_demand_throughput_settings(self) -> Optional[pulumi.Input['GlobalTableWriteOnDemandThroughputSettingsArgs']]: """ - Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ return pulumi.get(self, "write_on_demand_throughput_settings") @@ -294,7 +294,7 @@ def __init__(__self__, > If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name. :param pulumi.Input[Union['GlobalTableTimeToLiveSpecificationArgs', 'GlobalTableTimeToLiveSpecificationArgsDict']] time_to_live_specification: Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas. - :param pulumi.Input[Union['GlobalTableWriteOnDemandThroughputSettingsArgs', 'GlobalTableWriteOnDemandThroughputSettingsArgsDict']] write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + :param pulumi.Input[Union['GlobalTableWriteOnDemandThroughputSettingsArgs', 'GlobalTableWriteOnDemandThroughputSettingsArgsDict']] write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . :param pulumi.Input[Union['GlobalTableWriteProvisionedThroughputSettingsArgs', 'GlobalTableWriteProvisionedThroughputSettingsArgsDict']] write_provisioned_throughput_settings: Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if `BillingMode` is set to `PROVISIONED` . """ ... @@ -529,7 +529,7 @@ def time_to_live_specification(self) -> pulumi.Output[Optional['outputs.GlobalTa @pulumi.getter(name="writeOnDemandThroughputSettings") def write_on_demand_throughput_settings(self) -> pulumi.Output[Optional['outputs.GlobalTableWriteOnDemandThroughputSettings']]: """ - Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ return pulumi.get(self, "write_on_demand_throughput_settings") diff --git a/sdk/python/pulumi_aws_native/dynamodb/outputs.py b/sdk/python/pulumi_aws_native/dynamodb/outputs.py index fc7964b891..2ecfbbfd06 100644 --- a/sdk/python/pulumi_aws_native/dynamodb/outputs.py +++ b/sdk/python/pulumi_aws_native/dynamodb/outputs.py @@ -259,7 +259,7 @@ def __init__(__self__, *, > > The sort key of an item is also known as its *range attribute* . The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value. :param 'GlobalTableProjection' projection: Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected. - :param 'GlobalTableWriteOnDemandThroughputSettings' write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + :param 'GlobalTableWriteOnDemandThroughputSettings' write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . :param 'GlobalTableWriteProvisionedThroughputSettings' write_provisioned_throughput_settings: Defines write capacity settings for the global secondary index. You must specify a value for this property if the table's `BillingMode` is `PROVISIONED` . All replicas will have the same write capacity settings for this global secondary index. """ pulumi.set(__self__, "index_name", index_name) @@ -305,7 +305,7 @@ def projection(self) -> 'outputs.GlobalTableProjection': @pulumi.getter(name="writeOnDemandThroughputSettings") def write_on_demand_throughput_settings(self) -> Optional['outputs.GlobalTableWriteOnDemandThroughputSettings']: """ - Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ return pulumi.get(self, "write_on_demand_throughput_settings") @@ -723,7 +723,7 @@ def __init__(__self__, *, """ :param str index_name: The name of the global secondary index. The name must be unique among all other indexes on this table. :param 'GlobalTableContributorInsightsSpecification' contributor_insights_specification: Updates the status for contributor insights for a specific table or index. CloudWatch Contributor Insights for DynamoDB graphs display the partition key and (if applicable) sort key of frequently accessed items and frequently throttled items in plaintext. If you require the use of AWS Key Management Service (KMS) to encrypt this table’s partition key and sort key data with an AWS managed key or customer managed key, you should not enable CloudWatch Contributor Insights for DynamoDB for this table. - :param 'GlobalTableReadOnDemandThroughputSettings' read_on_demand_throughput_settings: Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + :param 'GlobalTableReadOnDemandThroughputSettings' read_on_demand_throughput_settings: Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . :param 'GlobalTableReadProvisionedThroughputSettings' read_provisioned_throughput_settings: Allows you to specify the read capacity settings for a replica global secondary index when the `BillingMode` is set to `PROVISIONED` . """ pulumi.set(__self__, "index_name", index_name) @@ -754,7 +754,7 @@ def contributor_insights_specification(self) -> Optional['outputs.GlobalTableCon @pulumi.getter(name="readOnDemandThroughputSettings") def read_on_demand_throughput_settings(self) -> Optional['outputs.GlobalTableReadOnDemandThroughputSettings']: """ - Sets the read request settings for a replica global secondary index. You must specify this setting if you set the `BillingMode` to `PAY_PER_REQUEST` . + Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the `PAY_PER_REQUEST` `BillingMode` . """ return pulumi.get(self, "read_on_demand_throughput_settings") diff --git a/sdk/python/pulumi_aws_native/ec2/capacity_reservation.py b/sdk/python/pulumi_aws_native/ec2/capacity_reservation.py index 315b038388..3443548989 100644 --- a/sdk/python/pulumi_aws_native/ec2/capacity_reservation.py +++ b/sdk/python/pulumi_aws_native/ec2/capacity_reservation.py @@ -67,7 +67,9 @@ def __init__(__self__, *, - `default` - The Capacity Reservation is created on hardware that is shared with other AWS accounts . - `dedicated` - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single AWS account . - :param pulumi.Input[str] unused_reservation_billing_owner_id: The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + :param pulumi.Input[str] unused_reservation_billing_owner_id: The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + + You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . """ pulumi.set(__self__, "availability_zone", availability_zone) pulumi.set(__self__, "instance_count", instance_count) @@ -271,7 +273,9 @@ def tenancy(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="unusedReservationBillingOwnerId") def unused_reservation_billing_owner_id(self) -> Optional[pulumi.Input[str]]: """ - The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + + You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . """ return pulumi.get(self, "unused_reservation_billing_owner_id") @@ -335,7 +339,9 @@ def __init__(__self__, - `default` - The Capacity Reservation is created on hardware that is shared with other AWS accounts . - `dedicated` - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single AWS account . - :param pulumi.Input[str] unused_reservation_billing_owner_id: The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + :param pulumi.Input[str] unused_reservation_billing_owner_id: The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + + You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . """ ... @overload @@ -601,7 +607,9 @@ def total_instance_count(self) -> pulumi.Output[int]: @pulumi.getter(name="unusedReservationBillingOwnerId") def unused_reservation_billing_owner_id(self) -> pulumi.Output[Optional[str]]: """ - The ID of the AWS account to which billing of the unused capacity of the Capacity Reservation is assigned. + The ID of the AWS account to which to assign billing of the unused capacity of the Capacity Reservation. A request will be sent to the specified account. That account must accept the request for the billing to be assigned to their account. For more information, see [Billing assignment for shared Amazon EC2 Capacity Reservations](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/assign-billing.html) . + + You can assign billing only for shared Capacity Reservations. To share a Capacity Reservation, you must add it to a resource share. For more information, see [AWS::RAM::ResourceShare](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ram-resourceshare.html) . """ return pulumi.get(self, "unused_reservation_billing_owner_id") diff --git a/sdk/python/pulumi_aws_native/ecs/_enums.py b/sdk/python/pulumi_aws_native/ecs/_enums.py index 73b331eb44..e5424aedba 100644 --- a/sdk/python/pulumi_aws_native/ecs/_enums.py +++ b/sdk/python/pulumi_aws_native/ecs/_enums.py @@ -10,6 +10,7 @@ 'CapacityProviderManagedScalingStatus', 'ClusterCapacityProviderAssociationsCapacityProvider', 'ClusterCapacityProviderAssociationsCapacityProvider0', + 'ServiceAvailabilityZoneRebalancing', 'ServiceAwsVpcConfigurationAssignPublicIp', 'ServiceDeploymentControllerType', 'ServiceEbsTagSpecificationPropagateTags', @@ -73,6 +74,11 @@ class ClusterCapacityProviderAssociationsCapacityProvider0(str, Enum): FARGATE_SPOT = "FARGATE_SPOT" +class ServiceAvailabilityZoneRebalancing(str, Enum): + ENABLED = "ENABLED" + DISABLED = "DISABLED" + + class ServiceAwsVpcConfigurationAssignPublicIp(str, Enum): """ Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED``. diff --git a/sdk/python/pulumi_aws_native/ecs/_inputs.py b/sdk/python/pulumi_aws_native/ecs/_inputs.py index d7f09cca58..385b81e769 100644 --- a/sdk/python/pulumi_aws_native/ecs/_inputs.py +++ b/sdk/python/pulumi_aws_native/ecs/_inputs.py @@ -82,6 +82,8 @@ 'ServiceTimeoutConfigurationArgsDict', 'ServiceVolumeConfigurationArgs', 'ServiceVolumeConfigurationArgsDict', + 'ServiceVpcLatticeConfigurationArgs', + 'ServiceVpcLatticeConfigurationArgsDict', 'TaskDefinitionAuthorizationConfigArgs', 'TaskDefinitionAuthorizationConfigArgsDict', 'TaskDefinitionContainerDefinitionArgs', @@ -1728,7 +1730,7 @@ def rollback(self, value: pulumi.Input[bool]): if not MYPY: class ServiceDeploymentConfigurationArgsDict(TypedDict): """ - Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. """ alarms: NotRequired[pulumi.Input['ServiceDeploymentAlarmsArgsDict']] """ @@ -1775,7 +1777,7 @@ def __init__(__self__, *, maximum_percent: Optional[pulumi.Input[int]] = None, minimum_healthy_percent: Optional[pulumi.Input[int]] = None): """ - Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. :param pulumi.Input['ServiceDeploymentAlarmsArgs'] alarms: Information about the CloudWatch alarms. :param pulumi.Input['ServiceDeploymentCircuitBreakerArgs'] deployment_circuit_breaker: The deployment circuit breaker can only be used for services using the rolling update (``ECS``) deployment type. The *deployment circuit breaker* determines whether a service deployment will fail if the service can't reach a steady state. If you use the deployment circuit breaker, a service deployment will transition to a failed state and stop launching new tasks. If you use the rollback option, when a service deployment fails, the service is rolled back to the last deployment that completed successfully. For more information, see [Rolling update](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html) in the *Amazon Elastic Container Service Developer Guide* @@ -2016,7 +2018,7 @@ class ServiceLoadBalancerArgsDict(TypedDict): """ load_balancer_name: NotRequired[pulumi.Input[str]] """ - The name of the load balancer to associate with the service or task set. + The name of the load balancer to associate with the Amazon ECS service or task set. If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. """ target_group_arn: NotRequired[pulumi.Input[str]] @@ -2044,7 +2046,7 @@ def __init__(__self__, *, :param pulumi.Input[str] container_name: The name of the container (as it appears in a container definition) to associate with the load balancer. You need to specify the container name when configuring the target group for an Amazon ECS load balancer. :param pulumi.Input[int] container_port: The port on the container to associate with the load balancer. This port must correspond to a ``containerPort`` in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they're launched on must allow ingress traffic on the ``hostPort`` of the port mapping. - :param pulumi.Input[str] load_balancer_name: The name of the load balancer to associate with the service or task set. + :param pulumi.Input[str] load_balancer_name: The name of the load balancer to associate with the Amazon ECS service or task set. If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. :param pulumi.Input[str] target_group_arn: The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group or groups associated with a service or task set. A target group ARN is only specified when using an Application Load Balancer or Network Load Balancer. @@ -2090,7 +2092,7 @@ def container_port(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="loadBalancerName") def load_balancer_name(self) -> Optional[pulumi.Input[str]]: """ - The name of the load balancer to associate with the service or task set. + The name of the load balancer to associate with the Amazon ECS service or task set. If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. """ return pulumi.get(self, "load_balancer_name") @@ -3049,6 +3051,52 @@ def managed_ebs_volume(self, value: Optional[pulumi.Input['ServiceManagedEbsVolu pulumi.set(self, "managed_ebs_volume", value) +if not MYPY: + class ServiceVpcLatticeConfigurationArgsDict(TypedDict): + port_name: pulumi.Input[str] + role_arn: pulumi.Input[str] + target_group_arn: pulumi.Input[str] +elif False: + ServiceVpcLatticeConfigurationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class ServiceVpcLatticeConfigurationArgs: + def __init__(__self__, *, + port_name: pulumi.Input[str], + role_arn: pulumi.Input[str], + target_group_arn: pulumi.Input[str]): + pulumi.set(__self__, "port_name", port_name) + pulumi.set(__self__, "role_arn", role_arn) + pulumi.set(__self__, "target_group_arn", target_group_arn) + + @property + @pulumi.getter(name="portName") + def port_name(self) -> pulumi.Input[str]: + return pulumi.get(self, "port_name") + + @port_name.setter + def port_name(self, value: pulumi.Input[str]): + pulumi.set(self, "port_name", 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(name="targetGroupArn") + def target_group_arn(self) -> pulumi.Input[str]: + return pulumi.get(self, "target_group_arn") + + @target_group_arn.setter + def target_group_arn(self, value: pulumi.Input[str]): + pulumi.set(self, "target_group_arn", value) + + if not MYPY: class TaskDefinitionAuthorizationConfigArgsDict(TypedDict): """ diff --git a/sdk/python/pulumi_aws_native/ecs/get_service.py b/sdk/python/pulumi_aws_native/ecs/get_service.py index 0a277dbe5e..ed3ac7cc95 100644 --- a/sdk/python/pulumi_aws_native/ecs/get_service.py +++ b/sdk/python/pulumi_aws_native/ecs/get_service.py @@ -26,7 +26,10 @@ @pulumi.output_type class GetServiceResult: - def __init__(__self__, capacity_provider_strategy=None, deployment_configuration=None, desired_count=None, enable_ecs_managed_tags=None, enable_execute_command=None, health_check_grace_period_seconds=None, load_balancers=None, name=None, network_configuration=None, placement_constraints=None, placement_strategies=None, platform_version=None, propagate_tags=None, service_arn=None, service_registries=None, tags=None, task_definition=None): + def __init__(__self__, availability_zone_rebalancing=None, capacity_provider_strategy=None, deployment_configuration=None, desired_count=None, enable_ecs_managed_tags=None, enable_execute_command=None, health_check_grace_period_seconds=None, load_balancers=None, name=None, network_configuration=None, placement_constraints=None, placement_strategies=None, platform_version=None, propagate_tags=None, service_arn=None, service_registries=None, tags=None, task_definition=None, vpc_lattice_configurations=None): + if availability_zone_rebalancing and not isinstance(availability_zone_rebalancing, str): + raise TypeError("Expected argument 'availability_zone_rebalancing' to be a str") + pulumi.set(__self__, "availability_zone_rebalancing", availability_zone_rebalancing) if capacity_provider_strategy and not isinstance(capacity_provider_strategy, list): raise TypeError("Expected argument 'capacity_provider_strategy' to be a list") pulumi.set(__self__, "capacity_provider_strategy", capacity_provider_strategy) @@ -78,6 +81,14 @@ def __init__(__self__, capacity_provider_strategy=None, deployment_configuration if task_definition and not isinstance(task_definition, str): raise TypeError("Expected argument 'task_definition' to be a str") pulumi.set(__self__, "task_definition", task_definition) + if vpc_lattice_configurations and not isinstance(vpc_lattice_configurations, list): + raise TypeError("Expected argument 'vpc_lattice_configurations' to be a list") + pulumi.set(__self__, "vpc_lattice_configurations", vpc_lattice_configurations) + + @property + @pulumi.getter(name="availabilityZoneRebalancing") + def availability_zone_rebalancing(self) -> Optional['ServiceAvailabilityZoneRebalancing']: + return pulumi.get(self, "availability_zone_rebalancing") @property @pulumi.getter(name="capacityProviderStrategy") @@ -93,7 +104,7 @@ def capacity_provider_strategy(self) -> Optional[Sequence['outputs.ServiceCapaci @pulumi.getter(name="deploymentConfiguration") def deployment_configuration(self) -> Optional['outputs.ServiceDeploymentConfiguration']: """ - Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. """ return pulumi.get(self, "deployment_configuration") @@ -235,6 +246,11 @@ def task_definition(self) -> Optional[str]: """ return pulumi.get(self, "task_definition") + @property + @pulumi.getter(name="vpcLatticeConfigurations") + def vpc_lattice_configurations(self) -> Optional[Sequence['outputs.ServiceVpcLatticeConfiguration']]: + return pulumi.get(self, "vpc_lattice_configurations") + class AwaitableGetServiceResult(GetServiceResult): # pylint: disable=using-constant-test @@ -242,6 +258,7 @@ def __await__(self): if False: yield self return GetServiceResult( + availability_zone_rebalancing=self.availability_zone_rebalancing, capacity_provider_strategy=self.capacity_provider_strategy, deployment_configuration=self.deployment_configuration, desired_count=self.desired_count, @@ -258,7 +275,8 @@ def __await__(self): service_arn=self.service_arn, service_registries=self.service_registries, tags=self.tags, - task_definition=self.task_definition) + task_definition=self.task_definition, + vpc_lattice_configurations=self.vpc_lattice_configurations) def get_service(cluster: Optional[str] = None, @@ -280,6 +298,7 @@ def get_service(cluster: Optional[str] = None, __ret__ = pulumi.runtime.invoke('aws-native:ecs:getService', __args__, opts=opts, typ=GetServiceResult).value return AwaitableGetServiceResult( + availability_zone_rebalancing=pulumi.get(__ret__, 'availability_zone_rebalancing'), capacity_provider_strategy=pulumi.get(__ret__, 'capacity_provider_strategy'), deployment_configuration=pulumi.get(__ret__, 'deployment_configuration'), desired_count=pulumi.get(__ret__, 'desired_count'), @@ -296,7 +315,8 @@ def get_service(cluster: Optional[str] = None, service_arn=pulumi.get(__ret__, 'service_arn'), service_registries=pulumi.get(__ret__, 'service_registries'), tags=pulumi.get(__ret__, 'tags'), - task_definition=pulumi.get(__ret__, 'task_definition')) + task_definition=pulumi.get(__ret__, 'task_definition'), + vpc_lattice_configurations=pulumi.get(__ret__, 'vpc_lattice_configurations')) def get_service_output(cluster: Optional[pulumi.Input[str]] = None, service_arn: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetServiceResult]: @@ -315,6 +335,7 @@ def get_service_output(cluster: Optional[pulumi.Input[str]] = None, opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts) __ret__ = pulumi.runtime.invoke_output('aws-native:ecs:getService', __args__, opts=opts, typ=GetServiceResult) return __ret__.apply(lambda __response__: GetServiceResult( + availability_zone_rebalancing=pulumi.get(__response__, 'availability_zone_rebalancing'), capacity_provider_strategy=pulumi.get(__response__, 'capacity_provider_strategy'), deployment_configuration=pulumi.get(__response__, 'deployment_configuration'), desired_count=pulumi.get(__response__, 'desired_count'), @@ -331,4 +352,5 @@ def get_service_output(cluster: Optional[pulumi.Input[str]] = None, service_arn=pulumi.get(__response__, 'service_arn'), service_registries=pulumi.get(__response__, 'service_registries'), tags=pulumi.get(__response__, 'tags'), - task_definition=pulumi.get(__response__, 'task_definition'))) + task_definition=pulumi.get(__response__, 'task_definition'), + vpc_lattice_configurations=pulumi.get(__response__, 'vpc_lattice_configurations'))) diff --git a/sdk/python/pulumi_aws_native/ecs/outputs.py b/sdk/python/pulumi_aws_native/ecs/outputs.py index 936c8772aa..27da2de85c 100644 --- a/sdk/python/pulumi_aws_native/ecs/outputs.py +++ b/sdk/python/pulumi_aws_native/ecs/outputs.py @@ -50,6 +50,7 @@ 'ServiceTag', 'ServiceTimeoutConfiguration', 'ServiceVolumeConfiguration', + 'ServiceVpcLatticeConfiguration', 'TaskDefinitionAuthorizationConfig', 'TaskDefinitionContainerDefinition', 'TaskDefinitionContainerDependency', @@ -1378,7 +1379,7 @@ def rollback(self) -> bool: @pulumi.output_type class ServiceDeploymentConfiguration(dict): """ - Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. """ @staticmethod def __key_warning(key: str): @@ -1407,7 +1408,7 @@ def __init__(__self__, *, maximum_percent: Optional[int] = None, minimum_healthy_percent: Optional[int] = None): """ - Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + Optional deployment parameters that control how many tasks run during a deployment and the ordering of stopping and starting tasks. :param 'ServiceDeploymentAlarms' alarms: Information about the CloudWatch alarms. :param 'ServiceDeploymentCircuitBreaker' deployment_circuit_breaker: The deployment circuit breaker can only be used for services using the rolling update (``ECS``) deployment type. The *deployment circuit breaker* determines whether a service deployment will fail if the service can't reach a steady state. If you use the deployment circuit breaker, a service deployment will transition to a failed state and stop launching new tasks. If you use the rollback option, when a service deployment fails, the service is rolled back to the last deployment that completed successfully. For more information, see [Rolling update](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html) in the *Amazon Elastic Container Service Developer Guide* @@ -1629,7 +1630,7 @@ def __init__(__self__, *, :param str container_name: The name of the container (as it appears in a container definition) to associate with the load balancer. You need to specify the container name when configuring the target group for an Amazon ECS load balancer. :param int container_port: The port on the container to associate with the load balancer. This port must correspond to a ``containerPort`` in the task definition the tasks in the service are using. For tasks that use the EC2 launch type, the container instance they're launched on must allow ingress traffic on the ``hostPort`` of the port mapping. - :param str load_balancer_name: The name of the load balancer to associate with the service or task set. + :param str load_balancer_name: The name of the load balancer to associate with the Amazon ECS service or task set. If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. :param str target_group_arn: The full Amazon Resource Name (ARN) of the Elastic Load Balancing target group or groups associated with a service or task set. A target group ARN is only specified when using an Application Load Balancer or Network Load Balancer. @@ -1667,7 +1668,7 @@ def container_port(self) -> Optional[int]: @pulumi.getter(name="loadBalancerName") def load_balancer_name(self) -> Optional[str]: """ - The name of the load balancer to associate with the service or task set. + The name of the load balancer to associate with the Amazon ECS service or task set. If you are using an Application Load Balancer or a Network Load Balancer the load balancer name parameter should be omitted. """ return pulumi.get(self, "load_balancer_name") @@ -2424,6 +2425,53 @@ def managed_ebs_volume(self) -> Optional['outputs.ServiceManagedEbsVolumeConfigu return pulumi.get(self, "managed_ebs_volume") +@pulumi.output_type +class ServiceVpcLatticeConfiguration(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "portName": + suggest = "port_name" + elif key == "roleArn": + suggest = "role_arn" + elif key == "targetGroupArn": + suggest = "target_group_arn" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in ServiceVpcLatticeConfiguration. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + ServiceVpcLatticeConfiguration.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + ServiceVpcLatticeConfiguration.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + port_name: str, + role_arn: str, + target_group_arn: str): + pulumi.set(__self__, "port_name", port_name) + pulumi.set(__self__, "role_arn", role_arn) + pulumi.set(__self__, "target_group_arn", target_group_arn) + + @property + @pulumi.getter(name="portName") + def port_name(self) -> str: + return pulumi.get(self, "port_name") + + @property + @pulumi.getter(name="roleArn") + def role_arn(self) -> str: + return pulumi.get(self, "role_arn") + + @property + @pulumi.getter(name="targetGroupArn") + def target_group_arn(self) -> str: + return pulumi.get(self, "target_group_arn") + + @pulumi.output_type class TaskDefinitionAuthorizationConfig(dict): """ diff --git a/sdk/python/pulumi_aws_native/ecs/service.py b/sdk/python/pulumi_aws_native/ecs/service.py index 18d5bf69ab..62e5499365 100644 --- a/sdk/python/pulumi_aws_native/ecs/service.py +++ b/sdk/python/pulumi_aws_native/ecs/service.py @@ -24,6 +24,7 @@ @pulumi.input_type class ServiceArgs: def __init__(__self__, *, + availability_zone_rebalancing: Optional[pulumi.Input['ServiceAvailabilityZoneRebalancing']] = None, capacity_provider_strategy: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceCapacityProviderStrategyItemArgs']]]] = None, cluster: Optional[pulumi.Input[str]] = None, deployment_configuration: Optional[pulumi.Input['ServiceDeploymentConfigurationArgs']] = None, @@ -46,14 +47,15 @@ def __init__(__self__, *, service_registries: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceRegistryArgs']]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None, task_definition: Optional[pulumi.Input[str]] = None, - volume_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceVolumeConfigurationArgs']]]] = None): + volume_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceVolumeConfigurationArgs']]]] = None, + vpc_lattice_configurations: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceVpcLatticeConfigurationArgs']]]] = None): """ The set of arguments for constructing a Service resource. :param pulumi.Input[Sequence[pulumi.Input['ServiceCapacityProviderStrategyItemArgs']]] capacity_provider_strategy: The capacity provider strategy to use for the service. If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. A capacity provider strategy may contain a maximum of 6 capacity providers. :param pulumi.Input[str] cluster: The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed. - :param pulumi.Input['ServiceDeploymentConfigurationArgs'] deployment_configuration: Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + :param pulumi.Input['ServiceDeploymentConfigurationArgs'] deployment_configuration: Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. :param pulumi.Input['ServiceDeploymentControllerArgs'] deployment_controller: The deployment controller to use for the service. If no deployment controller is specified, the default value of ``ECS`` is used. :param pulumi.Input[int] desired_count: The number of instantiations of the specified task definition to place and keep running in your service. For new services, if a desired count is not specified, a default value of ``1`` is used. When using the ``DAEMON`` scheduling strategy, the desired count is not required. @@ -101,6 +103,8 @@ def __init__(__self__, *, For more information about deployment types, see [Amazon ECS deployment types](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-types.html). :param pulumi.Input[Sequence[pulumi.Input['ServiceVolumeConfigurationArgs']]] volume_configurations: The configuration for a volume specified in the task definition as a volume that is configured at launch time. Currently, the only supported volume type is an Amazon EBS volume. """ + if availability_zone_rebalancing is not None: + pulumi.set(__self__, "availability_zone_rebalancing", availability_zone_rebalancing) if capacity_provider_strategy is not None: pulumi.set(__self__, "capacity_provider_strategy", capacity_provider_strategy) if cluster is not None: @@ -147,6 +151,17 @@ def __init__(__self__, *, pulumi.set(__self__, "task_definition", task_definition) if volume_configurations is not None: pulumi.set(__self__, "volume_configurations", volume_configurations) + if vpc_lattice_configurations is not None: + pulumi.set(__self__, "vpc_lattice_configurations", vpc_lattice_configurations) + + @property + @pulumi.getter(name="availabilityZoneRebalancing") + def availability_zone_rebalancing(self) -> Optional[pulumi.Input['ServiceAvailabilityZoneRebalancing']]: + return pulumi.get(self, "availability_zone_rebalancing") + + @availability_zone_rebalancing.setter + def availability_zone_rebalancing(self, value: Optional[pulumi.Input['ServiceAvailabilityZoneRebalancing']]): + pulumi.set(self, "availability_zone_rebalancing", value) @property @pulumi.getter(name="capacityProviderStrategy") @@ -178,7 +193,7 @@ def cluster(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="deploymentConfiguration") def deployment_configuration(self) -> Optional[pulumi.Input['ServiceDeploymentConfigurationArgs']]: """ - Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. """ return pulumi.get(self, "deployment_configuration") @@ -452,12 +467,22 @@ def volume_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[' def volume_configurations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceVolumeConfigurationArgs']]]]): pulumi.set(self, "volume_configurations", value) + @property + @pulumi.getter(name="vpcLatticeConfigurations") + def vpc_lattice_configurations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ServiceVpcLatticeConfigurationArgs']]]]: + return pulumi.get(self, "vpc_lattice_configurations") + + @vpc_lattice_configurations.setter + def vpc_lattice_configurations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ServiceVpcLatticeConfigurationArgs']]]]): + pulumi.set(self, "vpc_lattice_configurations", value) + class Service(pulumi.CustomResource): @overload def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + availability_zone_rebalancing: Optional[pulumi.Input['ServiceAvailabilityZoneRebalancing']] = None, capacity_provider_strategy: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServiceCapacityProviderStrategyItemArgs', 'ServiceCapacityProviderStrategyItemArgsDict']]]]] = None, cluster: Optional[pulumi.Input[str]] = None, deployment_configuration: Optional[pulumi.Input[Union['ServiceDeploymentConfigurationArgs', 'ServiceDeploymentConfigurationArgsDict']]] = None, @@ -481,6 +506,7 @@ def __init__(__self__, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, task_definition: Optional[pulumi.Input[str]] = None, volume_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServiceVolumeConfigurationArgs', 'ServiceVolumeConfigurationArgsDict']]]]] = None, + vpc_lattice_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServiceVpcLatticeConfigurationArgs', 'ServiceVpcLatticeConfigurationArgsDict']]]]] = None, __props__=None): """ The ``AWS::ECS::Service`` resource creates an Amazon Elastic Container Service (Amazon ECS) service that runs and maintains the requested number of tasks and associated load balancers. @@ -493,7 +519,7 @@ def __init__(__self__, If a ``capacityProviderStrategy`` is specified, the ``launchType`` parameter must be omitted. If no ``capacityProviderStrategy`` or ``launchType`` is specified, the ``defaultCapacityProviderStrategy`` for the cluster is used. A capacity provider strategy may contain a maximum of 6 capacity providers. :param pulumi.Input[str] cluster: The short name or full Amazon Resource Name (ARN) of the cluster that you run your service on. If you do not specify a cluster, the default cluster is assumed. - :param pulumi.Input[Union['ServiceDeploymentConfigurationArgs', 'ServiceDeploymentConfigurationArgsDict']] deployment_configuration: Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + :param pulumi.Input[Union['ServiceDeploymentConfigurationArgs', 'ServiceDeploymentConfigurationArgsDict']] deployment_configuration: Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. :param pulumi.Input[Union['ServiceDeploymentControllerArgs', 'ServiceDeploymentControllerArgsDict']] deployment_controller: The deployment controller to use for the service. If no deployment controller is specified, the default value of ``ECS`` is used. :param pulumi.Input[int] desired_count: The number of instantiations of the specified task definition to place and keep running in your service. For new services, if a desired count is not specified, a default value of ``1`` is used. When using the ``DAEMON`` scheduling strategy, the desired count is not required. @@ -567,6 +593,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + availability_zone_rebalancing: Optional[pulumi.Input['ServiceAvailabilityZoneRebalancing']] = None, capacity_provider_strategy: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServiceCapacityProviderStrategyItemArgs', 'ServiceCapacityProviderStrategyItemArgsDict']]]]] = None, cluster: Optional[pulumi.Input[str]] = None, deployment_configuration: Optional[pulumi.Input[Union['ServiceDeploymentConfigurationArgs', 'ServiceDeploymentConfigurationArgsDict']]] = None, @@ -590,6 +617,7 @@ def _internal_init(__self__, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, task_definition: Optional[pulumi.Input[str]] = None, volume_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServiceVolumeConfigurationArgs', 'ServiceVolumeConfigurationArgsDict']]]]] = None, + vpc_lattice_configurations: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ServiceVpcLatticeConfigurationArgs', 'ServiceVpcLatticeConfigurationArgsDict']]]]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -599,6 +627,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__ = ServiceArgs.__new__(ServiceArgs) + __props__.__dict__["availability_zone_rebalancing"] = availability_zone_rebalancing __props__.__dict__["capacity_provider_strategy"] = capacity_provider_strategy __props__.__dict__["cluster"] = cluster __props__.__dict__["deployment_configuration"] = deployment_configuration @@ -622,6 +651,7 @@ def _internal_init(__self__, __props__.__dict__["tags"] = tags __props__.__dict__["task_definition"] = task_definition __props__.__dict__["volume_configurations"] = volume_configurations + __props__.__dict__["vpc_lattice_configurations"] = vpc_lattice_configurations __props__.__dict__["name"] = None __props__.__dict__["service_arn"] = None replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["cluster", "deploymentController", "launchType", "role", "schedulingStrategy", "serviceName"]) @@ -648,6 +678,7 @@ def get(resource_name: str, __props__ = ServiceArgs.__new__(ServiceArgs) + __props__.__dict__["availability_zone_rebalancing"] = None __props__.__dict__["capacity_provider_strategy"] = None __props__.__dict__["cluster"] = None __props__.__dict__["deployment_configuration"] = None @@ -673,8 +704,14 @@ def get(resource_name: str, __props__.__dict__["tags"] = None __props__.__dict__["task_definition"] = None __props__.__dict__["volume_configurations"] = None + __props__.__dict__["vpc_lattice_configurations"] = None return Service(resource_name, opts=opts, __props__=__props__) + @property + @pulumi.getter(name="availabilityZoneRebalancing") + def availability_zone_rebalancing(self) -> pulumi.Output[Optional['ServiceAvailabilityZoneRebalancing']]: + return pulumi.get(self, "availability_zone_rebalancing") + @property @pulumi.getter(name="capacityProviderStrategy") def capacity_provider_strategy(self) -> pulumi.Output[Optional[Sequence['outputs.ServiceCapacityProviderStrategyItem']]]: @@ -697,7 +734,7 @@ def cluster(self) -> pulumi.Output[Optional[str]]: @pulumi.getter(name="deploymentConfiguration") def deployment_configuration(self) -> pulumi.Output[Optional['outputs.ServiceDeploymentConfiguration']]: """ - Optional deployment parameters that control how many tasks run during the deployment and the failure detection methods. + Optional deployment parameters that control how many tasks run during the deployment and the ordering of stopping and starting tasks. """ return pulumi.get(self, "deployment_configuration") @@ -903,3 +940,8 @@ def volume_configurations(self) -> pulumi.Output[Optional[Sequence['outputs.Serv """ return pulumi.get(self, "volume_configurations") + @property + @pulumi.getter(name="vpcLatticeConfigurations") + def vpc_lattice_configurations(self) -> pulumi.Output[Optional[Sequence['outputs.ServiceVpcLatticeConfiguration']]]: + return pulumi.get(self, "vpc_lattice_configurations") + diff --git a/sdk/python/pulumi_aws_native/gamelift/_enums.py b/sdk/python/pulumi_aws_native/gamelift/_enums.py index b52cf20ddf..77bff347c6 100644 --- a/sdk/python/pulumi_aws_native/gamelift/_enums.py +++ b/sdk/python/pulumi_aws_native/gamelift/_enums.py @@ -7,10 +7,7 @@ __all__ = [ 'AliasRoutingStrategyType', 'BuildOperatingSystem', - 'ContainerGroupDefinitionContainerDependencyCondition', - 'ContainerGroupDefinitionContainerPortRangeProtocol', 'ContainerGroupDefinitionOperatingSystem', - 'ContainerGroupDefinitionSchedulingStrategy', 'ContainerGroupDefinitionStatus', 'FleetApplyCapacity', 'FleetCertificateConfigurationCertificateType', @@ -53,24 +50,6 @@ class BuildOperatingSystem(str, Enum): WINDOWS2016 = "WINDOWS_2016" -class ContainerGroupDefinitionContainerDependencyCondition(str, Enum): - """ - The type of dependency. - """ - START = "START" - COMPLETE = "COMPLETE" - SUCCESS = "SUCCESS" - HEALTHY = "HEALTHY" - - -class ContainerGroupDefinitionContainerPortRangeProtocol(str, Enum): - """ - Defines the protocol of these ports. - """ - TCP = "TCP" - UDP = "UDP" - - class ContainerGroupDefinitionOperatingSystem(str, Enum): """ The operating system of the container group @@ -78,14 +57,6 @@ class ContainerGroupDefinitionOperatingSystem(str, Enum): AMAZON_LINUX2023 = "AMAZON_LINUX_2023" -class ContainerGroupDefinitionSchedulingStrategy(str, Enum): - """ - Specifies whether the container group includes replica or daemon containers. - """ - REPLICA = "REPLICA" - DAEMON = "DAEMON" - - class ContainerGroupDefinitionStatus(str, Enum): """ A string indicating ContainerGroupDefinition status. @@ -122,7 +93,6 @@ class FleetComputeType(str, Enum): """ EC2 = "EC2" ANYWHERE = "ANYWHERE" - CONTAINER = "CONTAINER" class FleetInstanceRoleCredentialsProvider(str, Enum): diff --git a/sdk/python/pulumi_aws_native/gamelift/_inputs.py b/sdk/python/pulumi_aws_native/gamelift/_inputs.py index 0477ff0aba..90e3f9e4dc 100644 --- a/sdk/python/pulumi_aws_native/gamelift/_inputs.py +++ b/sdk/python/pulumi_aws_native/gamelift/_inputs.py @@ -20,30 +20,10 @@ 'AliasRoutingStrategyArgsDict', 'BuildStorageLocationArgs', 'BuildStorageLocationArgsDict', - 'ContainerGroupDefinitionContainerDefinitionArgs', - 'ContainerGroupDefinitionContainerDefinitionArgsDict', - 'ContainerGroupDefinitionContainerDependencyArgs', - 'ContainerGroupDefinitionContainerDependencyArgsDict', - 'ContainerGroupDefinitionContainerEnvironmentArgs', - 'ContainerGroupDefinitionContainerEnvironmentArgsDict', - 'ContainerGroupDefinitionContainerHealthCheckArgs', - 'ContainerGroupDefinitionContainerHealthCheckArgsDict', - 'ContainerGroupDefinitionContainerPortRangeArgs', - 'ContainerGroupDefinitionContainerPortRangeArgsDict', - 'ContainerGroupDefinitionMemoryLimitsArgs', - 'ContainerGroupDefinitionMemoryLimitsArgsDict', - 'ContainerGroupDefinitionPortConfigurationArgs', - 'ContainerGroupDefinitionPortConfigurationArgsDict', 'FleetAnywhereConfigurationArgs', 'FleetAnywhereConfigurationArgsDict', 'FleetCertificateConfigurationArgs', 'FleetCertificateConfigurationArgsDict', - 'FleetConnectionPortRangeArgs', - 'FleetConnectionPortRangeArgsDict', - 'FleetContainerGroupsConfigurationArgs', - 'FleetContainerGroupsConfigurationArgsDict', - 'FleetContainerGroupsPerInstanceArgs', - 'FleetContainerGroupsPerInstanceArgsDict', 'FleetIpPermissionArgs', 'FleetIpPermissionArgsDict', 'FleetLocationCapacityArgs', @@ -244,667 +224,6 @@ def object_version(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "object_version", value) -if not MYPY: - class ContainerGroupDefinitionContainerDefinitionArgsDict(TypedDict): - """ - Details about a container that is used in a container fleet - """ - container_name: pulumi.Input[str] - """ - A descriptive label for the container definition. Container definition names must be unique with a container group definition. - """ - image_uri: pulumi.Input[str] - """ - Specifies the image URI of this container. - """ - command: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] - """ - The command that's passed to the container. - """ - cpu: NotRequired[pulumi.Input[int]] - """ - The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - """ - depends_on: NotRequired[pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDependencyArgsDict']]]] - """ - A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - """ - entry_point: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] - """ - The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - """ - environment: NotRequired[pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerEnvironmentArgsDict']]]] - """ - The environment variables to pass to a container. - """ - essential: NotRequired[pulumi.Input[bool]] - """ - Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - """ - health_check: NotRequired[pulumi.Input['ContainerGroupDefinitionContainerHealthCheckArgsDict']] - """ - Specifies how the health of the containers will be checked. - """ - memory_limits: NotRequired[pulumi.Input['ContainerGroupDefinitionMemoryLimitsArgsDict']] - """ - Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - """ - port_configuration: NotRequired[pulumi.Input['ContainerGroupDefinitionPortConfigurationArgsDict']] - """ - Defines the ports on the container. - """ - resolved_image_digest: NotRequired[pulumi.Input[str]] - """ - The digest of the container image. - """ - working_directory: NotRequired[pulumi.Input[str]] - """ - The working directory to run commands inside the container in. - """ -elif False: - ContainerGroupDefinitionContainerDefinitionArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class ContainerGroupDefinitionContainerDefinitionArgs: - def __init__(__self__, *, - container_name: pulumi.Input[str], - image_uri: pulumi.Input[str], - command: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - cpu: Optional[pulumi.Input[int]] = None, - depends_on: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDependencyArgs']]]] = None, - entry_point: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - environment: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerEnvironmentArgs']]]] = None, - essential: Optional[pulumi.Input[bool]] = None, - health_check: Optional[pulumi.Input['ContainerGroupDefinitionContainerHealthCheckArgs']] = None, - memory_limits: Optional[pulumi.Input['ContainerGroupDefinitionMemoryLimitsArgs']] = None, - port_configuration: Optional[pulumi.Input['ContainerGroupDefinitionPortConfigurationArgs']] = None, - resolved_image_digest: Optional[pulumi.Input[str]] = None, - working_directory: Optional[pulumi.Input[str]] = None): - """ - Details about a container that is used in a container fleet - :param pulumi.Input[str] container_name: A descriptive label for the container definition. Container definition names must be unique with a container group definition. - :param pulumi.Input[str] image_uri: Specifies the image URI of this container. - :param pulumi.Input[Sequence[pulumi.Input[str]]] command: The command that's passed to the container. - :param pulumi.Input[int] cpu: The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - :param pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDependencyArgs']]] depends_on: A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - :param pulumi.Input[Sequence[pulumi.Input[str]]] entry_point: The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - :param pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerEnvironmentArgs']]] environment: The environment variables to pass to a container. - :param pulumi.Input[bool] essential: Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - :param pulumi.Input['ContainerGroupDefinitionContainerHealthCheckArgs'] health_check: Specifies how the health of the containers will be checked. - :param pulumi.Input['ContainerGroupDefinitionMemoryLimitsArgs'] memory_limits: Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - :param pulumi.Input['ContainerGroupDefinitionPortConfigurationArgs'] port_configuration: Defines the ports on the container. - :param pulumi.Input[str] resolved_image_digest: The digest of the container image. - :param pulumi.Input[str] working_directory: The working directory to run commands inside the container in. - """ - pulumi.set(__self__, "container_name", container_name) - pulumi.set(__self__, "image_uri", image_uri) - if command is not None: - pulumi.set(__self__, "command", command) - if cpu is not None: - pulumi.set(__self__, "cpu", cpu) - if depends_on is not None: - pulumi.set(__self__, "depends_on", depends_on) - if entry_point is not None: - pulumi.set(__self__, "entry_point", entry_point) - if environment is not None: - pulumi.set(__self__, "environment", environment) - if essential is not None: - pulumi.set(__self__, "essential", essential) - if health_check is not None: - pulumi.set(__self__, "health_check", health_check) - if memory_limits is not None: - pulumi.set(__self__, "memory_limits", memory_limits) - if port_configuration is not None: - pulumi.set(__self__, "port_configuration", port_configuration) - if resolved_image_digest is not None: - pulumi.set(__self__, "resolved_image_digest", resolved_image_digest) - if working_directory is not None: - pulumi.set(__self__, "working_directory", working_directory) - - @property - @pulumi.getter(name="containerName") - def container_name(self) -> pulumi.Input[str]: - """ - A descriptive label for the container definition. Container definition names must be unique with a container group definition. - """ - return pulumi.get(self, "container_name") - - @container_name.setter - def container_name(self, value: pulumi.Input[str]): - pulumi.set(self, "container_name", value) - - @property - @pulumi.getter(name="imageUri") - def image_uri(self) -> pulumi.Input[str]: - """ - Specifies the image URI of this container. - """ - return pulumi.get(self, "image_uri") - - @image_uri.setter - def image_uri(self, value: pulumi.Input[str]): - pulumi.set(self, "image_uri", value) - - @property - @pulumi.getter - def command(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The command that's passed to the container. - """ - return pulumi.get(self, "command") - - @command.setter - def command(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "command", value) - - @property - @pulumi.getter - def cpu(self) -> Optional[pulumi.Input[int]]: - """ - The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - """ - return pulumi.get(self, "cpu") - - @cpu.setter - def cpu(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "cpu", value) - - @property - @pulumi.getter(name="dependsOn") - def depends_on(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDependencyArgs']]]]: - """ - A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - """ - return pulumi.get(self, "depends_on") - - @depends_on.setter - def depends_on(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDependencyArgs']]]]): - pulumi.set(self, "depends_on", value) - - @property - @pulumi.getter(name="entryPoint") - def entry_point(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - """ - The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - """ - return pulumi.get(self, "entry_point") - - @entry_point.setter - def entry_point(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "entry_point", value) - - @property - @pulumi.getter - def environment(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerEnvironmentArgs']]]]: - """ - The environment variables to pass to a container. - """ - return pulumi.get(self, "environment") - - @environment.setter - def environment(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerEnvironmentArgs']]]]): - pulumi.set(self, "environment", value) - - @property - @pulumi.getter - def essential(self) -> Optional[pulumi.Input[bool]]: - """ - Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - """ - return pulumi.get(self, "essential") - - @essential.setter - def essential(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "essential", value) - - @property - @pulumi.getter(name="healthCheck") - def health_check(self) -> Optional[pulumi.Input['ContainerGroupDefinitionContainerHealthCheckArgs']]: - """ - Specifies how the health of the containers will be checked. - """ - return pulumi.get(self, "health_check") - - @health_check.setter - def health_check(self, value: Optional[pulumi.Input['ContainerGroupDefinitionContainerHealthCheckArgs']]): - pulumi.set(self, "health_check", value) - - @property - @pulumi.getter(name="memoryLimits") - def memory_limits(self) -> Optional[pulumi.Input['ContainerGroupDefinitionMemoryLimitsArgs']]: - """ - Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - """ - return pulumi.get(self, "memory_limits") - - @memory_limits.setter - def memory_limits(self, value: Optional[pulumi.Input['ContainerGroupDefinitionMemoryLimitsArgs']]): - pulumi.set(self, "memory_limits", value) - - @property - @pulumi.getter(name="portConfiguration") - def port_configuration(self) -> Optional[pulumi.Input['ContainerGroupDefinitionPortConfigurationArgs']]: - """ - Defines the ports on the container. - """ - return pulumi.get(self, "port_configuration") - - @port_configuration.setter - def port_configuration(self, value: Optional[pulumi.Input['ContainerGroupDefinitionPortConfigurationArgs']]): - pulumi.set(self, "port_configuration", value) - - @property - @pulumi.getter(name="resolvedImageDigest") - def resolved_image_digest(self) -> Optional[pulumi.Input[str]]: - """ - The digest of the container image. - """ - return pulumi.get(self, "resolved_image_digest") - - @resolved_image_digest.setter - def resolved_image_digest(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "resolved_image_digest", value) - - @property - @pulumi.getter(name="workingDirectory") - def working_directory(self) -> Optional[pulumi.Input[str]]: - """ - The working directory to run commands inside the container in. - """ - return pulumi.get(self, "working_directory") - - @working_directory.setter - def working_directory(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "working_directory", value) - - -if not MYPY: - class ContainerGroupDefinitionContainerDependencyArgsDict(TypedDict): - """ - A dependency that impacts a container's startup and shutdown. - """ - condition: pulumi.Input['ContainerGroupDefinitionContainerDependencyCondition'] - """ - The type of dependency. - """ - container_name: pulumi.Input[str] - """ - A descriptive label for the container definition. The container being defined depends on this container's condition. - """ -elif False: - ContainerGroupDefinitionContainerDependencyArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class ContainerGroupDefinitionContainerDependencyArgs: - def __init__(__self__, *, - condition: pulumi.Input['ContainerGroupDefinitionContainerDependencyCondition'], - container_name: pulumi.Input[str]): - """ - A dependency that impacts a container's startup and shutdown. - :param pulumi.Input['ContainerGroupDefinitionContainerDependencyCondition'] condition: The type of dependency. - :param pulumi.Input[str] container_name: A descriptive label for the container definition. The container being defined depends on this container's condition. - """ - pulumi.set(__self__, "condition", condition) - pulumi.set(__self__, "container_name", container_name) - - @property - @pulumi.getter - def condition(self) -> pulumi.Input['ContainerGroupDefinitionContainerDependencyCondition']: - """ - The type of dependency. - """ - return pulumi.get(self, "condition") - - @condition.setter - def condition(self, value: pulumi.Input['ContainerGroupDefinitionContainerDependencyCondition']): - pulumi.set(self, "condition", value) - - @property - @pulumi.getter(name="containerName") - def container_name(self) -> pulumi.Input[str]: - """ - A descriptive label for the container definition. The container being defined depends on this container's condition. - """ - return pulumi.get(self, "container_name") - - @container_name.setter - def container_name(self, value: pulumi.Input[str]): - pulumi.set(self, "container_name", value) - - -if not MYPY: - class ContainerGroupDefinitionContainerEnvironmentArgsDict(TypedDict): - """ - An environment variable to set inside a container, in the form of a key-value pair. - """ - name: pulumi.Input[str] - """ - The environment variable name. - """ - value: pulumi.Input[str] - """ - The environment variable value. - """ -elif False: - ContainerGroupDefinitionContainerEnvironmentArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class ContainerGroupDefinitionContainerEnvironmentArgs: - def __init__(__self__, *, - name: pulumi.Input[str], - value: pulumi.Input[str]): - """ - An environment variable to set inside a container, in the form of a key-value pair. - :param pulumi.Input[str] name: The environment variable name. - :param pulumi.Input[str] value: The environment variable value. - """ - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "value", value) - - @property - @pulumi.getter - def name(self) -> pulumi.Input[str]: - """ - The environment variable name. - """ - return pulumi.get(self, "name") - - @name.setter - def name(self, value: pulumi.Input[str]): - pulumi.set(self, "name", value) - - @property - @pulumi.getter - def value(self) -> pulumi.Input[str]: - """ - The environment variable value. - """ - return pulumi.get(self, "value") - - @value.setter - def value(self, value: pulumi.Input[str]): - pulumi.set(self, "value", value) - - -if not MYPY: - class ContainerGroupDefinitionContainerHealthCheckArgsDict(TypedDict): - """ - Specifies how the process manager checks the health of containers. - """ - command: pulumi.Input[Sequence[pulumi.Input[str]]] - """ - A string array representing the command that the container runs to determine if it is healthy. - """ - interval: NotRequired[pulumi.Input[int]] - """ - How often (in seconds) the health is checked. - """ - retries: NotRequired[pulumi.Input[int]] - """ - How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - """ - start_period: NotRequired[pulumi.Input[int]] - """ - The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - """ - timeout: NotRequired[pulumi.Input[int]] - """ - How many seconds the process manager allows the command to run before canceling it. - """ -elif False: - ContainerGroupDefinitionContainerHealthCheckArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class ContainerGroupDefinitionContainerHealthCheckArgs: - def __init__(__self__, *, - command: pulumi.Input[Sequence[pulumi.Input[str]]], - interval: Optional[pulumi.Input[int]] = None, - retries: Optional[pulumi.Input[int]] = None, - start_period: Optional[pulumi.Input[int]] = None, - timeout: Optional[pulumi.Input[int]] = None): - """ - Specifies how the process manager checks the health of containers. - :param pulumi.Input[Sequence[pulumi.Input[str]]] command: A string array representing the command that the container runs to determine if it is healthy. - :param pulumi.Input[int] interval: How often (in seconds) the health is checked. - :param pulumi.Input[int] retries: How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - :param pulumi.Input[int] start_period: The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - :param pulumi.Input[int] timeout: How many seconds the process manager allows the command to run before canceling it. - """ - pulumi.set(__self__, "command", command) - if interval is not None: - pulumi.set(__self__, "interval", interval) - if retries is not None: - pulumi.set(__self__, "retries", retries) - if start_period is not None: - pulumi.set(__self__, "start_period", start_period) - if timeout is not None: - pulumi.set(__self__, "timeout", timeout) - - @property - @pulumi.getter - def command(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - A string array representing the command that the container runs to determine if it is healthy. - """ - return pulumi.get(self, "command") - - @command.setter - def command(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "command", value) - - @property - @pulumi.getter - def interval(self) -> Optional[pulumi.Input[int]]: - """ - How often (in seconds) the health is checked. - """ - return pulumi.get(self, "interval") - - @interval.setter - def interval(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "interval", value) - - @property - @pulumi.getter - def retries(self) -> Optional[pulumi.Input[int]]: - """ - How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - """ - return pulumi.get(self, "retries") - - @retries.setter - def retries(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "retries", value) - - @property - @pulumi.getter(name="startPeriod") - def start_period(self) -> Optional[pulumi.Input[int]]: - """ - The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - """ - return pulumi.get(self, "start_period") - - @start_period.setter - def start_period(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "start_period", value) - - @property - @pulumi.getter - def timeout(self) -> Optional[pulumi.Input[int]]: - """ - How many seconds the process manager allows the command to run before canceling it. - """ - return pulumi.get(self, "timeout") - - @timeout.setter - def timeout(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "timeout", value) - - -if not MYPY: - class ContainerGroupDefinitionContainerPortRangeArgsDict(TypedDict): - """ - A set of one or more port numbers that can be opened on the container. - """ - from_port: pulumi.Input[int] - """ - A starting value for the range of allowed port numbers. - """ - protocol: pulumi.Input['ContainerGroupDefinitionContainerPortRangeProtocol'] - """ - Defines the protocol of these ports. - """ - to_port: pulumi.Input[int] - """ - An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - """ -elif False: - ContainerGroupDefinitionContainerPortRangeArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class ContainerGroupDefinitionContainerPortRangeArgs: - def __init__(__self__, *, - from_port: pulumi.Input[int], - protocol: pulumi.Input['ContainerGroupDefinitionContainerPortRangeProtocol'], - to_port: pulumi.Input[int]): - """ - A set of one or more port numbers that can be opened on the container. - :param pulumi.Input[int] from_port: A starting value for the range of allowed port numbers. - :param pulumi.Input['ContainerGroupDefinitionContainerPortRangeProtocol'] protocol: Defines the protocol of these ports. - :param pulumi.Input[int] to_port: An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - """ - pulumi.set(__self__, "from_port", from_port) - pulumi.set(__self__, "protocol", protocol) - pulumi.set(__self__, "to_port", to_port) - - @property - @pulumi.getter(name="fromPort") - def from_port(self) -> pulumi.Input[int]: - """ - A starting value for the range of allowed port numbers. - """ - return pulumi.get(self, "from_port") - - @from_port.setter - def from_port(self, value: pulumi.Input[int]): - pulumi.set(self, "from_port", value) - - @property - @pulumi.getter - def protocol(self) -> pulumi.Input['ContainerGroupDefinitionContainerPortRangeProtocol']: - """ - Defines the protocol of these ports. - """ - return pulumi.get(self, "protocol") - - @protocol.setter - def protocol(self, value: pulumi.Input['ContainerGroupDefinitionContainerPortRangeProtocol']): - pulumi.set(self, "protocol", value) - - @property - @pulumi.getter(name="toPort") - def to_port(self) -> pulumi.Input[int]: - """ - An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - """ - return pulumi.get(self, "to_port") - - @to_port.setter - def to_port(self, value: pulumi.Input[int]): - pulumi.set(self, "to_port", value) - - -if not MYPY: - class ContainerGroupDefinitionMemoryLimitsArgsDict(TypedDict): - """ - Specifies how much memory is available to the container. - """ - hard_limit: NotRequired[pulumi.Input[int]] - """ - The hard limit of memory to reserve for the container. - """ - soft_limit: NotRequired[pulumi.Input[int]] - """ - The amount of memory that is reserved for the container. - """ -elif False: - ContainerGroupDefinitionMemoryLimitsArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class ContainerGroupDefinitionMemoryLimitsArgs: - def __init__(__self__, *, - hard_limit: Optional[pulumi.Input[int]] = None, - soft_limit: Optional[pulumi.Input[int]] = None): - """ - Specifies how much memory is available to the container. - :param pulumi.Input[int] hard_limit: The hard limit of memory to reserve for the container. - :param pulumi.Input[int] soft_limit: The amount of memory that is reserved for the container. - """ - if hard_limit is not None: - pulumi.set(__self__, "hard_limit", hard_limit) - if soft_limit is not None: - pulumi.set(__self__, "soft_limit", soft_limit) - - @property - @pulumi.getter(name="hardLimit") - def hard_limit(self) -> Optional[pulumi.Input[int]]: - """ - The hard limit of memory to reserve for the container. - """ - return pulumi.get(self, "hard_limit") - - @hard_limit.setter - def hard_limit(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "hard_limit", value) - - @property - @pulumi.getter(name="softLimit") - def soft_limit(self) -> Optional[pulumi.Input[int]]: - """ - The amount of memory that is reserved for the container. - """ - return pulumi.get(self, "soft_limit") - - @soft_limit.setter - def soft_limit(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "soft_limit", value) - - -if not MYPY: - class ContainerGroupDefinitionPortConfigurationArgsDict(TypedDict): - """ - Defines the ports on a container. - """ - container_port_ranges: pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerPortRangeArgsDict']]] - """ - Specifies one or more ranges of ports on a container. - """ -elif False: - ContainerGroupDefinitionPortConfigurationArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class ContainerGroupDefinitionPortConfigurationArgs: - def __init__(__self__, *, - container_port_ranges: pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerPortRangeArgs']]]): - """ - Defines the ports on a container. - :param pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerPortRangeArgs']]] container_port_ranges: Specifies one or more ranges of ports on a container. - """ - pulumi.set(__self__, "container_port_ranges", container_port_ranges) - - @property - @pulumi.getter(name="containerPortRanges") - def container_port_ranges(self) -> pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerPortRangeArgs']]]: - """ - Specifies one or more ranges of ports on a container. - """ - return pulumi.get(self, "container_port_ranges") - - @container_port_ranges.setter - def container_port_ranges(self, value: pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerPortRangeArgs']]]): - pulumi.set(self, "container_port_ranges", value) - - if not MYPY: class FleetAnywhereConfigurationArgsDict(TypedDict): """ @@ -990,207 +309,6 @@ def certificate_type(self, value: pulumi.Input['FleetCertificateConfigurationCer pulumi.set(self, "certificate_type", value) -if not MYPY: - class FleetConnectionPortRangeArgsDict(TypedDict): - """ - Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. - """ - from_port: pulumi.Input[int] - """ - A starting value for a range of allowed port numbers. - """ - to_port: pulumi.Input[int] - """ - An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - """ -elif False: - FleetConnectionPortRangeArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class FleetConnectionPortRangeArgs: - def __init__(__self__, *, - from_port: pulumi.Input[int], - to_port: pulumi.Input[int]): - """ - Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. - :param pulumi.Input[int] from_port: A starting value for a range of allowed port numbers. - :param pulumi.Input[int] to_port: An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - """ - pulumi.set(__self__, "from_port", from_port) - pulumi.set(__self__, "to_port", to_port) - - @property - @pulumi.getter(name="fromPort") - def from_port(self) -> pulumi.Input[int]: - """ - A starting value for a range of allowed port numbers. - """ - return pulumi.get(self, "from_port") - - @from_port.setter - def from_port(self, value: pulumi.Input[int]): - pulumi.set(self, "from_port", value) - - @property - @pulumi.getter(name="toPort") - def to_port(self) -> pulumi.Input[int]: - """ - An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - """ - return pulumi.get(self, "to_port") - - @to_port.setter - def to_port(self, value: pulumi.Input[int]): - pulumi.set(self, "to_port", value) - - -if not MYPY: - class FleetContainerGroupsConfigurationArgsDict(TypedDict): - """ - Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. - """ - connection_port_range: pulumi.Input['FleetConnectionPortRangeArgsDict'] - """ - A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - - Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - - *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - - As a best practice, double the minimum number of connection ports. - - > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - """ - container_group_definition_names: pulumi.Input[Sequence[pulumi.Input[str]]] - """ - The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - """ - container_groups_per_instance: NotRequired[pulumi.Input['FleetContainerGroupsPerInstanceArgsDict']] -elif False: - FleetContainerGroupsConfigurationArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class FleetContainerGroupsConfigurationArgs: - def __init__(__self__, *, - connection_port_range: pulumi.Input['FleetConnectionPortRangeArgs'], - container_group_definition_names: pulumi.Input[Sequence[pulumi.Input[str]]], - container_groups_per_instance: Optional[pulumi.Input['FleetContainerGroupsPerInstanceArgs']] = None): - """ - Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. - :param pulumi.Input['FleetConnectionPortRangeArgs'] connection_port_range: A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - - Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - - *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - - As a best practice, double the minimum number of connection ports. - - > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - :param pulumi.Input[Sequence[pulumi.Input[str]]] container_group_definition_names: The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - """ - pulumi.set(__self__, "connection_port_range", connection_port_range) - pulumi.set(__self__, "container_group_definition_names", container_group_definition_names) - if container_groups_per_instance is not None: - pulumi.set(__self__, "container_groups_per_instance", container_groups_per_instance) - - @property - @pulumi.getter(name="connectionPortRange") - def connection_port_range(self) -> pulumi.Input['FleetConnectionPortRangeArgs']: - """ - A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - - Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - - *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - - As a best practice, double the minimum number of connection ports. - - > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - """ - return pulumi.get(self, "connection_port_range") - - @connection_port_range.setter - def connection_port_range(self, value: pulumi.Input['FleetConnectionPortRangeArgs']): - pulumi.set(self, "connection_port_range", value) - - @property - @pulumi.getter(name="containerGroupDefinitionNames") - def container_group_definition_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: - """ - The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - """ - return pulumi.get(self, "container_group_definition_names") - - @container_group_definition_names.setter - def container_group_definition_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): - pulumi.set(self, "container_group_definition_names", value) - - @property - @pulumi.getter(name="containerGroupsPerInstance") - def container_groups_per_instance(self) -> Optional[pulumi.Input['FleetContainerGroupsPerInstanceArgs']]: - return pulumi.get(self, "container_groups_per_instance") - - @container_groups_per_instance.setter - def container_groups_per_instance(self, value: Optional[pulumi.Input['FleetContainerGroupsPerInstanceArgs']]): - pulumi.set(self, "container_groups_per_instance", value) - - -if not MYPY: - class FleetContainerGroupsPerInstanceArgsDict(TypedDict): - """ - The number of container groups per instance. - """ - desired_replica_container_groups_per_instance: NotRequired[pulumi.Input[int]] - """ - Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - """ - max_replica_container_groups_per_instance: NotRequired[pulumi.Input[int]] - """ - GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - """ -elif False: - FleetContainerGroupsPerInstanceArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class FleetContainerGroupsPerInstanceArgs: - def __init__(__self__, *, - desired_replica_container_groups_per_instance: Optional[pulumi.Input[int]] = None, - max_replica_container_groups_per_instance: Optional[pulumi.Input[int]] = None): - """ - The number of container groups per instance. - :param pulumi.Input[int] desired_replica_container_groups_per_instance: Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - :param pulumi.Input[int] max_replica_container_groups_per_instance: GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - """ - if desired_replica_container_groups_per_instance is not None: - pulumi.set(__self__, "desired_replica_container_groups_per_instance", desired_replica_container_groups_per_instance) - if max_replica_container_groups_per_instance is not None: - pulumi.set(__self__, "max_replica_container_groups_per_instance", max_replica_container_groups_per_instance) - - @property - @pulumi.getter(name="desiredReplicaContainerGroupsPerInstance") - def desired_replica_container_groups_per_instance(self) -> Optional[pulumi.Input[int]]: - """ - Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - """ - return pulumi.get(self, "desired_replica_container_groups_per_instance") - - @desired_replica_container_groups_per_instance.setter - def desired_replica_container_groups_per_instance(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "desired_replica_container_groups_per_instance", value) - - @property - @pulumi.getter(name="maxReplicaContainerGroupsPerInstance") - def max_replica_container_groups_per_instance(self) -> Optional[pulumi.Input[int]]: - """ - GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - """ - return pulumi.get(self, "max_replica_container_groups_per_instance") - - @max_replica_container_groups_per_instance.setter - def max_replica_container_groups_per_instance(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "max_replica_container_groups_per_instance", value) - - if not MYPY: class FleetIpPermissionArgsDict(TypedDict): """ diff --git a/sdk/python/pulumi_aws_native/gamelift/container_group_definition.py b/sdk/python/pulumi_aws_native/gamelift/container_group_definition.py index df963d8318..16b2ba3732 100644 --- a/sdk/python/pulumi_aws_native/gamelift/container_group_definition.py +++ b/sdk/python/pulumi_aws_native/gamelift/container_group_definition.py @@ -13,46 +13,31 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities -from . import outputs from .. import _inputs as _root_inputs from .. import outputs as _root_outputs from ._enums import * -from ._inputs import * __all__ = ['ContainerGroupDefinitionArgs', 'ContainerGroupDefinition'] @pulumi.input_type class ContainerGroupDefinitionArgs: def __init__(__self__, *, - container_definitions: pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDefinitionArgs']]], operating_system: pulumi.Input['ContainerGroupDefinitionOperatingSystem'], - total_cpu_limit: pulumi.Input[int], - total_memory_limit: pulumi.Input[int], name: Optional[pulumi.Input[str]] = None, - scheduling_strategy: Optional[pulumi.Input['ContainerGroupDefinitionSchedulingStrategy']] = None, source_version_number: Optional[pulumi.Input[int]] = None, support_container_definitions: Optional[pulumi.Input[Sequence[Any]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None): """ The set of arguments for constructing a ContainerGroupDefinition resource. - :param pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDefinitionArgs']]] container_definitions: A collection of container definitions that define the containers in this group. :param pulumi.Input['ContainerGroupDefinitionOperatingSystem'] operating_system: The operating system of the container group - :param pulumi.Input[int] total_cpu_limit: The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - :param pulumi.Input[int] total_memory_limit: The maximum amount of memory (in MiB) to allocate for this container group. :param pulumi.Input[str] name: A descriptive label for the container group definition. - :param pulumi.Input['ContainerGroupDefinitionSchedulingStrategy'] scheduling_strategy: Specifies whether the container group includes replica or daemon containers. :param pulumi.Input[int] source_version_number: A specific ContainerGroupDefinition version to be updated :param pulumi.Input[Sequence[Any]] support_container_definitions: A collection of support container definitions that define the containers in this group. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: An array of key-value pairs to apply to this resource. """ - pulumi.set(__self__, "container_definitions", container_definitions) pulumi.set(__self__, "operating_system", operating_system) - pulumi.set(__self__, "total_cpu_limit", total_cpu_limit) - pulumi.set(__self__, "total_memory_limit", total_memory_limit) if name is not None: pulumi.set(__self__, "name", name) - if scheduling_strategy is not None: - pulumi.set(__self__, "scheduling_strategy", scheduling_strategy) if source_version_number is not None: pulumi.set(__self__, "source_version_number", source_version_number) if support_container_definitions is not None: @@ -60,18 +45,6 @@ def __init__(__self__, *, if tags is not None: pulumi.set(__self__, "tags", tags) - @property - @pulumi.getter(name="containerDefinitions") - def container_definitions(self) -> pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDefinitionArgs']]]: - """ - A collection of container definitions that define the containers in this group. - """ - return pulumi.get(self, "container_definitions") - - @container_definitions.setter - def container_definitions(self, value: pulumi.Input[Sequence[pulumi.Input['ContainerGroupDefinitionContainerDefinitionArgs']]]): - pulumi.set(self, "container_definitions", value) - @property @pulumi.getter(name="operatingSystem") def operating_system(self) -> pulumi.Input['ContainerGroupDefinitionOperatingSystem']: @@ -84,30 +57,6 @@ def operating_system(self) -> pulumi.Input['ContainerGroupDefinitionOperatingSys def operating_system(self, value: pulumi.Input['ContainerGroupDefinitionOperatingSystem']): pulumi.set(self, "operating_system", value) - @property - @pulumi.getter(name="totalCpuLimit") - def total_cpu_limit(self) -> pulumi.Input[int]: - """ - The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - """ - return pulumi.get(self, "total_cpu_limit") - - @total_cpu_limit.setter - def total_cpu_limit(self, value: pulumi.Input[int]): - pulumi.set(self, "total_cpu_limit", value) - - @property - @pulumi.getter(name="totalMemoryLimit") - def total_memory_limit(self) -> pulumi.Input[int]: - """ - The maximum amount of memory (in MiB) to allocate for this container group. - """ - return pulumi.get(self, "total_memory_limit") - - @total_memory_limit.setter - def total_memory_limit(self, value: pulumi.Input[int]): - pulumi.set(self, "total_memory_limit", value) - @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -120,18 +69,6 @@ def name(self) -> Optional[pulumi.Input[str]]: def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) - @property - @pulumi.getter(name="schedulingStrategy") - def scheduling_strategy(self) -> Optional[pulumi.Input['ContainerGroupDefinitionSchedulingStrategy']]: - """ - Specifies whether the container group includes replica or daemon containers. - """ - return pulumi.get(self, "scheduling_strategy") - - @scheduling_strategy.setter - def scheduling_strategy(self, value: Optional[pulumi.Input['ContainerGroupDefinitionSchedulingStrategy']]): - pulumi.set(self, "scheduling_strategy", value) - @property @pulumi.getter(name="sourceVersionNumber") def source_version_number(self) -> Optional[pulumi.Input[int]]: @@ -174,30 +111,22 @@ class ContainerGroupDefinition(pulumi.CustomResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, - container_definitions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ContainerGroupDefinitionContainerDefinitionArgs', 'ContainerGroupDefinitionContainerDefinitionArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, operating_system: Optional[pulumi.Input['ContainerGroupDefinitionOperatingSystem']] = None, - scheduling_strategy: Optional[pulumi.Input['ContainerGroupDefinitionSchedulingStrategy']] = None, source_version_number: Optional[pulumi.Input[int]] = None, support_container_definitions: Optional[pulumi.Input[Sequence[Any]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, - total_cpu_limit: Optional[pulumi.Input[int]] = None, - total_memory_limit: Optional[pulumi.Input[int]] = None, __props__=None): """ The AWS::GameLift::ContainerGroupDefinition resource creates an Amazon GameLift container group definition. :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[Union['ContainerGroupDefinitionContainerDefinitionArgs', 'ContainerGroupDefinitionContainerDefinitionArgsDict']]]] container_definitions: A collection of container definitions that define the containers in this group. :param pulumi.Input[str] name: A descriptive label for the container group definition. :param pulumi.Input['ContainerGroupDefinitionOperatingSystem'] operating_system: The operating system of the container group - :param pulumi.Input['ContainerGroupDefinitionSchedulingStrategy'] scheduling_strategy: Specifies whether the container group includes replica or daemon containers. :param pulumi.Input[int] source_version_number: A specific ContainerGroupDefinition version to be updated :param pulumi.Input[Sequence[Any]] support_container_definitions: A collection of support container definitions that define the containers in this group. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: An array of key-value pairs to apply to this resource. - :param pulumi.Input[int] total_cpu_limit: The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - :param pulumi.Input[int] total_memory_limit: The maximum amount of memory (in MiB) to allocate for this container group. """ ... @overload @@ -223,15 +152,11 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, - container_definitions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ContainerGroupDefinitionContainerDefinitionArgs', 'ContainerGroupDefinitionContainerDefinitionArgsDict']]]]] = None, name: Optional[pulumi.Input[str]] = None, operating_system: Optional[pulumi.Input['ContainerGroupDefinitionOperatingSystem']] = None, - scheduling_strategy: Optional[pulumi.Input['ContainerGroupDefinitionSchedulingStrategy']] = None, source_version_number: Optional[pulumi.Input[int]] = None, support_container_definitions: Optional[pulumi.Input[Sequence[Any]]] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, - total_cpu_limit: Optional[pulumi.Input[int]] = None, - total_memory_limit: Optional[pulumi.Input[int]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -241,28 +166,18 @@ 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__ = ContainerGroupDefinitionArgs.__new__(ContainerGroupDefinitionArgs) - if container_definitions is None and not opts.urn: - raise TypeError("Missing required property 'container_definitions'") - __props__.__dict__["container_definitions"] = container_definitions __props__.__dict__["name"] = name if operating_system is None and not opts.urn: raise TypeError("Missing required property 'operating_system'") __props__.__dict__["operating_system"] = operating_system - __props__.__dict__["scheduling_strategy"] = scheduling_strategy __props__.__dict__["source_version_number"] = source_version_number __props__.__dict__["support_container_definitions"] = support_container_definitions __props__.__dict__["tags"] = tags - if total_cpu_limit is None and not opts.urn: - raise TypeError("Missing required property 'total_cpu_limit'") - __props__.__dict__["total_cpu_limit"] = total_cpu_limit - if total_memory_limit is None and not opts.urn: - raise TypeError("Missing required property 'total_memory_limit'") - __props__.__dict__["total_memory_limit"] = total_memory_limit __props__.__dict__["container_group_definition_arn"] = None __props__.__dict__["creation_time"] = None __props__.__dict__["status"] = None __props__.__dict__["status_reason"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["containerDefinitions[*]", "name", "operatingSystem", "schedulingStrategy", "totalCpuLimit", "totalMemoryLimit"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(ContainerGroupDefinition, __self__).__init__( 'aws-native:gamelift:ContainerGroupDefinition', @@ -286,29 +201,17 @@ def get(resource_name: str, __props__ = ContainerGroupDefinitionArgs.__new__(ContainerGroupDefinitionArgs) - __props__.__dict__["container_definitions"] = None __props__.__dict__["container_group_definition_arn"] = None __props__.__dict__["creation_time"] = None __props__.__dict__["name"] = None __props__.__dict__["operating_system"] = None - __props__.__dict__["scheduling_strategy"] = None __props__.__dict__["source_version_number"] = None __props__.__dict__["status"] = None __props__.__dict__["status_reason"] = None __props__.__dict__["support_container_definitions"] = None __props__.__dict__["tags"] = None - __props__.__dict__["total_cpu_limit"] = None - __props__.__dict__["total_memory_limit"] = None return ContainerGroupDefinition(resource_name, opts=opts, __props__=__props__) - @property - @pulumi.getter(name="containerDefinitions") - def container_definitions(self) -> pulumi.Output[Sequence['outputs.ContainerGroupDefinitionContainerDefinition']]: - """ - A collection of container definitions that define the containers in this group. - """ - return pulumi.get(self, "container_definitions") - @property @pulumi.getter(name="containerGroupDefinitionArn") def container_group_definition_arn(self) -> pulumi.Output[str]: @@ -341,14 +244,6 @@ def operating_system(self) -> pulumi.Output['ContainerGroupDefinitionOperatingSy """ return pulumi.get(self, "operating_system") - @property - @pulumi.getter(name="schedulingStrategy") - def scheduling_strategy(self) -> pulumi.Output[Optional['ContainerGroupDefinitionSchedulingStrategy']]: - """ - Specifies whether the container group includes replica or daemon containers. - """ - return pulumi.get(self, "scheduling_strategy") - @property @pulumi.getter(name="sourceVersionNumber") def source_version_number(self) -> pulumi.Output[Optional[int]]: @@ -389,19 +284,3 @@ def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: """ return pulumi.get(self, "tags") - @property - @pulumi.getter(name="totalCpuLimit") - def total_cpu_limit(self) -> pulumi.Output[int]: - """ - The maximum number of CPU units reserved for this container group. The value is expressed as an integer amount of CPU units. (1 vCPU is equal to 1024 CPU units.) - """ - return pulumi.get(self, "total_cpu_limit") - - @property - @pulumi.getter(name="totalMemoryLimit") - def total_memory_limit(self) -> pulumi.Output[int]: - """ - The maximum amount of memory (in MiB) to allocate for this container group. - """ - return pulumi.get(self, "total_memory_limit") - diff --git a/sdk/python/pulumi_aws_native/gamelift/fleet.py b/sdk/python/pulumi_aws_native/gamelift/fleet.py index 2c7eb95b28..66a856e574 100644 --- a/sdk/python/pulumi_aws_native/gamelift/fleet.py +++ b/sdk/python/pulumi_aws_native/gamelift/fleet.py @@ -27,7 +27,6 @@ def __init__(__self__, *, build_id: Optional[pulumi.Input[str]] = None, certificate_configuration: Optional[pulumi.Input['FleetCertificateConfigurationArgs']] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, - container_groups_configuration: Optional[pulumi.Input['FleetContainerGroupsConfigurationArgs']] = None, description: Optional[pulumi.Input[str]] = None, desired_ec2_instances: Optional[pulumi.Input[int]] = None, ec2_inbound_permissions: Optional[pulumi.Input[Sequence[pulumi.Input['FleetIpPermissionArgs']]]] = None, @@ -57,11 +56,6 @@ def __init__(__self__, *, :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. - :param pulumi.Input['FleetContainerGroupsConfigurationArgs'] container_groups_configuration: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - - Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - - *Used with:* `CreateFleet` :param pulumi.Input[str] description: A human-readable description of a fleet. :param pulumi.Input[int] desired_ec2_instances: [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. :param pulumi.Input[Sequence[pulumi.Input['FleetIpPermissionArgs']]] ec2_inbound_permissions: A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server. @@ -99,8 +93,6 @@ def __init__(__self__, *, pulumi.set(__self__, "certificate_configuration", certificate_configuration) if compute_type is not None: pulumi.set(__self__, "compute_type", compute_type) - if container_groups_configuration is not None: - pulumi.set(__self__, "container_groups_configuration", container_groups_configuration) if description is not None: pulumi.set(__self__, "description", description) if desired_ec2_instances is not None: @@ -206,22 +198,6 @@ def compute_type(self) -> Optional[pulumi.Input['FleetComputeType']]: def compute_type(self, value: Optional[pulumi.Input['FleetComputeType']]): pulumi.set(self, "compute_type", value) - @property - @pulumi.getter(name="containerGroupsConfiguration") - def container_groups_configuration(self) -> Optional[pulumi.Input['FleetContainerGroupsConfigurationArgs']]: - """ - *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - - Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - - *Used with:* `CreateFleet` - """ - return pulumi.get(self, "container_groups_configuration") - - @container_groups_configuration.setter - def container_groups_configuration(self, value: Optional[pulumi.Input['FleetContainerGroupsConfigurationArgs']]): - pulumi.set(self, "container_groups_configuration", value) - @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: @@ -501,7 +477,6 @@ def __init__(__self__, build_id: Optional[pulumi.Input[str]] = None, certificate_configuration: Optional[pulumi.Input[Union['FleetCertificateConfigurationArgs', 'FleetCertificateConfigurationArgsDict']]] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, - container_groups_configuration: Optional[pulumi.Input[Union['FleetContainerGroupsConfigurationArgs', 'FleetContainerGroupsConfigurationArgsDict']]] = None, description: Optional[pulumi.Input[str]] = None, desired_ec2_instances: Optional[pulumi.Input[int]] = None, ec2_inbound_permissions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FleetIpPermissionArgs', 'FleetIpPermissionArgsDict']]]]] = None, @@ -535,11 +510,6 @@ def __init__(__self__, :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[Union['FleetCertificateConfigurationArgs', 'FleetCertificateConfigurationArgsDict']] 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. - :param pulumi.Input[Union['FleetContainerGroupsConfigurationArgs', 'FleetContainerGroupsConfigurationArgsDict']] container_groups_configuration: *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - - Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - - *Used with:* `CreateFleet` :param pulumi.Input[str] description: A human-readable description of a fleet. :param pulumi.Input[int] desired_ec2_instances: [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. :param pulumi.Input[Sequence[pulumi.Input[Union['FleetIpPermissionArgs', 'FleetIpPermissionArgsDict']]]] ec2_inbound_permissions: A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server. @@ -596,7 +566,6 @@ def _internal_init(__self__, build_id: Optional[pulumi.Input[str]] = None, certificate_configuration: Optional[pulumi.Input[Union['FleetCertificateConfigurationArgs', 'FleetCertificateConfigurationArgsDict']]] = None, compute_type: Optional[pulumi.Input['FleetComputeType']] = None, - container_groups_configuration: Optional[pulumi.Input[Union['FleetContainerGroupsConfigurationArgs', 'FleetContainerGroupsConfigurationArgsDict']]] = None, description: Optional[pulumi.Input[str]] = None, desired_ec2_instances: Optional[pulumi.Input[int]] = None, ec2_inbound_permissions: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FleetIpPermissionArgs', 'FleetIpPermissionArgsDict']]]]] = None, @@ -633,7 +602,6 @@ def _internal_init(__self__, __props__.__dict__["build_id"] = build_id __props__.__dict__["certificate_configuration"] = certificate_configuration __props__.__dict__["compute_type"] = compute_type - __props__.__dict__["container_groups_configuration"] = container_groups_configuration __props__.__dict__["description"] = description __props__.__dict__["desired_ec2_instances"] = desired_ec2_instances __props__.__dict__["ec2_inbound_permissions"] = ec2_inbound_permissions @@ -657,7 +625,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=["applyCapacity", "buildId", "certificateConfiguration", "computeType", "containerGroupsConfiguration", "ec2InstanceType", "fleetType", "instanceRoleArn", "instanceRoleCredentialsProvider", "logPaths[*]", "peerVpcAwsAccountId", "peerVpcId", "scriptId", "serverLaunchParameters", "serverLaunchPath"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["applyCapacity", "buildId", "certificateConfiguration", "computeType", "ec2InstanceType", "fleetType", "instanceRoleArn", "instanceRoleCredentialsProvider", "logPaths[*]", "peerVpcAwsAccountId", "peerVpcId", "scriptId", "serverLaunchParameters", "serverLaunchPath"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(Fleet, __self__).__init__( 'aws-native:gamelift:Fleet', @@ -686,7 +654,6 @@ def get(resource_name: str, __props__.__dict__["build_id"] = None __props__.__dict__["certificate_configuration"] = None __props__.__dict__["compute_type"] = None - __props__.__dict__["container_groups_configuration"] = None __props__.__dict__["description"] = None __props__.__dict__["desired_ec2_instances"] = None __props__.__dict__["ec2_inbound_permissions"] = None @@ -752,18 +719,6 @@ def compute_type(self) -> pulumi.Output[Optional['FleetComputeType']]: """ return pulumi.get(self, "compute_type") - @property - @pulumi.getter(name="containerGroupsConfiguration") - def container_groups_configuration(self) -> pulumi.Output[Optional['outputs.FleetContainerGroupsConfiguration']]: - """ - *This data type is currently not available. It is under improvement as we respond to customer feedback from the Containers public preview.* - - Configuration details for a set of container groups, for use when creating a fleet with compute type `CONTAINER` . - - *Used with:* `CreateFleet` - """ - return pulumi.get(self, "container_groups_configuration") - @property @pulumi.getter def description(self) -> pulumi.Output[Optional[str]]: diff --git a/sdk/python/pulumi_aws_native/gamelift/get_container_group_definition.py b/sdk/python/pulumi_aws_native/gamelift/get_container_group_definition.py index 848548a80a..291f7ed611 100644 --- a/sdk/python/pulumi_aws_native/gamelift/get_container_group_definition.py +++ b/sdk/python/pulumi_aws_native/gamelift/get_container_group_definition.py @@ -25,13 +25,16 @@ @pulumi.output_type class GetContainerGroupDefinitionResult: - def __init__(__self__, container_group_definition_arn=None, creation_time=None, source_version_number=None, status=None, status_reason=None, support_container_definitions=None, tags=None): + def __init__(__self__, container_group_definition_arn=None, creation_time=None, operating_system=None, source_version_number=None, status=None, status_reason=None, support_container_definitions=None, tags=None): if container_group_definition_arn and not isinstance(container_group_definition_arn, str): raise TypeError("Expected argument 'container_group_definition_arn' to be a str") pulumi.set(__self__, "container_group_definition_arn", container_group_definition_arn) if creation_time and not isinstance(creation_time, str): raise TypeError("Expected argument 'creation_time' to be a str") pulumi.set(__self__, "creation_time", creation_time) + if operating_system and not isinstance(operating_system, str): + raise TypeError("Expected argument 'operating_system' to be a str") + pulumi.set(__self__, "operating_system", operating_system) if source_version_number and not isinstance(source_version_number, int): raise TypeError("Expected argument 'source_version_number' to be a int") pulumi.set(__self__, "source_version_number", source_version_number) @@ -64,6 +67,14 @@ def creation_time(self) -> Optional[str]: """ return pulumi.get(self, "creation_time") + @property + @pulumi.getter(name="operatingSystem") + def operating_system(self) -> Optional['ContainerGroupDefinitionOperatingSystem']: + """ + The operating system of the container group + """ + return pulumi.get(self, "operating_system") + @property @pulumi.getter(name="sourceVersionNumber") def source_version_number(self) -> Optional[int]: @@ -113,6 +124,7 @@ def __await__(self): return GetContainerGroupDefinitionResult( container_group_definition_arn=self.container_group_definition_arn, creation_time=self.creation_time, + operating_system=self.operating_system, source_version_number=self.source_version_number, status=self.status, status_reason=self.status_reason, @@ -136,6 +148,7 @@ def get_container_group_definition(name: Optional[str] = None, return AwaitableGetContainerGroupDefinitionResult( container_group_definition_arn=pulumi.get(__ret__, 'container_group_definition_arn'), creation_time=pulumi.get(__ret__, 'creation_time'), + operating_system=pulumi.get(__ret__, 'operating_system'), source_version_number=pulumi.get(__ret__, 'source_version_number'), status=pulumi.get(__ret__, 'status'), status_reason=pulumi.get(__ret__, 'status_reason'), @@ -156,6 +169,7 @@ def get_container_group_definition_output(name: Optional[pulumi.Input[str]] = No return __ret__.apply(lambda __response__: GetContainerGroupDefinitionResult( container_group_definition_arn=pulumi.get(__response__, 'container_group_definition_arn'), creation_time=pulumi.get(__response__, 'creation_time'), + operating_system=pulumi.get(__response__, 'operating_system'), source_version_number=pulumi.get(__response__, 'source_version_number'), status=pulumi.get(__response__, 'status'), status_reason=pulumi.get(__response__, 'status_reason'), diff --git a/sdk/python/pulumi_aws_native/gamelift/outputs.py b/sdk/python/pulumi_aws_native/gamelift/outputs.py index 4cb264b3a7..4856ad9fd9 100644 --- a/sdk/python/pulumi_aws_native/gamelift/outputs.py +++ b/sdk/python/pulumi_aws_native/gamelift/outputs.py @@ -19,18 +19,8 @@ __all__ = [ 'AliasRoutingStrategy', 'BuildStorageLocation', - 'ContainerGroupDefinitionContainerDefinition', - 'ContainerGroupDefinitionContainerDependency', - 'ContainerGroupDefinitionContainerEnvironment', - 'ContainerGroupDefinitionContainerHealthCheck', - 'ContainerGroupDefinitionContainerPortRange', - 'ContainerGroupDefinitionMemoryLimits', - 'ContainerGroupDefinitionPortConfiguration', 'FleetAnywhereConfiguration', 'FleetCertificateConfiguration', - 'FleetConnectionPortRange', - 'FleetContainerGroupsConfiguration', - 'FleetContainerGroupsPerInstance', 'FleetIpPermission', 'FleetLocationCapacity', 'FleetLocationConfiguration', @@ -181,530 +171,6 @@ def object_version(self) -> Optional[str]: return pulumi.get(self, "object_version") -@pulumi.output_type -class ContainerGroupDefinitionContainerDefinition(dict): - """ - Details about a container that is used in a container fleet - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "containerName": - suggest = "container_name" - elif key == "imageUri": - suggest = "image_uri" - elif key == "dependsOn": - suggest = "depends_on" - elif key == "entryPoint": - suggest = "entry_point" - elif key == "healthCheck": - suggest = "health_check" - elif key == "memoryLimits": - suggest = "memory_limits" - elif key == "portConfiguration": - suggest = "port_configuration" - elif key == "resolvedImageDigest": - suggest = "resolved_image_digest" - elif key == "workingDirectory": - suggest = "working_directory" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ContainerGroupDefinitionContainerDefinition. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ContainerGroupDefinitionContainerDefinition.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ContainerGroupDefinitionContainerDefinition.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - container_name: str, - image_uri: str, - command: Optional[Sequence[str]] = None, - cpu: Optional[int] = None, - depends_on: Optional[Sequence['outputs.ContainerGroupDefinitionContainerDependency']] = None, - entry_point: Optional[Sequence[str]] = None, - environment: Optional[Sequence['outputs.ContainerGroupDefinitionContainerEnvironment']] = None, - essential: Optional[bool] = None, - health_check: Optional['outputs.ContainerGroupDefinitionContainerHealthCheck'] = None, - memory_limits: Optional['outputs.ContainerGroupDefinitionMemoryLimits'] = None, - port_configuration: Optional['outputs.ContainerGroupDefinitionPortConfiguration'] = None, - resolved_image_digest: Optional[str] = None, - working_directory: Optional[str] = None): - """ - Details about a container that is used in a container fleet - :param str container_name: A descriptive label for the container definition. Container definition names must be unique with a container group definition. - :param str image_uri: Specifies the image URI of this container. - :param Sequence[str] command: The command that's passed to the container. - :param int cpu: The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - :param Sequence['ContainerGroupDefinitionContainerDependency'] depends_on: A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - :param Sequence[str] entry_point: The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - :param Sequence['ContainerGroupDefinitionContainerEnvironment'] environment: The environment variables to pass to a container. - :param bool essential: Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - :param 'ContainerGroupDefinitionContainerHealthCheck' health_check: Specifies how the health of the containers will be checked. - :param 'ContainerGroupDefinitionMemoryLimits' memory_limits: Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - :param 'ContainerGroupDefinitionPortConfiguration' port_configuration: Defines the ports on the container. - :param str resolved_image_digest: The digest of the container image. - :param str working_directory: The working directory to run commands inside the container in. - """ - pulumi.set(__self__, "container_name", container_name) - pulumi.set(__self__, "image_uri", image_uri) - if command is not None: - pulumi.set(__self__, "command", command) - if cpu is not None: - pulumi.set(__self__, "cpu", cpu) - if depends_on is not None: - pulumi.set(__self__, "depends_on", depends_on) - if entry_point is not None: - pulumi.set(__self__, "entry_point", entry_point) - if environment is not None: - pulumi.set(__self__, "environment", environment) - if essential is not None: - pulumi.set(__self__, "essential", essential) - if health_check is not None: - pulumi.set(__self__, "health_check", health_check) - if memory_limits is not None: - pulumi.set(__self__, "memory_limits", memory_limits) - if port_configuration is not None: - pulumi.set(__self__, "port_configuration", port_configuration) - if resolved_image_digest is not None: - pulumi.set(__self__, "resolved_image_digest", resolved_image_digest) - if working_directory is not None: - pulumi.set(__self__, "working_directory", working_directory) - - @property - @pulumi.getter(name="containerName") - def container_name(self) -> str: - """ - A descriptive label for the container definition. Container definition names must be unique with a container group definition. - """ - return pulumi.get(self, "container_name") - - @property - @pulumi.getter(name="imageUri") - def image_uri(self) -> str: - """ - Specifies the image URI of this container. - """ - return pulumi.get(self, "image_uri") - - @property - @pulumi.getter - def command(self) -> Optional[Sequence[str]]: - """ - The command that's passed to the container. - """ - return pulumi.get(self, "command") - - @property - @pulumi.getter - def cpu(self) -> Optional[int]: - """ - The maximum number of CPU units reserved for this container. The value is expressed as an integer amount of CPU units. 1 vCPU is equal to 1024 CPU units - """ - return pulumi.get(self, "cpu") - - @property - @pulumi.getter(name="dependsOn") - def depends_on(self) -> Optional[Sequence['outputs.ContainerGroupDefinitionContainerDependency']]: - """ - A list of container dependencies that determines when this container starts up and shuts down. For container groups with multiple containers, dependencies let you define a startup/shutdown sequence across the containers. - """ - return pulumi.get(self, "depends_on") - - @property - @pulumi.getter(name="entryPoint") - def entry_point(self) -> Optional[Sequence[str]]: - """ - The entry point that's passed to the container so that it will run as an executable. If there are multiple arguments, each argument is a string in the array. - """ - return pulumi.get(self, "entry_point") - - @property - @pulumi.getter - def environment(self) -> Optional[Sequence['outputs.ContainerGroupDefinitionContainerEnvironment']]: - """ - The environment variables to pass to a container. - """ - return pulumi.get(self, "environment") - - @property - @pulumi.getter - def essential(self) -> Optional[bool]: - """ - Specifies if the container is essential. If an essential container fails a health check, then all containers in the container group will be restarted. You must specify exactly 1 essential container in a container group. - """ - return pulumi.get(self, "essential") - - @property - @pulumi.getter(name="healthCheck") - def health_check(self) -> Optional['outputs.ContainerGroupDefinitionContainerHealthCheck']: - """ - Specifies how the health of the containers will be checked. - """ - return pulumi.get(self, "health_check") - - @property - @pulumi.getter(name="memoryLimits") - def memory_limits(self) -> Optional['outputs.ContainerGroupDefinitionMemoryLimits']: - """ - Specifies how much memory is available to the container. You must specify at least this parameter or the TotalMemoryLimit parameter of the ContainerGroupDefinition. - """ - return pulumi.get(self, "memory_limits") - - @property - @pulumi.getter(name="portConfiguration") - def port_configuration(self) -> Optional['outputs.ContainerGroupDefinitionPortConfiguration']: - """ - Defines the ports on the container. - """ - return pulumi.get(self, "port_configuration") - - @property - @pulumi.getter(name="resolvedImageDigest") - def resolved_image_digest(self) -> Optional[str]: - """ - The digest of the container image. - """ - return pulumi.get(self, "resolved_image_digest") - - @property - @pulumi.getter(name="workingDirectory") - def working_directory(self) -> Optional[str]: - """ - The working directory to run commands inside the container in. - """ - return pulumi.get(self, "working_directory") - - -@pulumi.output_type -class ContainerGroupDefinitionContainerDependency(dict): - """ - A dependency that impacts a container's startup and shutdown. - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "containerName": - suggest = "container_name" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ContainerGroupDefinitionContainerDependency. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ContainerGroupDefinitionContainerDependency.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ContainerGroupDefinitionContainerDependency.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - condition: 'ContainerGroupDefinitionContainerDependencyCondition', - container_name: str): - """ - A dependency that impacts a container's startup and shutdown. - :param 'ContainerGroupDefinitionContainerDependencyCondition' condition: The type of dependency. - :param str container_name: A descriptive label for the container definition. The container being defined depends on this container's condition. - """ - pulumi.set(__self__, "condition", condition) - pulumi.set(__self__, "container_name", container_name) - - @property - @pulumi.getter - def condition(self) -> 'ContainerGroupDefinitionContainerDependencyCondition': - """ - The type of dependency. - """ - return pulumi.get(self, "condition") - - @property - @pulumi.getter(name="containerName") - def container_name(self) -> str: - """ - A descriptive label for the container definition. The container being defined depends on this container's condition. - """ - return pulumi.get(self, "container_name") - - -@pulumi.output_type -class ContainerGroupDefinitionContainerEnvironment(dict): - """ - An environment variable to set inside a container, in the form of a key-value pair. - """ - def __init__(__self__, *, - name: str, - value: str): - """ - An environment variable to set inside a container, in the form of a key-value pair. - :param str name: The environment variable name. - :param str value: The environment variable value. - """ - pulumi.set(__self__, "name", name) - pulumi.set(__self__, "value", value) - - @property - @pulumi.getter - def name(self) -> str: - """ - The environment variable name. - """ - return pulumi.get(self, "name") - - @property - @pulumi.getter - def value(self) -> str: - """ - The environment variable value. - """ - return pulumi.get(self, "value") - - -@pulumi.output_type -class ContainerGroupDefinitionContainerHealthCheck(dict): - """ - Specifies how the process manager checks the health of containers. - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "startPeriod": - suggest = "start_period" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ContainerGroupDefinitionContainerHealthCheck. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ContainerGroupDefinitionContainerHealthCheck.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ContainerGroupDefinitionContainerHealthCheck.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - command: Sequence[str], - interval: Optional[int] = None, - retries: Optional[int] = None, - start_period: Optional[int] = None, - timeout: Optional[int] = None): - """ - Specifies how the process manager checks the health of containers. - :param Sequence[str] command: A string array representing the command that the container runs to determine if it is healthy. - :param int interval: How often (in seconds) the health is checked. - :param int retries: How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - :param int start_period: The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - :param int timeout: How many seconds the process manager allows the command to run before canceling it. - """ - pulumi.set(__self__, "command", command) - if interval is not None: - pulumi.set(__self__, "interval", interval) - if retries is not None: - pulumi.set(__self__, "retries", retries) - if start_period is not None: - pulumi.set(__self__, "start_period", start_period) - if timeout is not None: - pulumi.set(__self__, "timeout", timeout) - - @property - @pulumi.getter - def command(self) -> Sequence[str]: - """ - A string array representing the command that the container runs to determine if it is healthy. - """ - return pulumi.get(self, "command") - - @property - @pulumi.getter - def interval(self) -> Optional[int]: - """ - How often (in seconds) the health is checked. - """ - return pulumi.get(self, "interval") - - @property - @pulumi.getter - def retries(self) -> Optional[int]: - """ - How many times the process manager will retry the command after a timeout. (The first run of the command does not count as a retry.) - """ - return pulumi.get(self, "retries") - - @property - @pulumi.getter(name="startPeriod") - def start_period(self) -> Optional[int]: - """ - The optional grace period (in seconds) to give a container time to boostrap before teh health check is declared failed. - """ - return pulumi.get(self, "start_period") - - @property - @pulumi.getter - def timeout(self) -> Optional[int]: - """ - How many seconds the process manager allows the command to run before canceling it. - """ - return pulumi.get(self, "timeout") - - -@pulumi.output_type -class ContainerGroupDefinitionContainerPortRange(dict): - """ - A set of one or more port numbers that can be opened on the container. - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "fromPort": - suggest = "from_port" - elif key == "toPort": - suggest = "to_port" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ContainerGroupDefinitionContainerPortRange. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ContainerGroupDefinitionContainerPortRange.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ContainerGroupDefinitionContainerPortRange.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - from_port: int, - protocol: 'ContainerGroupDefinitionContainerPortRangeProtocol', - to_port: int): - """ - A set of one or more port numbers that can be opened on the container. - :param int from_port: A starting value for the range of allowed port numbers. - :param 'ContainerGroupDefinitionContainerPortRangeProtocol' protocol: Defines the protocol of these ports. - :param int to_port: An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - """ - pulumi.set(__self__, "from_port", from_port) - pulumi.set(__self__, "protocol", protocol) - pulumi.set(__self__, "to_port", to_port) - - @property - @pulumi.getter(name="fromPort") - def from_port(self) -> int: - """ - A starting value for the range of allowed port numbers. - """ - return pulumi.get(self, "from_port") - - @property - @pulumi.getter - def protocol(self) -> 'ContainerGroupDefinitionContainerPortRangeProtocol': - """ - Defines the protocol of these ports. - """ - return pulumi.get(self, "protocol") - - @property - @pulumi.getter(name="toPort") - def to_port(self) -> int: - """ - An ending value for the range of allowed port numbers. Port numbers are end-inclusive. This value must be equal to or greater than FromPort. - """ - return pulumi.get(self, "to_port") - - -@pulumi.output_type -class ContainerGroupDefinitionMemoryLimits(dict): - """ - Specifies how much memory is available to the container. - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "hardLimit": - suggest = "hard_limit" - elif key == "softLimit": - suggest = "soft_limit" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ContainerGroupDefinitionMemoryLimits. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ContainerGroupDefinitionMemoryLimits.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ContainerGroupDefinitionMemoryLimits.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - hard_limit: Optional[int] = None, - soft_limit: Optional[int] = None): - """ - Specifies how much memory is available to the container. - :param int hard_limit: The hard limit of memory to reserve for the container. - :param int soft_limit: The amount of memory that is reserved for the container. - """ - if hard_limit is not None: - pulumi.set(__self__, "hard_limit", hard_limit) - if soft_limit is not None: - pulumi.set(__self__, "soft_limit", soft_limit) - - @property - @pulumi.getter(name="hardLimit") - def hard_limit(self) -> Optional[int]: - """ - The hard limit of memory to reserve for the container. - """ - return pulumi.get(self, "hard_limit") - - @property - @pulumi.getter(name="softLimit") - def soft_limit(self) -> Optional[int]: - """ - The amount of memory that is reserved for the container. - """ - return pulumi.get(self, "soft_limit") - - -@pulumi.output_type -class ContainerGroupDefinitionPortConfiguration(dict): - """ - Defines the ports on a container. - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "containerPortRanges": - suggest = "container_port_ranges" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in ContainerGroupDefinitionPortConfiguration. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - ContainerGroupDefinitionPortConfiguration.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - ContainerGroupDefinitionPortConfiguration.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - container_port_ranges: Sequence['outputs.ContainerGroupDefinitionContainerPortRange']): - """ - Defines the ports on a container. - :param Sequence['ContainerGroupDefinitionContainerPortRange'] container_port_ranges: Specifies one or more ranges of ports on a container. - """ - pulumi.set(__self__, "container_port_ranges", container_port_ranges) - - @property - @pulumi.getter(name="containerPortRanges") - def container_port_ranges(self) -> Sequence['outputs.ContainerGroupDefinitionContainerPortRange']: - """ - Specifies one or more ranges of ports on a container. - """ - return pulumi.get(self, "container_port_ranges") - - @pulumi.output_type class FleetAnywhereConfiguration(dict): """ @@ -776,190 +242,6 @@ def certificate_type(self) -> 'FleetCertificateConfigurationCertificateType': return pulumi.get(self, "certificate_type") -@pulumi.output_type -class FleetConnectionPortRange(dict): - """ - Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "fromPort": - suggest = "from_port" - elif key == "toPort": - suggest = "to_port" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in FleetConnectionPortRange. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - FleetConnectionPortRange.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - FleetConnectionPortRange.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - from_port: int, - to_port: int): - """ - Defines the range of ports on the instance that allow inbound traffic to connect with containers in a fleet. - :param int from_port: A starting value for a range of allowed port numbers. - :param int to_port: An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - """ - pulumi.set(__self__, "from_port", from_port) - pulumi.set(__self__, "to_port", to_port) - - @property - @pulumi.getter(name="fromPort") - def from_port(self) -> int: - """ - A starting value for a range of allowed port numbers. - """ - return pulumi.get(self, "from_port") - - @property - @pulumi.getter(name="toPort") - def to_port(self) -> int: - """ - An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort. - """ - return pulumi.get(self, "to_port") - - -@pulumi.output_type -class FleetContainerGroupsConfiguration(dict): - """ - Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "connectionPortRange": - suggest = "connection_port_range" - elif key == "containerGroupDefinitionNames": - suggest = "container_group_definition_names" - elif key == "containerGroupsPerInstance": - suggest = "container_groups_per_instance" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in FleetContainerGroupsConfiguration. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - FleetContainerGroupsConfiguration.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - FleetContainerGroupsConfiguration.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - connection_port_range: 'outputs.FleetConnectionPortRange', - container_group_definition_names: Sequence[str], - container_groups_per_instance: Optional['outputs.FleetContainerGroupsPerInstance'] = None): - """ - Specifies container groups that this instance will hold. You must specify exactly one replica group. Optionally, you may specify exactly one daemon group. You can't change this property after you create the fleet. - :param 'FleetConnectionPortRange' connection_port_range: A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - - Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - - *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - - As a best practice, double the minimum number of connection ports. - - > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - :param Sequence[str] container_group_definition_names: The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - """ - pulumi.set(__self__, "connection_port_range", connection_port_range) - pulumi.set(__self__, "container_group_definition_names", container_group_definition_names) - if container_groups_per_instance is not None: - pulumi.set(__self__, "container_groups_per_instance", container_groups_per_instance) - - @property - @pulumi.getter(name="connectionPortRange") - def connection_port_range(self) -> 'outputs.FleetConnectionPortRange': - """ - A set of ports to allow inbound traffic, including game clients, to connect to processes running in the container fleet. - - Connection ports are dynamically mapped to container ports, which are assigned to individual processes running in a container. The connection port range must have enough ports to map to all container ports across a fleet instance. To calculate the minimum connection ports needed, use the following formula: - - *[Total number of container ports as defined for containers in the replica container group] * [Desired or calculated number of replica container groups per instance] + [Total number of container ports as defined for containers in the daemon container group]* - - As a best practice, double the minimum number of connection ports. - - > Use the fleet's `EC2InboundPermissions` property to control external access to connection ports. Set this property to the connection port numbers that you want to open access to. See `IpPermission` for more details. - """ - return pulumi.get(self, "connection_port_range") - - @property - @pulumi.getter(name="containerGroupDefinitionNames") - def container_group_definition_names(self) -> Sequence[str]: - """ - The names of the container group definitions that will be created in an instance. You must specify exactly one REPLICA container group. You have the option to also specify one DAEMON container group. - """ - return pulumi.get(self, "container_group_definition_names") - - @property - @pulumi.getter(name="containerGroupsPerInstance") - def container_groups_per_instance(self) -> Optional['outputs.FleetContainerGroupsPerInstance']: - return pulumi.get(self, "container_groups_per_instance") - - -@pulumi.output_type -class FleetContainerGroupsPerInstance(dict): - """ - The number of container groups per instance. - """ - @staticmethod - def __key_warning(key: str): - suggest = None - if key == "desiredReplicaContainerGroupsPerInstance": - suggest = "desired_replica_container_groups_per_instance" - elif key == "maxReplicaContainerGroupsPerInstance": - suggest = "max_replica_container_groups_per_instance" - - if suggest: - pulumi.log.warn(f"Key '{key}' not found in FleetContainerGroupsPerInstance. Access the value via the '{suggest}' property getter instead.") - - def __getitem__(self, key: str) -> Any: - FleetContainerGroupsPerInstance.__key_warning(key) - return super().__getitem__(key) - - def get(self, key: str, default = None) -> Any: - FleetContainerGroupsPerInstance.__key_warning(key) - return super().get(key, default) - - def __init__(__self__, *, - desired_replica_container_groups_per_instance: Optional[int] = None, - max_replica_container_groups_per_instance: Optional[int] = None): - """ - The number of container groups per instance. - :param int desired_replica_container_groups_per_instance: Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - :param int max_replica_container_groups_per_instance: GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - """ - if desired_replica_container_groups_per_instance is not None: - pulumi.set(__self__, "desired_replica_container_groups_per_instance", desired_replica_container_groups_per_instance) - if max_replica_container_groups_per_instance is not None: - pulumi.set(__self__, "max_replica_container_groups_per_instance", max_replica_container_groups_per_instance) - - @property - @pulumi.getter(name="desiredReplicaContainerGroupsPerInstance") - def desired_replica_container_groups_per_instance(self) -> Optional[int]: - """ - Use this parameter to override the number of replica container groups GameLift will launch per instance with a number that is lower than that calculated maximum. - """ - return pulumi.get(self, "desired_replica_container_groups_per_instance") - - @property - @pulumi.getter(name="maxReplicaContainerGroupsPerInstance") - def max_replica_container_groups_per_instance(self) -> Optional[int]: - """ - GameLift calculates the maximum number of replica container groups it can launch per instance based on instance properties such as CPU, memory, and connection ports. - """ - return pulumi.get(self, "max_replica_container_groups_per_instance") - - @pulumi.output_type class FleetIpPermission(dict): """ diff --git a/sdk/python/pulumi_aws_native/iotwireless/_enums.py b/sdk/python/pulumi_aws_native/iotwireless/_enums.py index 2557731238..478174349a 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/_enums.py +++ b/sdk/python/pulumi_aws_native/iotwireless/_enums.py @@ -9,6 +9,8 @@ 'NetworkAnalyzerConfigurationLogLevel', 'NetworkAnalyzerConfigurationWirelessDeviceFrameInfo', 'TaskDefinitionType', + 'WirelessDeviceApplicationType', + 'WirelessDevicePositioning', 'WirelessDeviceType', ] @@ -40,6 +42,24 @@ class TaskDefinitionType(str, Enum): UPDATE = "UPDATE" +class WirelessDeviceApplicationType(str, Enum): + """ + Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + """ + SEMTECH_GEOLOCATION = "SemtechGeolocation" + SEMTECH_GNSS = "SemtechGNSS" + SEMTECH_GNSSNG = "SemtechGNSSNG" + SEMTECH_WI_FI = "SemtechWiFi" + + +class WirelessDevicePositioning(str, Enum): + """ + FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + """ + ENABLED = "Enabled" + DISABLED = "Disabled" + + class WirelessDeviceType(str, Enum): """ Wireless device type, currently only Sidewalk and LoRa diff --git a/sdk/python/pulumi_aws_native/iotwireless/_inputs.py b/sdk/python/pulumi_aws_native/iotwireless/_inputs.py index dfacebff21..4625f2a823 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/_inputs.py +++ b/sdk/python/pulumi_aws_native/iotwireless/_inputs.py @@ -38,6 +38,10 @@ 'WirelessDeviceAbpV10xArgsDict', 'WirelessDeviceAbpV11Args', 'WirelessDeviceAbpV11ArgsDict', + 'WirelessDeviceApplicationArgs', + 'WirelessDeviceApplicationArgsDict', + 'WirelessDeviceFPortsArgs', + 'WirelessDeviceFPortsArgsDict', 'WirelessDeviceLoRaWanDeviceArgs', 'WirelessDeviceLoRaWanDeviceArgsDict', 'WirelessDeviceOtaaV10xArgs', @@ -1525,6 +1529,114 @@ def session_keys(self, value: pulumi.Input['WirelessDeviceSessionKeysAbpV11Args' pulumi.set(self, "session_keys", value) +if not MYPY: + class WirelessDeviceApplicationArgsDict(TypedDict): + """ + LoRaWAN application configuration, which can be used to perform geolocation. + """ + destination_name: NotRequired[pulumi.Input[str]] + """ + The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + """ + f_port: NotRequired[pulumi.Input[int]] + """ + The Fport value. + """ + type: NotRequired[pulumi.Input['WirelessDeviceApplicationType']] + """ + Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + """ +elif False: + WirelessDeviceApplicationArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class WirelessDeviceApplicationArgs: + def __init__(__self__, *, + destination_name: Optional[pulumi.Input[str]] = None, + f_port: Optional[pulumi.Input[int]] = None, + type: Optional[pulumi.Input['WirelessDeviceApplicationType']] = None): + """ + LoRaWAN application configuration, which can be used to perform geolocation. + :param pulumi.Input[str] destination_name: The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + :param pulumi.Input[int] f_port: The Fport value. + :param pulumi.Input['WirelessDeviceApplicationType'] type: Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + """ + if destination_name is not None: + pulumi.set(__self__, "destination_name", destination_name) + if f_port is not None: + pulumi.set(__self__, "f_port", f_port) + if type is not None: + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter(name="destinationName") + def destination_name(self) -> Optional[pulumi.Input[str]]: + """ + The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + """ + return pulumi.get(self, "destination_name") + + @destination_name.setter + def destination_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "destination_name", value) + + @property + @pulumi.getter(name="fPort") + def f_port(self) -> Optional[pulumi.Input[int]]: + """ + The Fport value. + """ + return pulumi.get(self, "f_port") + + @f_port.setter + def f_port(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "f_port", value) + + @property + @pulumi.getter + def type(self) -> Optional[pulumi.Input['WirelessDeviceApplicationType']]: + """ + Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + """ + return pulumi.get(self, "type") + + @type.setter + def type(self, value: Optional[pulumi.Input['WirelessDeviceApplicationType']]): + pulumi.set(self, "type", value) + + +if not MYPY: + class WirelessDeviceFPortsArgsDict(TypedDict): + applications: NotRequired[pulumi.Input[Sequence[pulumi.Input['WirelessDeviceApplicationArgsDict']]]] + """ + A list of optional LoRaWAN application information, which can be used for geolocation. + """ +elif False: + WirelessDeviceFPortsArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class WirelessDeviceFPortsArgs: + def __init__(__self__, *, + applications: Optional[pulumi.Input[Sequence[pulumi.Input['WirelessDeviceApplicationArgs']]]] = None): + """ + :param pulumi.Input[Sequence[pulumi.Input['WirelessDeviceApplicationArgs']]] applications: A list of optional LoRaWAN application information, which can be used for geolocation. + """ + if applications is not None: + pulumi.set(__self__, "applications", applications) + + @property + @pulumi.getter + def applications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['WirelessDeviceApplicationArgs']]]]: + """ + A list of optional LoRaWAN application information, which can be used for geolocation. + """ + return pulumi.get(self, "applications") + + @applications.setter + def applications(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['WirelessDeviceApplicationArgs']]]]): + pulumi.set(self, "applications", value) + + if not MYPY: class WirelessDeviceLoRaWanDeviceArgsDict(TypedDict): abp_v10x: NotRequired[pulumi.Input['WirelessDeviceAbpV10xArgsDict']] @@ -1543,6 +1655,10 @@ class WirelessDeviceLoRaWanDeviceArgsDict(TypedDict): """ The ID of the device profile for the new wireless device. """ + f_ports: NotRequired[pulumi.Input['WirelessDeviceFPortsArgsDict']] + """ + List of FPort assigned for different LoRaWAN application packages to use. + """ otaa_v10x: NotRequired[pulumi.Input['WirelessDeviceOtaaV10xArgsDict']] """ OTAA device object for create APIs for v1.0.x @@ -1565,6 +1681,7 @@ def __init__(__self__, *, abp_v11: Optional[pulumi.Input['WirelessDeviceAbpV11Args']] = None, dev_eui: Optional[pulumi.Input[str]] = None, device_profile_id: Optional[pulumi.Input[str]] = None, + f_ports: Optional[pulumi.Input['WirelessDeviceFPortsArgs']] = None, otaa_v10x: Optional[pulumi.Input['WirelessDeviceOtaaV10xArgs']] = None, otaa_v11: Optional[pulumi.Input['WirelessDeviceOtaaV11Args']] = None, service_profile_id: Optional[pulumi.Input[str]] = None): @@ -1573,6 +1690,7 @@ def __init__(__self__, *, :param pulumi.Input['WirelessDeviceAbpV11Args'] abp_v11: ABP device object for create APIs for v1.1. :param pulumi.Input[str] dev_eui: The DevEUI value. :param pulumi.Input[str] device_profile_id: The ID of the device profile for the new wireless device. + :param pulumi.Input['WirelessDeviceFPortsArgs'] f_ports: List of FPort assigned for different LoRaWAN application packages to use. :param pulumi.Input['WirelessDeviceOtaaV10xArgs'] otaa_v10x: OTAA device object for create APIs for v1.0.x :param pulumi.Input['WirelessDeviceOtaaV11Args'] otaa_v11: OTAA device object for v1.1 for create APIs. :param pulumi.Input[str] service_profile_id: The ID of the service profile. @@ -1585,6 +1703,8 @@ def __init__(__self__, *, pulumi.set(__self__, "dev_eui", dev_eui) if device_profile_id is not None: pulumi.set(__self__, "device_profile_id", device_profile_id) + if f_ports is not None: + pulumi.set(__self__, "f_ports", f_ports) if otaa_v10x is not None: pulumi.set(__self__, "otaa_v10x", otaa_v10x) if otaa_v11 is not None: @@ -1640,6 +1760,18 @@ def device_profile_id(self) -> Optional[pulumi.Input[str]]: def device_profile_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "device_profile_id", value) + @property + @pulumi.getter(name="fPorts") + def f_ports(self) -> Optional[pulumi.Input['WirelessDeviceFPortsArgs']]: + """ + List of FPort assigned for different LoRaWAN application packages to use. + """ + return pulumi.get(self, "f_ports") + + @f_ports.setter + def f_ports(self, value: Optional[pulumi.Input['WirelessDeviceFPortsArgs']]): + pulumi.set(self, "f_ports", value) + @property @pulumi.getter(name="otaaV10x") def otaa_v10x(self) -> Optional[pulumi.Input['WirelessDeviceOtaaV10xArgs']]: diff --git a/sdk/python/pulumi_aws_native/iotwireless/device_profile.py b/sdk/python/pulumi_aws_native/iotwireless/device_profile.py index 91776eb694..f9cc28413f 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/device_profile.py +++ b/sdk/python/pulumi_aws_native/iotwireless/device_profile.py @@ -135,6 +135,8 @@ def _internal_init(__self__, __props__.__dict__["tags"] = tags __props__.__dict__["arn"] = None __props__.__dict__["aws_id"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["loRaWan", "name"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(DeviceProfile, __self__).__init__( 'aws-native:iotwireless:DeviceProfile', resource_name, diff --git a/sdk/python/pulumi_aws_native/iotwireless/get_device_profile.py b/sdk/python/pulumi_aws_native/iotwireless/get_device_profile.py index 30e88baf61..b59c8c7866 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/get_device_profile.py +++ b/sdk/python/pulumi_aws_native/iotwireless/get_device_profile.py @@ -13,7 +13,6 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities -from . import outputs from .. import outputs as _root_outputs __all__ = [ @@ -25,19 +24,13 @@ @pulumi.output_type class GetDeviceProfileResult: - def __init__(__self__, arn=None, id=None, lo_ra_wan=None, name=None, tags=None): + def __init__(__self__, arn=None, id=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 id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) - if lo_ra_wan and not isinstance(lo_ra_wan, dict): - raise TypeError("Expected argument 'lo_ra_wan' to be a dict") - pulumi.set(__self__, "lo_ra_wan", lo_ra_wan) - 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) @@ -58,22 +51,6 @@ def id(self) -> Optional[str]: """ return pulumi.get(self, "id") - @property - @pulumi.getter(name="loRaWan") - def lo_ra_wan(self) -> Optional['outputs.DeviceProfileLoRaWanDeviceProfile']: - """ - LoRaWANDeviceProfile supports all LoRa specific attributes for service profile for CreateDeviceProfile operation - """ - return pulumi.get(self, "lo_ra_wan") - - @property - @pulumi.getter - def name(self) -> Optional[str]: - """ - Name of service profile - """ - return pulumi.get(self, "name") - @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: @@ -91,8 +68,6 @@ def __await__(self): return GetDeviceProfileResult( arn=self.arn, id=self.id, - lo_ra_wan=self.lo_ra_wan, - name=self.name, tags=self.tags) @@ -112,8 +87,6 @@ def get_device_profile(id: Optional[str] = None, return AwaitableGetDeviceProfileResult( arn=pulumi.get(__ret__, 'arn'), id=pulumi.get(__ret__, 'id'), - lo_ra_wan=pulumi.get(__ret__, 'lo_ra_wan'), - name=pulumi.get(__ret__, 'name'), tags=pulumi.get(__ret__, 'tags')) def get_device_profile_output(id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDeviceProfileResult]: @@ -130,6 +103,4 @@ def get_device_profile_output(id: Optional[pulumi.Input[str]] = None, return __ret__.apply(lambda __response__: GetDeviceProfileResult( arn=pulumi.get(__response__, 'arn'), id=pulumi.get(__response__, 'id'), - lo_ra_wan=pulumi.get(__response__, 'lo_ra_wan'), - name=pulumi.get(__response__, 'name'), tags=pulumi.get(__response__, 'tags'))) diff --git a/sdk/python/pulumi_aws_native/iotwireless/get_network_analyzer_configuration.py b/sdk/python/pulumi_aws_native/iotwireless/get_network_analyzer_configuration.py index 53a8a61e75..59aa09b096 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/get_network_analyzer_configuration.py +++ b/sdk/python/pulumi_aws_native/iotwireless/get_network_analyzer_configuration.py @@ -14,6 +14,7 @@ from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities from . import outputs +from .. import outputs as _root_outputs from ._enums import * __all__ = [ @@ -25,13 +26,16 @@ @pulumi.output_type class GetNetworkAnalyzerConfigurationResult: - def __init__(__self__, arn=None, description=None, trace_content=None, wireless_devices=None, wireless_gateways=None): + def __init__(__self__, arn=None, description=None, tags=None, trace_content=None, wireless_devices=None, wireless_gateways=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) if description and not isinstance(description, str): raise TypeError("Expected argument 'description' to be a str") pulumi.set(__self__, "description", description) + if tags and not isinstance(tags, list): + raise TypeError("Expected argument 'tags' to be a list") + pulumi.set(__self__, "tags", tags) if trace_content and not isinstance(trace_content, dict): raise TypeError("Expected argument 'trace_content' to be a dict") pulumi.set(__self__, "trace_content", trace_content) @@ -58,6 +62,14 @@ def description(self) -> Optional[str]: """ return pulumi.get(self, "description") + @property + @pulumi.getter + def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: + """ + An array of key-value pairs to apply to this resource. + """ + return pulumi.get(self, "tags") + @property @pulumi.getter(name="traceContent") def trace_content(self) -> Optional['outputs.TraceContentProperties']: @@ -91,6 +103,7 @@ def __await__(self): return GetNetworkAnalyzerConfigurationResult( arn=self.arn, description=self.description, + tags=self.tags, trace_content=self.trace_content, wireless_devices=self.wireless_devices, wireless_gateways=self.wireless_gateways) @@ -112,6 +125,7 @@ def get_network_analyzer_configuration(name: Optional[str] = None, return AwaitableGetNetworkAnalyzerConfigurationResult( arn=pulumi.get(__ret__, 'arn'), description=pulumi.get(__ret__, 'description'), + tags=pulumi.get(__ret__, 'tags'), trace_content=pulumi.get(__ret__, 'trace_content'), wireless_devices=pulumi.get(__ret__, 'wireless_devices'), wireless_gateways=pulumi.get(__ret__, 'wireless_gateways')) @@ -130,6 +144,7 @@ def get_network_analyzer_configuration_output(name: Optional[pulumi.Input[str]] return __ret__.apply(lambda __response__: GetNetworkAnalyzerConfigurationResult( arn=pulumi.get(__response__, 'arn'), description=pulumi.get(__response__, 'description'), + tags=pulumi.get(__response__, 'tags'), trace_content=pulumi.get(__response__, 'trace_content'), wireless_devices=pulumi.get(__response__, 'wireless_devices'), wireless_gateways=pulumi.get(__response__, 'wireless_gateways'))) diff --git a/sdk/python/pulumi_aws_native/iotwireless/get_service_profile.py b/sdk/python/pulumi_aws_native/iotwireless/get_service_profile.py index fda3f4202b..1799a6e171 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/get_service_profile.py +++ b/sdk/python/pulumi_aws_native/iotwireless/get_service_profile.py @@ -13,7 +13,6 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities -from . import outputs from .. import outputs as _root_outputs __all__ = [ @@ -25,19 +24,13 @@ @pulumi.output_type class GetServiceProfileResult: - def __init__(__self__, arn=None, id=None, lo_ra_wan=None, name=None, tags=None): + def __init__(__self__, arn=None, id=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 id and not isinstance(id, str): raise TypeError("Expected argument 'id' to be a str") pulumi.set(__self__, "id", id) - if lo_ra_wan and not isinstance(lo_ra_wan, dict): - raise TypeError("Expected argument 'lo_ra_wan' to be a dict") - pulumi.set(__self__, "lo_ra_wan", lo_ra_wan) - 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) @@ -58,22 +51,6 @@ def id(self) -> Optional[str]: """ return pulumi.get(self, "id") - @property - @pulumi.getter(name="loRaWan") - def lo_ra_wan(self) -> Optional['outputs.ServiceProfileLoRaWanServiceProfile']: - """ - LoRaWAN supports all LoRa specific attributes for service profile for CreateServiceProfile operation - """ - return pulumi.get(self, "lo_ra_wan") - - @property - @pulumi.getter - def name(self) -> Optional[str]: - """ - Name of service profile - """ - return pulumi.get(self, "name") - @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: @@ -91,8 +68,6 @@ def __await__(self): return GetServiceProfileResult( arn=self.arn, id=self.id, - lo_ra_wan=self.lo_ra_wan, - name=self.name, tags=self.tags) @@ -112,8 +87,6 @@ def get_service_profile(id: Optional[str] = None, return AwaitableGetServiceProfileResult( arn=pulumi.get(__ret__, 'arn'), id=pulumi.get(__ret__, 'id'), - lo_ra_wan=pulumi.get(__ret__, 'lo_ra_wan'), - name=pulumi.get(__ret__, 'name'), tags=pulumi.get(__ret__, 'tags')) def get_service_profile_output(id: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetServiceProfileResult]: @@ -130,6 +103,4 @@ def get_service_profile_output(id: Optional[pulumi.Input[str]] = None, return __ret__.apply(lambda __response__: GetServiceProfileResult( arn=pulumi.get(__response__, 'arn'), id=pulumi.get(__response__, 'id'), - lo_ra_wan=pulumi.get(__response__, 'lo_ra_wan'), - name=pulumi.get(__response__, 'name'), tags=pulumi.get(__response__, 'tags'))) diff --git a/sdk/python/pulumi_aws_native/iotwireless/get_wireless_device.py b/sdk/python/pulumi_aws_native/iotwireless/get_wireless_device.py index a8974ceb7b..be563b2579 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/get_wireless_device.py +++ b/sdk/python/pulumi_aws_native/iotwireless/get_wireless_device.py @@ -26,7 +26,7 @@ @pulumi.output_type class GetWirelessDeviceResult: - def __init__(__self__, arn=None, description=None, destination_name=None, id=None, last_uplink_received_at=None, lo_ra_wan=None, name=None, tags=None, thing_arn=None, thing_name=None, type=None): + def __init__(__self__, arn=None, description=None, destination_name=None, id=None, last_uplink_received_at=None, lo_ra_wan=None, name=None, positioning=None, tags=None, thing_arn=None, thing_name=None, type=None): if arn and not isinstance(arn, str): raise TypeError("Expected argument 'arn' to be a str") pulumi.set(__self__, "arn", arn) @@ -48,6 +48,9 @@ def __init__(__self__, arn=None, description=None, destination_name=None, id=Non if name and not isinstance(name, str): raise TypeError("Expected argument 'name' to be a str") pulumi.set(__self__, "name", name) + if positioning and not isinstance(positioning, str): + raise TypeError("Expected argument 'positioning' to be a str") + pulumi.set(__self__, "positioning", positioning) if tags and not isinstance(tags, list): raise TypeError("Expected argument 'tags' to be a list") pulumi.set(__self__, "tags", tags) @@ -117,6 +120,14 @@ def name(self) -> Optional[str]: """ return pulumi.get(self, "name") + @property + @pulumi.getter + def positioning(self) -> Optional['WirelessDevicePositioning']: + """ + FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + """ + return pulumi.get(self, "positioning") + @property @pulumi.getter def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: @@ -163,6 +174,7 @@ def __await__(self): last_uplink_received_at=self.last_uplink_received_at, lo_ra_wan=self.lo_ra_wan, name=self.name, + positioning=self.positioning, tags=self.tags, thing_arn=self.thing_arn, thing_name=self.thing_name, @@ -190,6 +202,7 @@ def get_wireless_device(id: Optional[str] = None, last_uplink_received_at=pulumi.get(__ret__, 'last_uplink_received_at'), lo_ra_wan=pulumi.get(__ret__, 'lo_ra_wan'), name=pulumi.get(__ret__, 'name'), + positioning=pulumi.get(__ret__, 'positioning'), tags=pulumi.get(__ret__, 'tags'), thing_arn=pulumi.get(__ret__, 'thing_arn'), thing_name=pulumi.get(__ret__, 'thing_name'), @@ -214,6 +227,7 @@ def get_wireless_device_output(id: Optional[pulumi.Input[str]] = None, last_uplink_received_at=pulumi.get(__response__, 'last_uplink_received_at'), lo_ra_wan=pulumi.get(__response__, 'lo_ra_wan'), name=pulumi.get(__response__, 'name'), + positioning=pulumi.get(__response__, 'positioning'), tags=pulumi.get(__response__, 'tags'), thing_arn=pulumi.get(__response__, 'thing_arn'), thing_name=pulumi.get(__response__, 'thing_name'), diff --git a/sdk/python/pulumi_aws_native/iotwireless/network_analyzer_configuration.py b/sdk/python/pulumi_aws_native/iotwireless/network_analyzer_configuration.py index a177b8dcdf..471346428a 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/network_analyzer_configuration.py +++ b/sdk/python/pulumi_aws_native/iotwireless/network_analyzer_configuration.py @@ -26,7 +26,7 @@ class NetworkAnalyzerConfigurationArgs: def __init__(__self__, *, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.CreateOnlyTagArgs']]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None, trace_content: Optional[pulumi.Input['TraceContentPropertiesArgs']] = None, wireless_devices: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wireless_gateways: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): @@ -34,7 +34,7 @@ def __init__(__self__, *, The set of arguments for constructing a NetworkAnalyzerConfiguration resource. :param pulumi.Input[str] description: The description of the new resource :param pulumi.Input[str] name: Name of the network analyzer configuration - :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.CreateOnlyTagArgs']]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: An array of key-value pairs to apply to this resource. :param pulumi.Input['TraceContentPropertiesArgs'] trace_content: Trace content for your wireless gateway and wireless device resources :param pulumi.Input[Sequence[pulumi.Input[str]]] wireless_devices: List of wireless gateway resources that have been added to the network analyzer configuration :param pulumi.Input[Sequence[pulumi.Input[str]]] wireless_gateways: List of wireless gateway resources that have been added to the network analyzer configuration @@ -78,14 +78,14 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.CreateOnlyTagArgs']]]]: + def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: """ 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['_root_inputs.CreateOnlyTagArgs']]]]): + def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]): pulumi.set(self, "tags", value) @property @@ -132,7 +132,7 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.CreateOnlyTagArgs', '_root_inputs.CreateOnlyTagArgsDict']]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, trace_content: Optional[pulumi.Input[Union['TraceContentPropertiesArgs', 'TraceContentPropertiesArgsDict']]] = None, wireless_devices: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wireless_gateways: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -144,7 +144,7 @@ def __init__(__self__, :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[str] description: The description of the new resource :param pulumi.Input[str] name: Name of the network analyzer configuration - :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.CreateOnlyTagArgs', '_root_inputs.CreateOnlyTagArgsDict']]]] tags: An array of key-value pairs to apply to this resource. + :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: An array of key-value pairs to apply to this resource. :param pulumi.Input[Union['TraceContentPropertiesArgs', 'TraceContentPropertiesArgsDict']] trace_content: Trace content for your wireless gateway and wireless device resources :param pulumi.Input[Sequence[pulumi.Input[str]]] wireless_devices: List of wireless gateway resources that have been added to the network analyzer configuration :param pulumi.Input[Sequence[pulumi.Input[str]]] wireless_gateways: List of wireless gateway resources that have been added to the network analyzer configuration @@ -175,7 +175,7 @@ def _internal_init(__self__, opts: Optional[pulumi.ResourceOptions] = None, description: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.CreateOnlyTagArgs', '_root_inputs.CreateOnlyTagArgsDict']]]]] = None, + tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, trace_content: Optional[pulumi.Input[Union['TraceContentPropertiesArgs', 'TraceContentPropertiesArgsDict']]] = None, wireless_devices: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wireless_gateways: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -195,7 +195,7 @@ def _internal_init(__self__, __props__.__dict__["wireless_devices"] = wireless_devices __props__.__dict__["wireless_gateways"] = wireless_gateways __props__.__dict__["arn"] = None - replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["name", "tags[*]"]) + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["name"]) opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(NetworkAnalyzerConfiguration, __self__).__init__( 'aws-native:iotwireless:NetworkAnalyzerConfiguration', @@ -254,7 +254,7 @@ def name(self) -> pulumi.Output[str]: @property @pulumi.getter - def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.CreateOnlyTag']]]: + def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: """ An array of key-value pairs to apply to this resource. """ diff --git a/sdk/python/pulumi_aws_native/iotwireless/outputs.py b/sdk/python/pulumi_aws_native/iotwireless/outputs.py index 7f6d37bee8..4209024328 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/outputs.py +++ b/sdk/python/pulumi_aws_native/iotwireless/outputs.py @@ -28,6 +28,8 @@ 'TraceContentProperties', 'WirelessDeviceAbpV10x', 'WirelessDeviceAbpV11', + 'WirelessDeviceApplication', + 'WirelessDeviceFPorts', 'WirelessDeviceLoRaWanDevice', 'WirelessDeviceOtaaV10x', 'WirelessDeviceOtaaV11', @@ -1207,6 +1209,91 @@ def session_keys(self) -> 'outputs.WirelessDeviceSessionKeysAbpV11': return pulumi.get(self, "session_keys") +@pulumi.output_type +class WirelessDeviceApplication(dict): + """ + LoRaWAN application configuration, which can be used to perform geolocation. + """ + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "destinationName": + suggest = "destination_name" + elif key == "fPort": + suggest = "f_port" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in WirelessDeviceApplication. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + WirelessDeviceApplication.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + WirelessDeviceApplication.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + destination_name: Optional[str] = None, + f_port: Optional[int] = None, + type: Optional['WirelessDeviceApplicationType'] = None): + """ + LoRaWAN application configuration, which can be used to perform geolocation. + :param str destination_name: The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + :param int f_port: The Fport value. + :param 'WirelessDeviceApplicationType' type: Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + """ + if destination_name is not None: + pulumi.set(__self__, "destination_name", destination_name) + if f_port is not None: + pulumi.set(__self__, "f_port", f_port) + if type is not None: + pulumi.set(__self__, "type", type) + + @property + @pulumi.getter(name="destinationName") + def destination_name(self) -> Optional[str]: + """ + The name of the position data destination that describes the AWS IoT rule that processes the device's position data for use by AWS IoT Core for LoRaWAN. + """ + return pulumi.get(self, "destination_name") + + @property + @pulumi.getter(name="fPort") + def f_port(self) -> Optional[int]: + """ + The Fport value. + """ + return pulumi.get(self, "f_port") + + @property + @pulumi.getter + def type(self) -> Optional['WirelessDeviceApplicationType']: + """ + Application type, which can be specified to obtain real-time position information of your LoRaWAN device. + """ + return pulumi.get(self, "type") + + +@pulumi.output_type +class WirelessDeviceFPorts(dict): + def __init__(__self__, *, + applications: Optional[Sequence['outputs.WirelessDeviceApplication']] = None): + """ + :param Sequence['WirelessDeviceApplication'] applications: A list of optional LoRaWAN application information, which can be used for geolocation. + """ + if applications is not None: + pulumi.set(__self__, "applications", applications) + + @property + @pulumi.getter + def applications(self) -> Optional[Sequence['outputs.WirelessDeviceApplication']]: + """ + A list of optional LoRaWAN application information, which can be used for geolocation. + """ + return pulumi.get(self, "applications") + + @pulumi.output_type class WirelessDeviceLoRaWanDevice(dict): @staticmethod @@ -1220,6 +1307,8 @@ def __key_warning(key: str): suggest = "dev_eui" elif key == "deviceProfileId": suggest = "device_profile_id" + elif key == "fPorts": + suggest = "f_ports" elif key == "otaaV10x": suggest = "otaa_v10x" elif key == "otaaV11": @@ -1243,6 +1332,7 @@ def __init__(__self__, *, abp_v11: Optional['outputs.WirelessDeviceAbpV11'] = None, dev_eui: Optional[str] = None, device_profile_id: Optional[str] = None, + f_ports: Optional['outputs.WirelessDeviceFPorts'] = None, otaa_v10x: Optional['outputs.WirelessDeviceOtaaV10x'] = None, otaa_v11: Optional['outputs.WirelessDeviceOtaaV11'] = None, service_profile_id: Optional[str] = None): @@ -1251,6 +1341,7 @@ def __init__(__self__, *, :param 'WirelessDeviceAbpV11' abp_v11: ABP device object for create APIs for v1.1. :param str dev_eui: The DevEUI value. :param str device_profile_id: The ID of the device profile for the new wireless device. + :param 'WirelessDeviceFPorts' f_ports: List of FPort assigned for different LoRaWAN application packages to use. :param 'WirelessDeviceOtaaV10x' otaa_v10x: OTAA device object for create APIs for v1.0.x :param 'WirelessDeviceOtaaV11' otaa_v11: OTAA device object for v1.1 for create APIs. :param str service_profile_id: The ID of the service profile. @@ -1263,6 +1354,8 @@ def __init__(__self__, *, pulumi.set(__self__, "dev_eui", dev_eui) if device_profile_id is not None: pulumi.set(__self__, "device_profile_id", device_profile_id) + if f_ports is not None: + pulumi.set(__self__, "f_ports", f_ports) if otaa_v10x is not None: pulumi.set(__self__, "otaa_v10x", otaa_v10x) if otaa_v11 is not None: @@ -1302,6 +1395,14 @@ def device_profile_id(self) -> Optional[str]: """ return pulumi.get(self, "device_profile_id") + @property + @pulumi.getter(name="fPorts") + def f_ports(self) -> Optional['outputs.WirelessDeviceFPorts']: + """ + List of FPort assigned for different LoRaWAN application packages to use. + """ + return pulumi.get(self, "f_ports") + @property @pulumi.getter(name="otaaV10x") def otaa_v10x(self) -> Optional['outputs.WirelessDeviceOtaaV10x']: diff --git a/sdk/python/pulumi_aws_native/iotwireless/service_profile.py b/sdk/python/pulumi_aws_native/iotwireless/service_profile.py index 67ed696538..b9d223e965 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/service_profile.py +++ b/sdk/python/pulumi_aws_native/iotwireless/service_profile.py @@ -135,6 +135,8 @@ def _internal_init(__self__, __props__.__dict__["tags"] = tags __props__.__dict__["arn"] = None __props__.__dict__["aws_id"] = None + replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["loRaWan", "name"]) + opts = pulumi.ResourceOptions.merge(opts, replace_on_changes) super(ServiceProfile, __self__).__init__( 'aws-native:iotwireless:ServiceProfile', resource_name, diff --git a/sdk/python/pulumi_aws_native/iotwireless/wireless_device.py b/sdk/python/pulumi_aws_native/iotwireless/wireless_device.py index 5ffe114fc8..3653f2a0f7 100644 --- a/sdk/python/pulumi_aws_native/iotwireless/wireless_device.py +++ b/sdk/python/pulumi_aws_native/iotwireless/wireless_device.py @@ -30,6 +30,7 @@ def __init__(__self__, *, last_uplink_received_at: Optional[pulumi.Input[str]] = None, lo_ra_wan: Optional[pulumi.Input['WirelessDeviceLoRaWanDeviceArgs']] = None, name: Optional[pulumi.Input[str]] = None, + positioning: Optional[pulumi.Input['WirelessDevicePositioning']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]] = None, thing_arn: Optional[pulumi.Input[str]] = None): """ @@ -40,6 +41,7 @@ def __init__(__self__, *, :param pulumi.Input[str] last_uplink_received_at: The date and time when the most recent uplink was received. :param pulumi.Input['WirelessDeviceLoRaWanDeviceArgs'] lo_ra_wan: The combination of Package, Station and Model which represents the version of the LoRaWAN Wireless Device. :param pulumi.Input[str] name: Wireless device name + :param pulumi.Input['WirelessDevicePositioning'] positioning: FPort values for the GNSS, stream, and ClockSync functions of the positioning information. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. :param pulumi.Input[str] thing_arn: Thing arn. Passed into update to associate Thing with Wireless device. """ @@ -53,6 +55,8 @@ def __init__(__self__, *, pulumi.set(__self__, "lo_ra_wan", lo_ra_wan) if name is not None: pulumi.set(__self__, "name", name) + if positioning is not None: + pulumi.set(__self__, "positioning", positioning) if tags is not None: pulumi.set(__self__, "tags", tags) if thing_arn is not None: @@ -130,6 +134,18 @@ def name(self) -> Optional[pulumi.Input[str]]: def name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "name", value) + @property + @pulumi.getter + def positioning(self) -> Optional[pulumi.Input['WirelessDevicePositioning']]: + """ + FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + """ + return pulumi.get(self, "positioning") + + @positioning.setter + def positioning(self, value: Optional[pulumi.Input['WirelessDevicePositioning']]): + pulumi.set(self, "positioning", value) + @property @pulumi.getter def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: @@ -165,6 +181,7 @@ def __init__(__self__, last_uplink_received_at: Optional[pulumi.Input[str]] = None, lo_ra_wan: Optional[pulumi.Input[Union['WirelessDeviceLoRaWanDeviceArgs', 'WirelessDeviceLoRaWanDeviceArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, + positioning: Optional[pulumi.Input['WirelessDevicePositioning']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, thing_arn: Optional[pulumi.Input[str]] = None, type: Optional[pulumi.Input['WirelessDeviceType']] = None, @@ -179,6 +196,7 @@ def __init__(__self__, :param pulumi.Input[str] last_uplink_received_at: The date and time when the most recent uplink was received. :param pulumi.Input[Union['WirelessDeviceLoRaWanDeviceArgs', 'WirelessDeviceLoRaWanDeviceArgsDict']] lo_ra_wan: The combination of Package, Station and Model which represents the version of the LoRaWAN Wireless Device. :param pulumi.Input[str] name: Wireless device name + :param pulumi.Input['WirelessDevicePositioning'] positioning: FPort values for the GNSS, stream, and ClockSync functions of the positioning information. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: A list of key-value pairs that contain metadata for the device. Currently not supported, will not create if tags are passed. :param pulumi.Input[str] thing_arn: Thing arn. Passed into update to associate Thing with Wireless device. :param pulumi.Input['WirelessDeviceType'] type: Wireless device type, currently only Sidewalk and LoRa @@ -212,6 +230,7 @@ def _internal_init(__self__, last_uplink_received_at: Optional[pulumi.Input[str]] = None, lo_ra_wan: Optional[pulumi.Input[Union['WirelessDeviceLoRaWanDeviceArgs', 'WirelessDeviceLoRaWanDeviceArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, + positioning: Optional[pulumi.Input['WirelessDevicePositioning']] = None, tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]]] = None, thing_arn: Optional[pulumi.Input[str]] = None, type: Optional[pulumi.Input['WirelessDeviceType']] = None, @@ -231,6 +250,7 @@ def _internal_init(__self__, __props__.__dict__["last_uplink_received_at"] = last_uplink_received_at __props__.__dict__["lo_ra_wan"] = lo_ra_wan __props__.__dict__["name"] = name + __props__.__dict__["positioning"] = positioning __props__.__dict__["tags"] = tags __props__.__dict__["thing_arn"] = thing_arn if type is None and not opts.urn: @@ -268,6 +288,7 @@ def get(resource_name: str, __props__.__dict__["last_uplink_received_at"] = None __props__.__dict__["lo_ra_wan"] = None __props__.__dict__["name"] = None + __props__.__dict__["positioning"] = None __props__.__dict__["tags"] = None __props__.__dict__["thing_arn"] = None __props__.__dict__["thing_name"] = None @@ -330,6 +351,14 @@ def name(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "name") + @property + @pulumi.getter + def positioning(self) -> pulumi.Output[Optional['WirelessDevicePositioning']]: + """ + FPort values for the GNSS, stream, and ClockSync functions of the positioning information. + """ + return pulumi.get(self, "positioning") + @property @pulumi.getter def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: diff --git a/sdk/python/pulumi_aws_native/lambda_/_inputs.py b/sdk/python/pulumi_aws_native/lambda_/_inputs.py index 07c03c0aaa..9268322886 100644 --- a/sdk/python/pulumi_aws_native/lambda_/_inputs.py +++ b/sdk/python/pulumi_aws_native/lambda_/_inputs.py @@ -1082,6 +1082,7 @@ class FunctionEnvironmentArgsDict(TypedDict): variables: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] """ Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + If the value of the environment variable is a time or a duration, enclose the value in quotes. """ elif False: FunctionEnvironmentArgsDict: TypeAlias = Mapping[str, Any] @@ -1093,6 +1094,7 @@ def __init__(__self__, *, """ A function's environment variable settings. You can use environment variables to adjust your function's behavior without updating code. An environment variable is a pair of strings that are stored in a function's version-specific configuration. :param pulumi.Input[Mapping[str, pulumi.Input[str]]] variables: Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + If the value of the environment variable is a time or a duration, enclose the value in quotes. """ if variables is not None: pulumi.set(__self__, "variables", variables) @@ -1102,6 +1104,7 @@ def __init__(__self__, *, def variables(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + If the value of the environment variable is a time or a duration, enclose the value in quotes. """ return pulumi.get(self, "variables") diff --git a/sdk/python/pulumi_aws_native/lambda_/function.py b/sdk/python/pulumi_aws_native/lambda_/function.py index 64522f4853..9eba7073c4 100644 --- a/sdk/python/pulumi_aws_native/lambda_/function.py +++ b/sdk/python/pulumi_aws_native/lambda_/function.py @@ -52,7 +52,10 @@ def __init__(__self__, *, vpc_config: Optional[pulumi.Input['FunctionVpcConfigArgs']] = None): """ The set of arguments for constructing a Function resource. - :param pulumi.Input['FunctionCodeArgs'] code: The code for the function. + :param pulumi.Input['FunctionCodeArgs'] code: The code for the function. You can define your function code in multiple ways: + + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. :param pulumi.Input[str] role: The Amazon Resource Name (ARN) of the function's execution role. :param pulumi.Input[Sequence[pulumi.Input['FunctionArchitecturesItem']]] architectures: The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64). The default value is ``x86_64``. :param pulumi.Input[str] code_signing_config_arn: To enable code signing for this function, specify the ARN of a code-signing configuration. A code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. @@ -66,16 +69,14 @@ def __init__(__self__, *, If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name. :param pulumi.Input[str] handler: The name of the method within your code that Lambda calls to run your function. Handler is required if the deployment package is a .zip file archive. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see [Lambda programming model](https://docs.aws.amazon.com/lambda/latest/dg/foundation-progmodel.html). :param pulumi.Input['FunctionImageConfigArgs'] image_config: Configuration values that override the container image Dockerfile settings. For more information, see [Container image settings](https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-parms). - :param pulumi.Input[str] kms_key_arn: The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + :param pulumi.Input[str] kms_key_arn: The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. :param pulumi.Input[Sequence[pulumi.Input[str]]] layers: A list of [function layers](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html) to add to the function's execution environment. Specify each layer by its ARN, including the version. :param pulumi.Input['FunctionLoggingConfigArgs'] logging_config: The function's Amazon CloudWatch Logs configuration settings. :param pulumi.Input[int] memory_size: The amount of [memory available to the function](https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-memory-console) at runtime. Increasing the function memory also increases its CPU allocation. The default value is 128 MB. The value can be any multiple of 1 MB. Note that new AWS accounts have reduced concurrency and memory quotas. AWS raises these quotas automatically based on your usage. You can also request a quota increase. :param pulumi.Input['FunctionPackageType'] package_type: The type of deployment package. Set to ``Image`` for container image and set ``Zip`` for .zip file archive. :param pulumi.Input['FunctionRecursiveLoop'] recursive_loop: The status of your function's recursive loop detection configuration. - - When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - - When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. :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](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html). Runtime is required if the deployment package is a .zip file archive. Specifying a runtime results in an error if you're deploying a function using a container image. The following list includes deprecated runtimes. Lambda blocks creating new functions and updating existing functions shortly after each runtime is deprecated. For more information, see [Runtime use after deprecation](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html#runtime-deprecation-levels). @@ -83,6 +84,7 @@ def __init__(__self__, *, :param pulumi.Input['FunctionRuntimeManagementConfigArgs'] runtime_management_config: Sets the runtime management configuration for a function's version. For more information, see [Runtime updates](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html). :param pulumi.Input['FunctionSnapStartArgs'] snap_start: The function's [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) setting. :param pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]] tags: A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. :param pulumi.Input[int] timeout: The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For more information, see [Lambda execution environment](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html). :param pulumi.Input['FunctionTracingConfigArgs'] tracing_config: Set ``Mode`` to ``Active`` to sample and trace a subset of incoming requests with [X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/services-xray.html). :param pulumi.Input['FunctionVpcConfigArgs'] vpc_config: For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC. When you connect a function to a VPC, it can access resources and the internet only through that VPC. For more information, see [Configuring a Lambda function to access resources in a VPC](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html). @@ -142,7 +144,10 @@ def __init__(__self__, *, @pulumi.getter def code(self) -> pulumi.Input['FunctionCodeArgs']: """ - The code for the function. + The code for the function. You can define your function code in multiple ways: + + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. """ return pulumi.get(self, "code") @@ -288,7 +293,7 @@ def image_config(self, value: Optional[pulumi.Input['FunctionImageConfigArgs']]) @pulumi.getter(name="kmsKeyArn") def kms_key_arn(self) -> Optional[pulumi.Input[str]]: """ - The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. """ return pulumi.get(self, "kms_key_arn") @@ -349,10 +354,8 @@ def package_type(self, value: Optional[pulumi.Input['FunctionPackageType']]): def recursive_loop(self) -> Optional[pulumi.Input['FunctionRecursiveLoop']]: """ The status of your function's recursive loop detection configuration. - - When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - - When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. """ return pulumi.get(self, "recursive_loop") @@ -415,6 +418,7 @@ def snap_start(self, value: Optional[pulumi.Input['FunctionSnapStartArgs']]): def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_root_inputs.TagArgs']]]]: """ A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. """ return pulumi.get(self, "tags") @@ -493,9 +497,10 @@ def __init__(__self__, __props__=None): """ The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* @@ -705,7 +710,10 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Sequence[pulumi.Input['FunctionArchitecturesItem']]] architectures: The instruction set architecture that the function supports. Enter a string array with one of the valid values (arm64 or x86_64). The default value is ``x86_64``. - :param pulumi.Input[Union['FunctionCodeArgs', 'FunctionCodeArgsDict']] code: The code for the function. + :param pulumi.Input[Union['FunctionCodeArgs', 'FunctionCodeArgsDict']] code: The code for the function. You can define your function code in multiple ways: + + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. :param pulumi.Input[str] code_signing_config_arn: To enable code signing for this function, specify the ARN of a code-signing configuration. A code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. :param pulumi.Input[Union['FunctionDeadLetterConfigArgs', 'FunctionDeadLetterConfigArgsDict']] dead_letter_config: A dead-letter queue configuration that specifies the queue or topic where Lambda sends asynchronous events when they fail processing. For more information, see [Dead-letter queues](https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html#invocation-dlq). :param pulumi.Input[str] description: A description of the function. @@ -717,16 +725,14 @@ def __init__(__self__, If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name. :param pulumi.Input[str] handler: The name of the method within your code that Lambda calls to run your function. Handler is required if the deployment package is a .zip file archive. The format includes the file name. It can also include namespaces and other qualifiers, depending on the runtime. For more information, see [Lambda programming model](https://docs.aws.amazon.com/lambda/latest/dg/foundation-progmodel.html). :param pulumi.Input[Union['FunctionImageConfigArgs', 'FunctionImageConfigArgsDict']] image_config: Configuration values that override the container image Dockerfile settings. For more information, see [Container image settings](https://docs.aws.amazon.com/lambda/latest/dg/images-create.html#images-parms). - :param pulumi.Input[str] kms_key_arn: The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + :param pulumi.Input[str] kms_key_arn: The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. :param pulumi.Input[Sequence[pulumi.Input[str]]] layers: A list of [function layers](https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html) to add to the function's execution environment. Specify each layer by its ARN, including the version. :param pulumi.Input[Union['FunctionLoggingConfigArgs', 'FunctionLoggingConfigArgsDict']] logging_config: The function's Amazon CloudWatch Logs configuration settings. :param pulumi.Input[int] memory_size: The amount of [memory available to the function](https://docs.aws.amazon.com/lambda/latest/dg/configuration-function-common.html#configuration-memory-console) at runtime. Increasing the function memory also increases its CPU allocation. The default value is 128 MB. The value can be any multiple of 1 MB. Note that new AWS accounts have reduced concurrency and memory quotas. AWS raises these quotas automatically based on your usage. You can also request a quota increase. :param pulumi.Input['FunctionPackageType'] package_type: The type of deployment package. Set to ``Image`` for container image and set ``Zip`` for .zip file archive. :param pulumi.Input['FunctionRecursiveLoop'] recursive_loop: The status of your function's recursive loop detection configuration. - - When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - - When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. :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](https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.html). Runtime is required if the deployment package is a .zip file archive. Specifying a runtime results in an error if you're deploying a function using a container image. @@ -735,6 +741,7 @@ def __init__(__self__, :param pulumi.Input[Union['FunctionRuntimeManagementConfigArgs', 'FunctionRuntimeManagementConfigArgsDict']] runtime_management_config: Sets the runtime management configuration for a function's version. For more information, see [Runtime updates](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html). :param pulumi.Input[Union['FunctionSnapStartArgs', 'FunctionSnapStartArgsDict']] snap_start: The function's [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart.html) setting. :param pulumi.Input[Sequence[pulumi.Input[Union['_root_inputs.TagArgs', '_root_inputs.TagArgsDict']]]] tags: A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. :param pulumi.Input[int] timeout: The amount of time (in seconds) that Lambda allows a function to run before stopping it. The default is 3 seconds. The maximum allowed value is 900 seconds. For more information, see [Lambda execution environment](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-context.html). :param pulumi.Input[Union['FunctionTracingConfigArgs', 'FunctionTracingConfigArgsDict']] tracing_config: Set ``Mode`` to ``Active`` to sample and trace a subset of incoming requests with [X-Ray](https://docs.aws.amazon.com/lambda/latest/dg/services-xray.html). :param pulumi.Input[Union['FunctionVpcConfigArgs', 'FunctionVpcConfigArgsDict']] vpc_config: For network connectivity to AWS resources in a VPC, specify a list of security groups and subnets in the VPC. When you connect a function to a VPC, it can access resources and the internet only through that VPC. For more information, see [Configuring a Lambda function to access resources in a VPC](https://docs.aws.amazon.com/lambda/latest/dg/configuration-vpc.html). @@ -747,9 +754,10 @@ def __init__(__self__, opts: Optional[pulumi.ResourceOptions] = None): """ The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* @@ -1112,7 +1120,10 @@ def arn(self) -> pulumi.Output[str]: @pulumi.getter def code(self) -> pulumi.Output['outputs.FunctionCode']: """ - The code for the function. + The code for the function. You can define your function code in multiple ways: + + For .zip deployment packages, you can specify the S3 location of the .zip file in the ``S3Bucket``, ``S3Key``, and ``S3ObjectVersion`` properties. + + For .zip deployment packages, you can alternatively define the function code inline in the ``ZipFile`` property. This method works only for Node.js and Python functions. + + For container images, specify the URI of your container image in the ECR registry in the ``ImageUri`` property. """ return pulumi.get(self, "code") @@ -1194,7 +1205,7 @@ def image_config(self) -> pulumi.Output[Optional['outputs.FunctionImageConfig']] @pulumi.getter(name="kmsKeyArn") def kms_key_arn(self) -> pulumi.Output[Optional[str]]: """ - The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. """ return pulumi.get(self, "kms_key_arn") @@ -1235,10 +1246,8 @@ def package_type(self) -> pulumi.Output[Optional['FunctionPackageType']]: def recursive_loop(self) -> pulumi.Output[Optional['FunctionRecursiveLoop']]: """ The status of your function's recursive loop detection configuration. - - When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - - When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. """ return pulumi.get(self, "recursive_loop") @@ -1294,6 +1303,7 @@ def snap_start_response(self) -> pulumi.Output['outputs.FunctionSnapStartRespons def tags(self) -> pulumi.Output[Optional[Sequence['_root_outputs.Tag']]]: """ A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. """ return pulumi.get(self, "tags") diff --git a/sdk/python/pulumi_aws_native/lambda_/get_function.py b/sdk/python/pulumi_aws_native/lambda_/get_function.py index 1001d9a893..7b1b162ac8 100644 --- a/sdk/python/pulumi_aws_native/lambda_/get_function.py +++ b/sdk/python/pulumi_aws_native/lambda_/get_function.py @@ -188,7 +188,7 @@ def image_config(self) -> Optional['outputs.FunctionImageConfig']: @pulumi.getter(name="kmsKeyArn") def kms_key_arn(self) -> Optional[str]: """ - The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [Lambda SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, Lambda also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, Lambda also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the Amazon Elastic Container Registry (Amazon ECR). If you don't provide a customer managed key, Lambda uses a default service key. + The ARN of the KMSlong (KMS) customer managed key that's used to encrypt your function's [environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-encryption). When [SnapStart](https://docs.aws.amazon.com/lambda/latest/dg/snapstart-security.html) is activated, LAM also uses this key is to encrypt your function's snapshot. If you deploy your function using a container image, LAM also uses this key to encrypt your function when it's deployed. Note that this is not the same key that's used to protect your container image in the ECRlong (ECR). If you don't provide a customer managed key, LAM uses a default service key. """ return pulumi.get(self, "kms_key_arn") @@ -229,10 +229,8 @@ def package_type(self) -> Optional['FunctionPackageType']: def recursive_loop(self) -> Optional['FunctionRecursiveLoop']: """ The status of your function's recursive loop detection configuration. - - When this value is set to `Allow` and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. - - When this value is set to `Terminate` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. + When this value is set to ``Allow``and Lambda detects your function being invoked as part of a recursive loop, it doesn't take any action. + When this value is set to ``Terminate`` and Lambda detects your function being invoked as part of a recursive loop, it stops your function being invoked and notifies you. """ return pulumi.get(self, "recursive_loop") @@ -280,6 +278,7 @@ def snap_start_response(self) -> Optional['outputs.FunctionSnapStartResponse']: def tags(self) -> Optional[Sequence['_root_outputs.Tag']]: """ A list of [tags](https://docs.aws.amazon.com/lambda/latest/dg/tagging.html) to apply to the function. + You must have the ``lambda:TagResource``, ``lambda:UntagResource``, and ``lambda:ListTags`` permissions for your [principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_terms-and-concepts.html) to manage the CFN stack. If you don't have these permissions, there might be unexpected behavior with stack-level tags propagating to the resource during resource creation and update. """ return pulumi.get(self, "tags") @@ -345,9 +344,10 @@ def get_function(function_name: Optional[str] = None, opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetFunctionResult: """ The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* @@ -390,9 +390,10 @@ def get_function_output(function_name: Optional[pulumi.Input[str]] = None, opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetFunctionResult]: """ The ``AWS::Lambda::Function`` resource creates a Lambda function. To create a function, you need a [deployment package](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html) and an [execution role](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html). The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. - You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For a container image, the code property must include the URI of a container image in the Amazon ECR registry. You do not need to specify the handler and runtime properties. - You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For a .zip file archive, the code property specifies the location of the .zip file. You must also specify the handler and runtime properties. For a Python example, see [Deploy Python Lambda functions with .zip file archives](https://docs.aws.amazon.com/lambda/latest/dg/python-package.html). + You set the package type to ``Image`` if the deployment package is a [container image](https://docs.aws.amazon.com/lambda/latest/dg/lambda-images.html). For these functions, include the URI of the container image in the ECR registry in the [ImageUri property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-imageuri). You do not need to specify the handler and runtime properties. + You set the package type to ``Zip`` if the deployment package is a [.zip file archive](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-package.html#gettingstarted-package-zip). For these functions, specify the S3 location of your .zip file in the ``Code`` property. Alternatively, for Node.js and Python functions, you can define your function inline in the [ZipFile property of the Code property](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lambda-function-code.html#cfn-lambda-function-code-zipfile). In both cases, you must also specify the handler and runtime properties. You can use [code signing](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with ``UpdateFunctionCode``, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. + When you update a ``AWS::Lambda::Function`` resource, CFNshort calls the [UpdateFunctionConfiguration](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionConfiguration.html) and [UpdateFunctionCode](https://docs.aws.amazon.com/lambda/latest/api/API_UpdateFunctionCode.html) LAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the ``$LATEST`` version. Note that you configure [provisioned concurrency](https://docs.aws.amazon.com/lambda/latest/dg/provisioned-concurrency.html) on a ``AWS::Lambda::Version`` or a ``AWS::Lambda::Alias``. For a complete introduction to Lambda functions, see [What is Lambda?](https://docs.aws.amazon.com/lambda/latest/dg/lambda-welcome.html) in the *Lambda developer guide.* diff --git a/sdk/python/pulumi_aws_native/lambda_/outputs.py b/sdk/python/pulumi_aws_native/lambda_/outputs.py index 1576b15937..fd552da61e 100644 --- a/sdk/python/pulumi_aws_native/lambda_/outputs.py +++ b/sdk/python/pulumi_aws_native/lambda_/outputs.py @@ -942,6 +942,7 @@ def __init__(__self__, *, """ A function's environment variable settings. You can use environment variables to adjust your function's behavior without updating code. An environment variable is a pair of strings that are stored in a function's version-specific configuration. :param Mapping[str, str] variables: Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + If the value of the environment variable is a time or a duration, enclose the value in quotes. """ if variables is not None: pulumi.set(__self__, "variables", variables) @@ -951,6 +952,7 @@ def __init__(__self__, *, def variables(self) -> Optional[Mapping[str, str]]: """ Environment variable key-value pairs. For more information, see [Using Lambda environment variables](https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html). + If the value of the environment variable is a time or a duration, enclose the value in quotes. """ return pulumi.get(self, "variables") diff --git a/sdk/python/pulumi_aws_native/location/_inputs.py b/sdk/python/pulumi_aws_native/location/_inputs.py index a23c4c45fa..4ca3348894 100644 --- a/sdk/python/pulumi_aws_native/location/_inputs.py +++ b/sdk/python/pulumi_aws_native/location/_inputs.py @@ -210,7 +210,7 @@ class MapConfigurationArgsDict(TypedDict): """ Specifies the map style selected from an available data provider. - Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -219,7 +219,7 @@ class MapConfigurationArgsDict(TypedDict): - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. - Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. @@ -231,14 +231,14 @@ class MapConfigurationArgsDict(TypedDict): > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. - Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. - > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . - Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. @@ -267,7 +267,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] style: Specifies the map style selected from an available data provider. - Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -276,7 +276,7 @@ def __init__(__self__, *, - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. - Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. @@ -288,14 +288,14 @@ def __init__(__self__, *, > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. - Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. - > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . - Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. @@ -318,7 +318,7 @@ def style(self) -> pulumi.Input[str]: """ Specifies the map style selected from an available data provider. - Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -327,7 +327,7 @@ def style(self) -> pulumi.Input[str]: - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. - Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. @@ -339,14 +339,14 @@ def style(self) -> pulumi.Input[str]: > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. - Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. - > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . - Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. diff --git a/sdk/python/pulumi_aws_native/location/outputs.py b/sdk/python/pulumi_aws_native/location/outputs.py index d7b4a5b596..21201eebbd 100644 --- a/sdk/python/pulumi_aws_native/location/outputs.py +++ b/sdk/python/pulumi_aws_native/location/outputs.py @@ -183,7 +183,7 @@ def __init__(__self__, *, """ :param str style: Specifies the map style selected from an available data provider. - Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -192,7 +192,7 @@ def __init__(__self__, *, - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. - Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. @@ -204,14 +204,14 @@ def __init__(__self__, *, > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. - Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. - > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . - Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. @@ -234,7 +234,7 @@ def style(self) -> str: """ Specifies the map style selected from an available data provider. - Valid [Esri map styles](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) : + Valid [Esri map styles](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) : - `VectorEsriDarkGrayCanvas` – The Esri Dark Gray Canvas map style. A vector basemap with a dark gray, neutral background with minimal colors, labels, and features that's designed to draw attention to your thematic content. - `RasterEsriImagery` – The Esri Imagery map style. A raster basemap that provides one meter or better satellite and aerial imagery in many parts of the world and lower resolution satellite imagery worldwide. @@ -243,7 +243,7 @@ def style(self) -> str: - `VectorEsriStreets` – The Esri Street Map style, which provides a detailed vector basemap for the world symbolized with a classic Esri street map style. The vector tile layer is similar in content and style to the World Street Map raster map. - `VectorEsriNavigation` – The Esri Navigation map style, which provides a detailed basemap for the world symbolized with a custom navigation map style that's designed for use during the day in mobile devices. - Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) : + Valid [HERE Technologies map styles](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) : - `VectorHereContrast` – The HERE Contrast (Berlin) map style is a high contrast detailed base map of the world that blends 3D and 2D rendering. @@ -255,14 +255,14 @@ def style(self) -> str: > Hybrid styles use both vector and raster tiles when rendering the map that you see. This means that more tiles are retrieved than when using either vector or raster tiles alone. Your charges will include all tiles retrieved. - Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) : + Valid [GrabMaps map styles](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) : - `VectorGrabStandardLight` – The Grab Standard Light map style provides a basemap with detailed land use coloring, area names, roads, landmarks, and points of interest covering Southeast Asia. - `VectorGrabStandardDark` – The Grab Standard Dark map style provides a dark variation of the standard basemap covering Southeast Asia. - > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . + > Grab provides maps only for countries in Southeast Asia, and is only available in the Asia Pacific (Singapore) Region ( `ap-southeast-1` ). For more information, see [GrabMaps countries and area covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . - Valid [Open Data map styles](https://docs.aws.amazon.com/location/latest/developerguide/open-data.html) : + Valid [Open Data map styles](https://docs.aws.amazon.com/location/previous/developerguide/open-data.html) : - `VectorOpenDataStandardLight` – The Open Data Standard Light map style provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. - `VectorOpenDataStandardDark` – Open Data Standard Dark is a dark-themed map style that provides a detailed basemap for the world suitable for website and mobile application use. The map includes highways major roads, minor roads, railways, water features, cities, parks, landmarks, building footprints, and administrative boundaries. diff --git a/sdk/python/pulumi_aws_native/location/place_index.py b/sdk/python/pulumi_aws_native/location/place_index.py index c7ed158823..ca30f1573d 100644 --- a/sdk/python/pulumi_aws_native/location/place_index.py +++ b/sdk/python/pulumi_aws_native/location/place_index.py @@ -38,13 +38,13 @@ def __init__(__self__, *, Valid values include: - - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. - For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . :param pulumi.Input['PlaceIndexDataSourceConfigurationArgs'] data_source_configuration: Specifies the data storage option requesting Places. :param pulumi.Input[str] description: The optional description for the place index resource. :param pulumi.Input[str] index_name: The name of the place index resource. @@ -81,13 +81,13 @@ def data_source(self) -> pulumi.Input[str]: Valid values include: - - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. - For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . """ return pulumi.get(self, "data_source") @@ -187,13 +187,13 @@ def __init__(__self__, Valid values include: - - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. - For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . :param pulumi.Input[Union['PlaceIndexDataSourceConfigurationArgs', 'PlaceIndexDataSourceConfigurationArgsDict']] data_source_configuration: Specifies the data storage option requesting Places. :param pulumi.Input[str] description: The optional description for the place index resource. :param pulumi.Input[str] index_name: The name of the place index resource. @@ -323,13 +323,13 @@ def data_source(self) -> pulumi.Output[str]: Valid values include: - - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . - - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . + - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on geocoding coverage](https://docs.aws.amazon.com/https://developers.arcgis.com/rest/geocode/api-reference/geocode-coverage.htm) . + - `Grab` – Grab provides place index functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE details on goecoding coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/geocoder/dev_guide/topics/coverage-geocoder.html) . > If you specify HERE Technologies ( `Here` ) as the data provider, you may not [store results](https://docs.aws.amazon.com//location-places/latest/APIReference/API_DataSourceConfiguration.html) for locations in Japan. For more information, see the [AWS Service Terms](https://docs.aws.amazon.com/service-terms/) for Amazon Location Service. - For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . """ return pulumi.get(self, "data_source") diff --git a/sdk/python/pulumi_aws_native/location/route_calculator.py b/sdk/python/pulumi_aws_native/location/route_calculator.py index 0fc763ba29..73dfcdd4dd 100644 --- a/sdk/python/pulumi_aws_native/location/route_calculator.py +++ b/sdk/python/pulumi_aws_native/location/route_calculator.py @@ -35,13 +35,13 @@ def __init__(__self__, *, Valid values include: - - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . - For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . :param pulumi.Input[str] calculator_name: The name of the route calculator resource. Requirements: @@ -75,13 +75,13 @@ def data_source(self) -> pulumi.Input[str]: Valid values include: - - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . - For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . """ return pulumi.get(self, "data_source") @@ -175,13 +175,13 @@ def __init__(__self__, Valid values include: - - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . - For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . :param pulumi.Input[str] description: The optional description for the route calculator resource. :param pulumi.Input['RouteCalculatorPricingPlan'] pricing_plan: No longer used. If included, the only allowed value is `RequestBasedUsage` . @@ -324,13 +324,13 @@ def data_source(self) -> pulumi.Output[str]: Valid values include: - - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/latest/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . + - `Esri` – For additional information about [Esri](https://docs.aws.amazon.com/location/previous/developerguide/esri.html) 's coverage in your region of interest, see [Esri details on street networks and traffic coverage](https://docs.aws.amazon.com/https://doc.arcgis.com/en/arcgis-online/reference/network-coverage.htm) . Route calculators that use Esri as a data source only calculate routes that are shorter than 400 km. - - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/latest/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/latest/developerguide/grab.html#grab-coverage-area) . - - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/latest/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . + - `Grab` – Grab provides routing functionality for Southeast Asia. For additional information about [GrabMaps](https://docs.aws.amazon.com/location/previous/developerguide/grab.html) ' coverage, see [GrabMaps countries and areas covered](https://docs.aws.amazon.com/location/previous/developerguide/grab.html#grab-coverage-area) . + - `Here` – For additional information about [HERE Technologies](https://docs.aws.amazon.com/location/previous/developerguide/HERE.html) ' coverage in your region of interest, see [HERE car routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/car-routing.html) and [HERE truck routing coverage](https://docs.aws.amazon.com/https://developer.here.com/documentation/routing-api/dev_guide/topics/coverage/truck-routing.html) . - For additional information , see [Data providers](https://docs.aws.amazon.com/location/latest/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . + For additional information , see [Data providers](https://docs.aws.amazon.com/location/previous/developerguide/what-is-data-provider.html) on the *Amazon Location Service Developer Guide* . """ return pulumi.get(self, "data_source") diff --git a/sdk/python/pulumi_aws_native/quicksight/_inputs.py b/sdk/python/pulumi_aws_native/quicksight/_inputs.py index ec055e0ebd..1ebc631600 100644 --- a/sdk/python/pulumi_aws_native/quicksight/_inputs.py +++ b/sdk/python/pulumi_aws_native/quicksight/_inputs.py @@ -85764,9 +85764,18 @@ def port(self, value: pulumi.Input[float]): if not MYPY: class DataSourceOAuthParametersArgsDict(TypedDict): token_provider_url: pulumi.Input[str] + """ + The token endpoint URL of the identity provider. + """ identity_provider_resource_uri: NotRequired[pulumi.Input[str]] + """ + The resource uri of the identity provider. + """ identity_provider_vpc_connection_properties: NotRequired[pulumi.Input['DataSourceVpcConnectionPropertiesArgsDict']] o_auth_scope: NotRequired[pulumi.Input[str]] + """ + The OAuth scope. + """ elif False: DataSourceOAuthParametersArgsDict: TypeAlias = Mapping[str, Any] @@ -85777,6 +85786,11 @@ def __init__(__self__, *, identity_provider_resource_uri: Optional[pulumi.Input[str]] = None, identity_provider_vpc_connection_properties: Optional[pulumi.Input['DataSourceVpcConnectionPropertiesArgs']] = None, o_auth_scope: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] token_provider_url: The token endpoint URL of the identity provider. + :param pulumi.Input[str] identity_provider_resource_uri: The resource uri of the identity provider. + :param pulumi.Input[str] o_auth_scope: The OAuth scope. + """ pulumi.set(__self__, "token_provider_url", token_provider_url) if identity_provider_resource_uri is not None: pulumi.set(__self__, "identity_provider_resource_uri", identity_provider_resource_uri) @@ -85788,6 +85802,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="tokenProviderUrl") def token_provider_url(self) -> pulumi.Input[str]: + """ + The token endpoint URL of the identity provider. + """ return pulumi.get(self, "token_provider_url") @token_provider_url.setter @@ -85797,6 +85814,9 @@ def token_provider_url(self, value: pulumi.Input[str]): @property @pulumi.getter(name="identityProviderResourceUri") def identity_provider_resource_uri(self) -> Optional[pulumi.Input[str]]: + """ + The resource uri of the identity provider. + """ return pulumi.get(self, "identity_provider_resource_uri") @identity_provider_resource_uri.setter @@ -85815,6 +85835,9 @@ def identity_provider_vpc_connection_properties(self, value: Optional[pulumi.Inp @property @pulumi.getter(name="oAuthScope") def o_auth_scope(self) -> Optional[pulumi.Input[str]]: + """ + The OAuth scope. + """ return pulumi.get(self, "o_auth_scope") @o_auth_scope.setter @@ -86942,8 +86965,17 @@ class DataSourceSnowflakeParametersArgsDict(TypedDict):

Warehouse.

""" authentication_type: NotRequired[pulumi.Input['DataSourceAuthenticationType']] + """ + The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + """ database_access_control_role: NotRequired[pulumi.Input[str]] + """ + The database access control role. + """ o_auth_parameters: NotRequired[pulumi.Input['DataSourceOAuthParametersArgsDict']] + """ + An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. + """ elif False: DataSourceSnowflakeParametersArgsDict: TypeAlias = Mapping[str, Any] @@ -86961,6 +86993,9 @@ def __init__(__self__, *, :param pulumi.Input[str] database:

Database.

:param pulumi.Input[str] host:

Host.

:param pulumi.Input[str] warehouse:

Warehouse.

+ :param pulumi.Input['DataSourceAuthenticationType'] authentication_type: The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + :param pulumi.Input[str] database_access_control_role: The database access control role. + :param pulumi.Input['DataSourceOAuthParametersArgs'] o_auth_parameters: An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. """ pulumi.set(__self__, "database", database) pulumi.set(__self__, "host", host) @@ -87011,6 +87046,9 @@ def warehouse(self, value: pulumi.Input[str]): @property @pulumi.getter(name="authenticationType") def authentication_type(self) -> Optional[pulumi.Input['DataSourceAuthenticationType']]: + """ + The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + """ return pulumi.get(self, "authentication_type") @authentication_type.setter @@ -87020,6 +87058,9 @@ def authentication_type(self, value: Optional[pulumi.Input['DataSourceAuthentica @property @pulumi.getter(name="databaseAccessControlRole") def database_access_control_role(self) -> Optional[pulumi.Input[str]]: + """ + The database access control role. + """ return pulumi.get(self, "database_access_control_role") @database_access_control_role.setter @@ -87029,6 +87070,9 @@ def database_access_control_role(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="oAuthParameters") def o_auth_parameters(self) -> Optional[pulumi.Input['DataSourceOAuthParametersArgs']]: + """ + An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. + """ return pulumi.get(self, "o_auth_parameters") @o_auth_parameters.setter @@ -87219,8 +87263,17 @@ class DataSourceStarburstParametersArgsDict(TypedDict):

The port for the Starburst data source.

""" authentication_type: NotRequired[pulumi.Input['DataSourceAuthenticationType']] + """ + The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + """ database_access_control_role: NotRequired[pulumi.Input[str]] + """ + The database access control role. + """ o_auth_parameters: NotRequired[pulumi.Input['DataSourceOAuthParametersArgsDict']] + """ + An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. + """ product_type: NotRequired[pulumi.Input['DataSourceStarburstProductType']] """ The product type for the Starburst data source. @@ -87243,6 +87296,9 @@ def __init__(__self__, *, :param pulumi.Input[str] catalog:

The catalog name for the Starburst data source.

:param pulumi.Input[str] host:

The host name of the Starburst data source.

:param pulumi.Input[float] port:

The port for the Starburst data source.

+ :param pulumi.Input['DataSourceAuthenticationType'] authentication_type: The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + :param pulumi.Input[str] database_access_control_role: The database access control role. + :param pulumi.Input['DataSourceOAuthParametersArgs'] o_auth_parameters: An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. :param pulumi.Input['DataSourceStarburstProductType'] product_type: The product type for the Starburst data source. """ pulumi.set(__self__, "catalog", catalog) @@ -87296,6 +87352,9 @@ def port(self, value: pulumi.Input[float]): @property @pulumi.getter(name="authenticationType") def authentication_type(self) -> Optional[pulumi.Input['DataSourceAuthenticationType']]: + """ + The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + """ return pulumi.get(self, "authentication_type") @authentication_type.setter @@ -87305,6 +87364,9 @@ def authentication_type(self, value: Optional[pulumi.Input['DataSourceAuthentica @property @pulumi.getter(name="databaseAccessControlRole") def database_access_control_role(self) -> Optional[pulumi.Input[str]]: + """ + The database access control role. + """ return pulumi.get(self, "database_access_control_role") @database_access_control_role.setter @@ -87314,6 +87376,9 @@ def database_access_control_role(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter(name="oAuthParameters") def o_auth_parameters(self) -> Optional[pulumi.Input['DataSourceOAuthParametersArgs']]: + """ + An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. + """ return pulumi.get(self, "o_auth_parameters") @o_auth_parameters.setter diff --git a/sdk/python/pulumi_aws_native/quicksight/outputs.py b/sdk/python/pulumi_aws_native/quicksight/outputs.py index 9e4251ff50..56eac044b2 100644 --- a/sdk/python/pulumi_aws_native/quicksight/outputs.py +++ b/sdk/python/pulumi_aws_native/quicksight/outputs.py @@ -69490,6 +69490,11 @@ def __init__(__self__, *, identity_provider_resource_uri: Optional[str] = None, identity_provider_vpc_connection_properties: Optional['outputs.DataSourceVpcConnectionProperties'] = None, o_auth_scope: Optional[str] = None): + """ + :param str token_provider_url: The token endpoint URL of the identity provider. + :param str identity_provider_resource_uri: The resource uri of the identity provider. + :param str o_auth_scope: The OAuth scope. + """ pulumi.set(__self__, "token_provider_url", token_provider_url) if identity_provider_resource_uri is not None: pulumi.set(__self__, "identity_provider_resource_uri", identity_provider_resource_uri) @@ -69501,11 +69506,17 @@ def __init__(__self__, *, @property @pulumi.getter(name="tokenProviderUrl") def token_provider_url(self) -> str: + """ + The token endpoint URL of the identity provider. + """ return pulumi.get(self, "token_provider_url") @property @pulumi.getter(name="identityProviderResourceUri") def identity_provider_resource_uri(self) -> Optional[str]: + """ + The resource uri of the identity provider. + """ return pulumi.get(self, "identity_provider_resource_uri") @property @@ -69516,6 +69527,9 @@ def identity_provider_vpc_connection_properties(self) -> Optional['outputs.DataS @property @pulumi.getter(name="oAuthScope") def o_auth_scope(self) -> Optional[str]: + """ + The OAuth scope. + """ return pulumi.get(self, "o_auth_scope") @@ -70367,6 +70381,9 @@ def __init__(__self__, *, :param str database:

Database.

:param str host:

Host.

:param str warehouse:

Warehouse.

+ :param 'DataSourceAuthenticationType' authentication_type: The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + :param str database_access_control_role: The database access control role. + :param 'DataSourceOAuthParameters' o_auth_parameters: An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. """ pulumi.set(__self__, "database", database) pulumi.set(__self__, "host", host) @@ -70405,16 +70422,25 @@ def warehouse(self) -> str: @property @pulumi.getter(name="authenticationType") def authentication_type(self) -> Optional['DataSourceAuthenticationType']: + """ + The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + """ return pulumi.get(self, "authentication_type") @property @pulumi.getter(name="databaseAccessControlRole") def database_access_control_role(self) -> Optional[str]: + """ + The database access control role. + """ return pulumi.get(self, "database_access_control_role") @property @pulumi.getter(name="oAuthParameters") def o_auth_parameters(self) -> Optional['outputs.DataSourceOAuthParameters']: + """ + An object that contains information needed to create a data source connection between an Amazon QuickSight account and Snowflake. + """ return pulumi.get(self, "o_auth_parameters") @@ -70578,6 +70604,9 @@ def __init__(__self__, *, :param str catalog:

The catalog name for the Starburst data source.

:param str host:

The host name of the Starburst data source.

:param float port:

The port for the Starburst data source.

+ :param 'DataSourceAuthenticationType' authentication_type: The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + :param str database_access_control_role: The database access control role. + :param 'DataSourceOAuthParameters' o_auth_parameters: An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. :param 'DataSourceStarburstProductType' product_type: The product type for the Starburst data source. """ pulumi.set(__self__, "catalog", catalog) @@ -70619,16 +70648,25 @@ def port(self) -> float: @property @pulumi.getter(name="authenticationType") def authentication_type(self) -> Optional['DataSourceAuthenticationType']: + """ + The authentication type that you want to use for your connection. This parameter accepts OAuth and non-OAuth authentication types. + """ return pulumi.get(self, "authentication_type") @property @pulumi.getter(name="databaseAccessControlRole") def database_access_control_role(self) -> Optional[str]: + """ + The database access control role. + """ return pulumi.get(self, "database_access_control_role") @property @pulumi.getter(name="oAuthParameters") def o_auth_parameters(self) -> Optional['outputs.DataSourceOAuthParameters']: + """ + An object that contains information needed to create a data source connection between an Amazon QuickSight account and Starburst. + """ return pulumi.get(self, "o_auth_parameters") @property